master - cman" load openais services by default

Christine Caulfield chrissie@fedoraproject.org
Thu Aug 14 07:45:00 GMT 2008


Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=0c61f627118453f5fb21318b61d4ec931958e45a
Commit:        0c61f627118453f5fb21318b61d4ec931958e45a
Parent:        eaa75067fd0608af4cc39c430032902c5ca6a008
Author:        Christine Caulfield <ccaulfie@redhat.com>
AuthorDate:    Thu Aug 14 08:37:23 2008 +0100
Committer:     Christine Caulfield <ccaulfie@redhat.com>
CommitterDate: Thu Aug 14 08:37:23 2008 +0100

cman" load openais services by default

For compaibility with cluster2 we load a default set of openais
services with cman/corosync.

You can disable these by setting <cman disable_openais="0"/>
and adding your own services as needed.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
---
 cman/daemon/cman-preconfig.c |   42 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 42 insertions(+), 0 deletions(-)

diff --git a/cman/daemon/cman-preconfig.c b/cman/daemon/cman-preconfig.c
index 9ef9011..db2a52c 100644
--- a/cman/daemon/cman-preconfig.c
+++ b/cman/daemon/cman-preconfig.c
@@ -40,6 +40,7 @@ static unsigned int cluster_id;
 static char nodename[MAX_CLUSTER_MEMBER_NAME_LEN];
 static int nodeid;
 static int two_node;
+static unsigned int disable_openais;
 static unsigned int portnum;
 static int num_nodenames;
 static char *key_filename;
@@ -574,6 +575,9 @@ static int get_nodename(struct objdb_iface_ver0 *objdb)
 			mcast_name = default_mcast(nodename, cluster_id);
 		}
 
+		/* See if the user wants our default set of openais services (default=yes) */
+		objdb_get_int(objdb, object_handle, "disable_openais", &disable_openais, 0);
+
 		objdb->object_key_create(object_handle, "nodename", strlen("nodename"),
 					    nodename, strlen(nodename)+1);
 	}
@@ -801,6 +805,44 @@ static void add_cman_overrides(struct objdb_iface_ver0 *objdb)
 				 "corosync_cman", strlen("corosync_cman") + 1);
 	objdb->object_key_create(object_handle, "ver", strlen("ver"),
 				 "0", 2);
+
+	/* Load some other useful openais services too */
+	if (!disable_openais) {
+		objdb->object_create(OBJECT_PARENT_HANDLE, &object_handle,
+				     "service", strlen("service"));
+		objdb->object_key_create(object_handle, "name", strlen("name"),
+					 "openais_ckpt", strlen("openais_ckpt") + 1);
+		objdb->object_key_create(object_handle, "ver", strlen("ver"),
+					 "0", 2);
+
+		objdb->object_create(OBJECT_PARENT_HANDLE, &object_handle,
+				     "service", strlen("service"));
+		objdb->object_key_create(object_handle, "name", strlen("name"),
+					 "openais_evt", strlen("openais_evt") + 1);
+		objdb->object_key_create(object_handle, "ver", strlen("ver"),
+					 "0", 2);
+
+		objdb->object_create(OBJECT_PARENT_HANDLE, &object_handle,
+				     "service", strlen("service"));
+		objdb->object_key_create(object_handle, "name", strlen("name"),
+					 "openais_msg", strlen("openais_msg") + 1);
+		objdb->object_key_create(object_handle, "ver", strlen("ver"),
+					 "0", 2);
+
+		objdb->object_create(OBJECT_PARENT_HANDLE, &object_handle,
+				     "service", strlen("service"));
+		objdb->object_key_create(object_handle, "name", strlen("name"),
+					 "openais_clm", strlen("openais_clm") + 1);
+		objdb->object_key_create(object_handle, "ver", strlen("ver"),
+					 "0", 2);
+
+		objdb->object_create(OBJECT_PARENT_HANDLE, &object_handle,
+				     "service", strlen("service"));
+		objdb->object_key_create(object_handle, "name", strlen("name"),
+					 "openais_lck", strlen("openais_lck") + 1);
+		objdb->object_key_create(object_handle, "ver", strlen("ver"),
+					 "0", 2);
+	}
 }
 
 /* If ccs is not available then use some defaults */



More information about the Cluster-cvs mailing list