Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=1f3... Commit: 1f345b45a5eeaedfcf5c48ac328c32d32d30ac26 Parent: 53d23b0172773b2a17bb2a019d4bbc2118d9e307 Author: Fabio M. Di Nitto fdinitto@redhat.com AuthorDate: Mon Mar 28 16:12:05 2011 +0200 Committer: Fabio M. Di Nitto fdinitto@redhat.com CommitterDate: Fri Aug 5 10:59:16 2011 +0200
cman preconfig: fix segfault if we cannot determine cluster name
This takes a lot of effort to reproduce, but it can still happen.
Resolves: rhbz#728230
Signed-off-by: Fabio M. Di Nitto fdinitto@redhat.com --- cman/daemon/cman-preconfig.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/cman/daemon/cman-preconfig.c b/cman/daemon/cman-preconfig.c index cde130b..4eb6250 100644 --- a/cman/daemon/cman-preconfig.c +++ b/cman/daemon/cman-preconfig.c @@ -1291,6 +1291,11 @@ static int get_cman_globals(struct objdb_iface_ver0 *objdb)
objdb_get_string(objdb, cluster_parent_handle, "name", &cluster_name);
+ if (!cluster_name) { + sprintf(error_reason, "Unable to determine cluster name.\n"); + return -1; + } + /* Get the <cman> bits that override <totem> bits */ objdb->object_find_create(cluster_parent_handle, "cman", strlen("cman"), &find_handle); if (objdb->object_find_next(find_handle, &object_handle) == 0) {
cluster-commits@lists.fedorahosted.org