diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-05 21:04:41 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-05 21:04:41 +0000 |
commit | a51106ed6932423c25c7d464ef5c2d609bd62924 (patch) | |
tree | b40cd0bcb45e9d56ee030c434e79351cfe57e1b3 /heartbeat/findif.sh | |
parent | Adding upstream version 1:4.13.0. (diff) | |
download | resource-agents-upstream.tar.xz resource-agents-upstream.zip |
Adding upstream version 1:4.14.0.upstream/1%4.14.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'heartbeat/findif.sh')
-rw-r--r-- | heartbeat/findif.sh | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/heartbeat/findif.sh b/heartbeat/findif.sh index 5f1c19e..13484f8 100644 --- a/heartbeat/findif.sh +++ b/heartbeat/findif.sh @@ -29,10 +29,10 @@ prefixcheck() { fi return 0 } -getnetworkinfo() +getloopbackinfo() { local line netinfo - ip -o -f inet route list match $OCF_RESKEY_ip scope host | (while read line; + ip -o -f inet route list match $OCF_RESKEY_ip table local scope host | (while read line; do netinfo=`echo $line | awk '{print $2}'` case $netinfo in @@ -215,14 +215,14 @@ findif() fi if [ -n "$nic" ] ; then # NIC supports more than two. - set -- $(ip -o -f $family route list match $match $scope | grep "dev $nic " | awk 'BEGIN{best=0} /\// { mask=$1; sub(".*/", "", mask); if( int(mask)>=best ) { best=int(mask); best_ln=$0; } } END{print best_ln}') + set -- $(ip -o -f $family route list match $match $scope | grep "dev $nic " | sed -e 's,^\([0-9.]\+\) ,\1/32 ,;s,^\([0-9a-f:]\+\) ,\1/128 ,' | sort -t/ -k2,2nr) else - set -- $(ip -o -f $family route list match $match $scope | awk 'BEGIN{best=0} /\// { mask=$1; sub(".*/", "", mask); if( int(mask)>=best ) { best=int(mask); best_ln=$0; } } END{print best_ln}') + set -- $(ip -o -f $family route list match $match $scope | sed -e 's,^\([0-9.]\+\) ,\1/32 ,;s,^\([0-9a-f:]\+\) ,\1/128 ,' | sort -t/ -k2,2nr) fi if [ $# = 0 ] ; then case $OCF_RESKEY_ip in 127.*) - set -- `getnetworkinfo` + set -- `getloopbackinfo` shift;; esac fi |