resource-agents: master - resource-agents: Make ip.sh deal with ip address collision

Lon Hohberger lon at fedoraproject.org
Fri Nov 13 20:24:59 UTC 2009


Gitweb:        http://git.fedorahosted.org/git/resource-agents.git?p=resource-agents.git;a=commitdiff;h=7385d95fafb7a96459b959699083d5d313662707
Commit:        7385d95fafb7a96459b959699083d5d313662707
Parent:        41f585cf2da887a77f0a811ae6a3594976358d6d
Author:        Ferenc Antal <antalf at ulx.hu>
AuthorDate:    Fri Nov 13 15:09:51 2009 -0500
Committer:     Lon Hohberger <lhh at redhat.com>
CommitterDate: Fri Nov 13 15:24:12 2009 -0500

resource-agents: Make ip.sh deal with ip address collision

Resolves: rhbz#526647

Signed-off-by: Lon Hohberger <lhh at redhat.com>
---
 rgmanager/src/resources/ip.sh |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/rgmanager/src/resources/ip.sh b/rgmanager/src/resources/ip.sh
index 445e873..3aa7598 100644
--- a/rgmanager/src/resources/ip.sh
+++ b/rgmanager/src/resources/ip.sh
@@ -564,6 +564,13 @@ ipv6()
 			ocf_log info "Removing IPv6 address $addr from $dev"
                 fi
 		
+		if [ "$1" = "add" ]; then
+			ocf_log notice "Pinging addr ${addr%%/*} from dev $dev"
+			if ping_check inet6 ${addr%%/*} $dev; then
+				ocf_log err "IPv6 address collision ${addr%%/*}"
+				return 1
+			fi
+		fi
 		/sbin/ip -f inet6 addr $1 dev $dev $addr
 		[ $? -ne 0 ] && return 1
 		
@@ -636,6 +643,13 @@ ipv4()
 			ocf_log info "Removing IPv4 address $addr from $dev"
 		fi
 		
+		if [ "$1" = "add" ]; then
+			ocf_log notice "Pinging addr ${addr%%/*} from dev $dev"
+			if ping_check inet ${addr%%/*} $dev; then
+				ocf_log err "IPv4 address collision ${addr%%/*}"
+				return 1
+			fi
+		fi
 		/sbin/ip -f inet addr $1 dev $dev $addr
 		[ $? -ne 0 ] && return 1
 		


More information about the cluster-commits mailing list