This is the mail archive of the
cluster-cvs@sourceware.org
mailing list for the cluster.
master - cman" load openais services by default
- From: Christine Caulfield <chrissie at fedoraproject dot org>
- To: cluster-cvs-relay at redhat dot com
- Date: Thu, 14 Aug 2008 07:38:28 +0000 (UTC)
- Subject: master - cman" load openais services by default
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 */