public inbox for cluster-cvs@sourceware.org help / color / mirror / Atom feed
From: Christine Caulfield <chrissie@fedoraproject.org> To: cluster-cvs-relay@redhat.com Subject: cluster: RHEL5 - fence: Allow IP addresses as node names Date: Thu, 04 Jun 2009 16:00:00 -0000 [thread overview] Message-ID: <20090604155932.7849F120312@lists.fedorahosted.org> (raw) Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=f27717f5ec074b5567734d09ac04746c21fcff01 Commit: f27717f5ec074b5567734d09ac04746c21fcff01 Parent: 163ea84dee1ff52b7162aa1eac3c1bc552e97852 Author: Christine Caulfield <ccaulfie@redhat.com> AuthorDate: Thu Jun 4 16:55:39 2009 +0100 Committer: Christine Caulfield <ccaulfie@redhat.com> CommitterDate: Thu Jun 4 16:55:39 2009 +0100 fence: Allow IP addresses as node names When checking if a node is a member of the cluster, fenced does a full-string check of the name. If that doesn't match it then assumes that one of the names is a FQDN and one is truncated so it starts checking the bit before the first dot. If the node names are IP addresses then this will match all of the time for most clusters. eg: 192.168.2.1 will match 192.168.2.2 because it just matches the 192. This makes fenced think that the node has rejoined the cluster because it sees the name in the list of active nodes, and won't fence it. This patch abandons the match check afer the full-string one if the node name is found to be an IP address. bz#504158 Signed-off-by: Christine Caulfield <ccaulfie@redhat.com> --- fence/fenced/member_cman.c | 14 +++++++++++++- 1 files changed, 13 insertions(+), 1 deletions(-) diff --git a/fence/fenced/member_cman.c b/fence/fenced/member_cman.c index 3994283..9e22ece 100644 --- a/fence/fenced/member_cman.c +++ b/fence/fenced/member_cman.c @@ -1,7 +1,7 @@ /****************************************************************************** ******************************************************************************* ** -** Copyright (C) 2005 Red Hat, Inc. All rights reserved. +** Copyright (C) 2005-2009 Red Hat, Inc. All rights reserved. ** ** This copyrighted material is made available to anyone wishing to use, ** modify, copy, or redistribute it subject to the terms and conditions @@ -11,6 +11,7 @@ ******************************************************************************/ #include <libcman.h> +#include <arpa/inet.h> #include "fd.h" #define BUFLEN 128 @@ -30,6 +31,7 @@ int our_nodeid; static int name_equal(char *name1, char *name2) { char name3[BUFLEN], name4[BUFLEN]; + char addr1[INET6_ADDRSTRLEN]; int i, len1, len2; len1 = strlen(name1); @@ -38,6 +40,16 @@ static int name_equal(char *name1, char *name2) if (len1 == len2 && !strncmp(name1, name2, len1)) return TRUE; + /* + * If the names are IP addresses then don't compare + * what is in front of the dots. + */ + if (inet_pton(AF_INET, name1, addr1) == 0) + return FALSE; + + if (inet_pton(AF_INET6, name1, addr1) == 0) + return FALSE; + memset(name3, 0, BUFLEN); memset(name4, 0, BUFLEN);
reply other threads:[~2009-06-04 16:00 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20090604155932.7849F120312@lists.fedorahosted.org \ --to=chrissie@fedoraproject.org \ --cc=cluster-cvs-relay@redhat.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).