Send Linux-ha-cvs mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
http://lists.community.tummy.com/mailman/listinfo/linux-ha-cvs
or, via email, send a message with subject or body 'help' to
[EMAIL PROTECTED]
You can reach the person managing the list at
[EMAIL PROTECTED]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of Linux-ha-cvs digest..."
Today's Topics:
1. Linux-HA CVS: mgmt by zhenh from
([email protected])
2. Linux-HA CVS: include by zhenh from
([email protected])
----------------------------------------------------------------------
Message: 1
Date: Thu, 8 Dec 2005 02:21:56 -0700 (MST)
From: [email protected]
Subject: [Linux-ha-cvs] Linux-HA CVS: mgmt by zhenh from
To: [EMAIL PROTECTED]
Message-ID: <[EMAIL PROTECTED]>
linux-ha CVS committal
Author : zhenh
Host :
Project : linux-ha
Module : mgmt
Dir : linux-ha/mgmt/daemon
Modified Files:
mgmt_lib.c mgmtd.c
Log Message:
change name of mgmtd_log to mgmt_log, add system name and selecting components
to connect as argument of init_mgmt_lib
===================================================================
RCS file: /home/cvs/linux-ha/linux-ha/mgmt/daemon/mgmt_lib.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- mgmt_lib.c 6 Dec 2005 16:07:10 -0000 1.1
+++ mgmt_lib.c 8 Dec 2005 09:21:55 -0000 1.2
@@ -57,27 +57,41 @@
static GHashTable* msg_map = NULL;
static GHashTable* event_map = NULL;
-
+const char* client_name = NULL;
+static int components = 0;
int
-init_mgmtd_lib()
+init_mgmt_lib(const char* client, int enable_components)
{
/* create the internal data structures */
msg_map = g_hash_table_new_full(g_str_hash, g_str_equal, cl_free, NULL);
event_map = g_hash_table_new_full(g_str_hash, g_str_equal, cl_free,
NULL);
-
+ client_name = client?client:"unknown";
+ components = enable_components;
/* init modules */
- init_heartbeat();
- init_lrm();
- init_crm();
+ if (components & ENABLE_HB) {
+ init_heartbeat();
+ }
+ if (components & ENABLE_LRM) {
+ init_lrm();
+ }
+ if (components & ENABLE_CRM) {
+ init_crm();
+ }
return 0;
}
int
-final_mgmtd_lib()
+final_mgmt_lib()
{
- final_crm();
- final_lrm();
- final_heartbeat();
+ if (components & ENABLE_CRM) {
+ final_crm();
+ }
+ if (components & ENABLE_LRM) {
+ final_lrm();
+ }
+ if (components & ENABLE_HB) {
+ final_heartbeat();
+ }
g_hash_table_destroy(msg_map);
g_hash_table_destroy(event_map);
return 0;
===================================================================
RCS file: /home/cvs/linux-ha/linux-ha/mgmt/daemon/mgmtd.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- mgmtd.c 7 Dec 2005 05:28:51 -0000 1.7
+++ mgmtd.c 8 Dec 2005 09:21:55 -0000 1.8
@@ -132,7 +132,7 @@
}
if (optind > argc) {
- mgmtd_log(LOG_ERR,"WHY WE ARE HERE?");
+ mgmt_log(LOG_ERR,"WHY WE ARE HERE?");
++argerr;
}
@@ -195,7 +195,7 @@
if (pid_file == NULL) {
- mgmtd_log(LOG_ERR, "No pid file specified to kill process");
+ mgmt_log(LOG_ERR, "No pid file specified to kill process");
return LSB_EXIT_GENERIC;
}
pid = cl_read_pidfile(pid_file);
@@ -206,7 +206,7 @@
? LSB_EXIT_EPERM : LSB_EXIT_GENERIC);
fprintf(stderr, "Cannot kill pid %ld\n", pid);
}else{
- mgmtd_log(LOG_INFO,
+ mgmt_log(LOG_INFO,
"Signal sent to pid=%ld,"
" waiting for process to exit",
pid);
@@ -285,7 +285,7 @@
break;
default:
- mgmtd_log(LOG_WARNING, "debug_level_adjust: Received an
"
+ mgmt_log(LOG_WARNING, "debug_level_adjust: Received an "
"unexpected signal(%d). Something
wrong?.",nsig);
}
@@ -303,16 +303,16 @@
GIOChannel* sch;
/* register pid */
if ((pid = cl_lock_pidfile(PID_FILE)) < 0) {
- mgmtd_log(LOG_ERR, "already running: [pid %d]."
+ mgmt_log(LOG_ERR, "already running: [pid %d]."
, cl_read_pidfile(PID_FILE));
- mgmtd_log(LOG_ERR, "Startup aborted (already running)."
+ mgmt_log(LOG_ERR, "Startup aborted (already running)."
"Shutting down.");
exit(100);
}
register_pid(FALSE, sigterm_action);
/* enable coredumps */
- mgmtd_log(LOG_DEBUG, "Enabling coredumps");
+ mgmt_log(LOG_DEBUG, "Enabling coredumps");
cl_cdtocoredir();
cl_enable_coredumps(TRUE);
cl_set_all_coredump_signal_handlers();
@@ -331,7 +331,7 @@
mainloop = g_main_new(FALSE);
/* init library */
- init_mgmtd_lib();
+ init_mgmt_lib(mgmtd_name, ENABLE_HB|ENABLE_LRM|ENABLE_CRM);
/* init ham & gnutls lib */
tls_init_server();
@@ -340,7 +340,7 @@
/* create server socket */
ssock = socket(AF_INET, SOCK_STREAM, 0);
if (ssock == -1) {
- mgmtd_log(LOG_ERR, "Can not create server socket."
+ mgmt_log(LOG_ERR, "Can not create server socket."
"Shutting down.");
exit(100);
}
@@ -350,12 +350,12 @@
saddr.sin_addr.s_addr = INADDR_ANY;
saddr.sin_port = htons(PORT);
if (bind(ssock, (struct sockaddr*)&saddr, sizeof(saddr)) == -1) {
- mgmtd_log(LOG_ERR, "Can not bind server socket."
+ mgmt_log(LOG_ERR, "Can not bind server socket."
"Shutting down.");
exit(100);
}
if (listen(ssock, 10) == -1) {
- mgmtd_log(LOG_ERR, "Can not start listen."
+ mgmt_log(LOG_ERR, "Can not start listen."
"Shutting down.");
exit(100);
}
@@ -365,14 +365,14 @@
g_io_add_watch(sch, G_IO_IN|G_IO_ERR|G_IO_HUP, on_listen, NULL);
/* run the mainloop */
- mgmtd_log(LOG_DEBUG, "main: run the loop...");
- mgmtd_log(LOG_INFO, "Started.");
+ mgmt_log(LOG_DEBUG, "main: run the loop...");
+ mgmt_log(LOG_INFO, "Started.");
g_main_run(mainloop);
/* exit, clean the pid file */
- final_mgmtd_lib();
+ final_mgmt_lib();
if (cl_unlock_pidfile(PID_FILE) == 0) {
- mgmtd_log(LOG_DEBUG, "[%s] stopped", mgmtd_name);
+ mgmt_log(LOG_DEBUG, "[%s] stopped", mgmtd_name);
}
return 0;
@@ -395,13 +395,13 @@
laddr = sizeof(addr);
csock = accept(ssock, (struct sockaddr*)&addr, &laddr);
if (csock == -1) {
- mgmtd_log(LOG_ERR, "%s accept socket failed",
__FUNCTION__);
+ mgmt_log(LOG_ERR, "%s accept socket failed",
__FUNCTION__);
return TRUE;
}
/* create gnutls session for the server socket */
session = tls_attach_server(csock);
msg = mgmt_session_recvmsg(session);
- mgmtd_log(LOG_DEBUG, "recv msg: %s", msg);
+ mgmt_log(LOG_DEBUG, "recv msg: %s", msg);
args = mgmt_msg_args(msg, &num);
if (msg == NULL || num != 3 || STRNCMP_CONST(args[0],
MSG_LOGIN) != 0) {
mgmt_del_args(args);
@@ -409,7 +409,7 @@
mgmt_session_sendmsg(session, MSG_FAIL);
tls_detach(session);
close(csock);
- mgmtd_log(LOG_ERR, "%s receive login msg failed",
__FUNCTION__);
+ mgmt_log(LOG_ERR, "%s receive login msg failed",
__FUNCTION__);
return TRUE;
}
/* authorization check with pam */
@@ -419,12 +419,12 @@
mgmt_session_sendmsg(session, MSG_FAIL);
tls_detach(session);
close(csock);
- mgmtd_log(LOG_ERR, "%s pam auth failed", __FUNCTION__);
+ mgmt_log(LOG_ERR, "%s pam auth failed", __FUNCTION__);
return TRUE;
}
mgmt_del_args(args);
mgmt_del_msg(msg);
- mgmtd_log(LOG_DEBUG, "send msg: %s", MSG_OK);
+ mgmt_log(LOG_DEBUG, "send msg: %s", MSG_OK);
mgmt_session_sendmsg(session, MSG_OK);
new_client(csock, session);
return TRUE;
@@ -447,7 +447,7 @@
return TRUE;
}
msg = mgmt_session_recvmsg(client->session);
- mgmtd_log(LOG_DEBUG, "recv msg: %s", msg);
+ mgmt_log(LOG_DEBUG, "recv msg: %s", msg);
if (msg == NULL || STRNCMP_CONST(msg, MSG_LOGOUT) == 0) {
mgmt_del_msg(msg);
del_client(client->id);
@@ -455,12 +455,12 @@
}
ret = dispatch_msg(msg, client->id);
if (ret != NULL) {
- mgmtd_log(LOG_DEBUG, "send msg: %s", ret);
+ mgmt_log(LOG_DEBUG, "send msg: %s", ret);
mgmt_session_sendmsg(client->session, ret);
mgmt_del_msg(ret);
}
else {
- mgmtd_log(LOG_DEBUG, "send msg: %s", MSG_FAIL);
+ mgmt_log(LOG_DEBUG, "send msg: %s", MSG_FAIL);
mgmt_session_sendmsg(client->session, MSG_FAIL);
}
mgmt_del_msg(msg);
@@ -595,9 +595,9 @@
continue;
}
- mgmtd_log(LOG_DEBUG, "send evt: %s", event);
+ mgmt_log(LOG_DEBUG, "send evt: %s", event);
mgmt_session_sendmsg(client->session, event);
- mgmtd_log(LOG_DEBUG, "send evt: %s done", event);
+ mgmt_log(LOG_DEBUG, "send evt: %s done", event);
node = g_list_next(node);
}
@@ -633,7 +633,7 @@
void
shutdown_mgmtd(void)
{
- mgmtd_log(LOG_INFO,"mgmtd is shutting down");
+ mgmt_log(LOG_INFO,"mgmtd is shutting down");
if (mainloop != NULL && g_main_is_running(mainloop)) {
g_main_quit(mainloop);
}else {
------------------------------
Message: 2
Date: Thu, 8 Dec 2005 02:34:21 -0700 (MST)
From: [email protected]
Subject: [Linux-ha-cvs] Linux-HA CVS: include by zhenh from
To: [EMAIL PROTECTED]
Message-ID: <[EMAIL PROTECTED]>
linux-ha CVS committal
Author : zhenh
Host :
Project : linux-ha
Module : include
Dir : linux-ha/include/mgmt
Modified Files:
mgmt.h
Log Message:
add system name and selecting components to connect as argument of init_mgmt_lib
===================================================================
RCS file: /home/cvs/linux-ha/linux-ha/include/mgmt/mgmt.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- mgmt.h 6 Dec 2005 14:25:46 -0000 1.5
+++ mgmt.h 8 Dec 2005 09:34:21 -0000 1.6
@@ -25,8 +25,12 @@
#include <mgmt/mgmt_common.h>
-extern int init_mgmtd_lib(void);
-extern int final_mgmtd_lib(void);
+#define ENABLE_HB 1
+#define ENABLE_LRM 2
+#define ENABLE_CRM 4
+
+extern int init_mgmt_lib(const char* client_name, int enable_components);
+extern int final_mgmt_lib(void);
typedef int (*event_handler)(const char* event);
extern char* process_msg(const char* msg);
extern int reg_event(const char* type, event_handler func);
------------------------------
_______________________________________________
Linux-ha-cvs mailing list
[email protected]
http://lists.community.tummy.com/mailman/listinfo/linux-ha-cvs
End of Linux-ha-cvs Digest, Vol 25, Issue 16
********************************************