Whamcloud - gitweb
b=23234 use a regular expression to parse ip_addr from ret_str in lc_net
authorAndrew Perepechko <Andrew.Perepechko@sun.com>
Mon, 2 Aug 2010 19:43:38 +0000 (23:43 +0400)
committerJohann Lombardi <johann.lombardi@oracle.com>
Tue, 3 Aug 2010 20:38:50 +0000 (22:38 +0200)
lc_net does not parse unexpected output from pdsh well

a=Chris Horn (CRAY)
i=Elena Gryaznova
i=Andrew Perepechko

lustre/scripts/lc_net.in

index 16196d3..fef2637 100644 (file)
@@ -169,11 +169,8 @@ remote_check() {
        fi
 
        # Get the IP address of ${HOST_NAMES[i]} from its own ping
-       if is_pdsh; then
-               ip_addr=`echo "${ret_str}" | head -1 | awk '{print $4}'`
-       else
-               ip_addr=`echo "${ret_str}" | head -1 | awk '{print $3}'`
-       fi
+       ip_pattern="[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}"
+       ip_addr=`echo "${ret_str}" | egrep -o "${ip_pattern}"`
        ip_addr=`echo "${ip_addr}" | sed -e 's/^(//' -e 's/)$//'`
 
        # Compare IP addresses