[Initng-svn] r2670 - initng/plugins/ngcs

svn at initng.thinktux.net svn at initng.thinktux.net
Mon Jan 2 17:13:28 CET 2006


Author: makomk
Date: Mon Jan  2 17:13:28 2006
New Revision: 2670

Modified:
   initng/plugins/ngcs/initng_ngcs.c
   initng/plugins/ngcs/initng_ngcs.h
   initng/plugins/ngcs/initng_ngcs_cmds.c
   initng/plugins/ngcs/ngcs_common.c
   initng/plugins/ngcs/ngcs_common.h
Log:
Indentation; sorry


Modified: initng/plugins/ngcs/initng_ngcs.c
==============================================================================
--- initng/plugins/ngcs/initng_ngcs.c	(original)
+++ initng/plugins/ngcs/initng_ngcs.c	Mon Jan  2 17:13:28 2006
@@ -62,12 +62,13 @@
 
 static void accepted_client(f_module_h * from);
 static void closesock(void);
+
 /* static int sendping(void); */
 static int open_socket(void);
 static void check_socket(void);
 static void data_ready(f_module_h * from);
-static void closeconn(ngcs_conn* conn);
-static void closeconn_safe(ngcs_conn* conn);
+static void closeconn(ngcs_conn * conn);
+static void closeconn_safe(ngcs_conn * conn);
 void register_ngcs_cmds(void);
 void unregister_ngcs_cmds(void);
 void clean_dead_conns(void);
@@ -110,7 +111,7 @@
 {
     int newsock;
     struct timeval tv;
-    ngcs_conn* conn;
+    ngcs_conn *conn;
 
     /* In case of lots of short-lived connections */
     clean_dead_conns();
@@ -137,23 +138,27 @@
     if ((newsock = accept(fdh.fds, NULL, NULL)) > 0)
     {
         D_("read socket open, now setting options\n");
-	tv.tv_sec = 2; tv.tv_usec = 0;
-	if(setsockopt(newsock, SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv)))
-	  W_("Setting SO_RCVTIMEO failed!\n");
-	if(setsockopt(newsock, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv)))
-	  W_("Setting SO_SNDTIMEO failed!\n");
-	conn = (ngcs_conn*) malloc(sizeof(ngcs_conn));
-	if(conn == NULL) {
-	  F_("Couldn't allocate ngcs_conn!");
-	  close(newsock); return;
-	}
-	conn->fdw.fds = newsock;
-	conn->fdw.call_module = data_ready;
-	conn->nextid = 1;
-	conn->list.next = 0; conn->list.prev = 0;
-	list_add( &conn->list, &ngcs_conns.list);
-	INIT_LIST_HEAD(&conn->chans.list);
-	initng_plugin_hook_add(FDWATCHERS, 30, &conn->fdw);
+        tv.tv_sec = 2;
+        tv.tv_usec = 0;
+        if (setsockopt(newsock, SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv)))
+            W_("Setting SO_RCVTIMEO failed!\n");
+        if (setsockopt(newsock, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv)))
+            W_("Setting SO_SNDTIMEO failed!\n");
+        conn = (ngcs_conn *) malloc(sizeof(ngcs_conn));
+        if (conn == NULL)
+        {
+            F_("Couldn't allocate ngcs_conn!");
+            close(newsock);
+            return;
+        }
+        conn->fdw.fds = newsock;
+        conn->fdw.call_module = data_ready;
+        conn->nextid = 1;
+        conn->list.next = 0;
+        conn->list.prev = 0;
+        list_add(&conn->list, &ngcs_conns.list);
+        INIT_LIST_HEAD(&conn->chans.list);
+        initng_plugin_hook_add(FDWATCHERS, 30, &conn->fdw);
         return;
     }
 
@@ -170,132 +175,188 @@
     return;
 }
 
-void data_ready(f_module_h * from) {
-  int sock = from->fds; int chanid, cnt;
-  ngcs_cmd *cmd;
-    ngcs_conn* conn = (ngcs_conn*) from;
-    ngcs_data* data; 
+void data_ready(f_module_h * from)
+{
+    int sock = from->fds;
+    int chanid, cnt;
+    ngcs_cmd *cmd;
+    ngcs_conn *conn = (ngcs_conn *) from;
+    ngcs_data *data;
     ngcs_data sdata[3];
-    ngcs_channel* chan;
-    if(ngcs_readmsg(sock,&chanid,&data,&cnt)) {
-        closeconn(conn); return;
-    }
-    if(chanid == 0) {
-      if(cnt < 0) {
-	closeconn(conn); return;
-      } else if(cnt == 0) {
-	if(ngcs_writemsg(sock,0,NULL,0)) {
-	  closeconn(conn); return;
-	}
-      } else if(data[0].type != NGCS_TYPE_STRING) {
-	ngcs_freedata(data, cnt);
-	sdata[0].type = NGCS_TYPE_INT;
-	sdata[0].d.i = 0;
-	sdata[1].type = NGCS_TYPE_STRING;
-	sdata[1].size = -1; sdata[1].d.s = (char*)"Bad request";
-	if(ngcs_writemsg(sock,0,sdata,2))
-	  closeconn(conn);
-	return;
-      } else {
-	chan = malloc(sizeof(ngcs_channel));
-	if(!chan) {
-	  F_("Couldn't allocate ngcs_chan!\n");
-	  sdata[0].type = NGCS_TYPE_INT;
-	  sdata[0].d.i = 0;
-	  sdata[1].type = NGCS_TYPE_STRING;
-	  sdata[1].size = -1; sdata[1].d.s = (char*)"Internal error";
-	  if(ngcs_writemsg(sock,0,sdata,2))
-	    closeconn(conn);       
-	  ngcs_freedata(data, cnt); return;
-	}
-	chan->id = conn->nextid++;
-	while_ngcs_cmds(cmd) {
-	  if(strcmp(cmd->name, data[0].d.s) == 0) {
-	    sdata[0].type = NGCS_TYPE_INT;
-	    sdata[0].d.i = chan->id;
-	    if(ngcs_writemsg(sock,0,sdata,1)) {
-	      closeconn(conn); free(chan);
-	      ngcs_freedata(data, cnt); return;
-	    }	    
-	    chan->cmd = cmd; chan->conn = conn;
-	    chan->user_data = NULL;
-	    chan->list.next = 0; chan->list.prev = 0;
-	    list_add(&chan->list, &conn->chans.list);
-	    if(cmd->connect) cmd->connect(chan, data, cnt);
-	    ngcs_freedata(data, cnt); return;
-	  }
-	}
-	F_("Unknown ngcs command: %s", data[0].d.s);
-	sdata[0].type = NGCS_TYPE_INT;
-	sdata[0].d.i = 0;
-	if(ngcs_writemsg(sock,0,sdata,1))
-	  closeconn(conn);
-	free(chan); ngcs_freedata(data, cnt); return;
-      }
-    } else {
-      while_ngcs_chans(chan,conn)
-	if(chan->id == chanid) {
-	  if(chan->cmd->gotdata) chan->cmd->gotdata(chan, data, cnt);
-	  if(conn->fdw.fds < 0)
-	    closeconn(conn);
-	  ngcs_freedata(data, cnt); return;
-	}
-      W_("Got data on unknown channel %i", chanid);
-      if(ngcs_writemsg(conn->fdw.fds,chanid,NULL,-1))
-	closeconn(conn);           
-      ngcs_freedata(data, cnt);
-      return;
-    }
-}
-
-void closeconn(ngcs_conn* conn) {
-  ngcs_channel *chan, *nextchan;
-  if(conn->fdw.fds >= 0) {
-    initng_plugin_hook_del(FDWATCHERS, &(conn->fdw));
-    close(conn->fdw.fds);
-  }
-  list_for_each_entry_prev_safe(chan, nextchan, &conn->chans.list, list) {
-    if(chan->cmd->free) chan->cmd->free(chan);
-    list_del(&chan->list); free(chan);
-  }
-  list_del(&conn->list);
-  free(conn);
-}
-
-void closeconn_safe(ngcs_conn* conn) {
-  if(conn->fdw.fds >= 0) {
-    initng_plugin_hook_del(FDWATCHERS, &(conn->fdw));
-    close(conn->fdw.fds); conn->fdw.fds = -1;
-  }
-  list_move(&conn->list, &ngcs_dead_conns.list);
-}
-
-void clean_dead_conns(void) {
-    ngcs_conn *curr,*tmp;
-    while_ngcs_dead_conns_safe(curr,tmp) {
-       closeconn(curr);
-    }
-}
-
-void ngcs_close_channel(ngcs_channel* chan) {
-    if(chan->conn->fdw.fds >= 0)
-      if(ngcs_writemsg(chan->conn->fdw.fds,chan->id,NULL,-1))
-	closeconn_safe(chan->conn);    
-    if(chan->cmd->free) chan->cmd->free(chan);
-    list_del(&chan->list); free(chan);  
-}
-
-int ngcs_channel_send(ngcs_channel* chan, ngcs_data* data, int cnt) {
-  if(chan->conn->fdw.fds < 0) return 1;
-  if(ngcs_writemsg(chan->conn->fdw.fds, chan->id, data, cnt)) {
-    closeconn_safe(chan->conn); return 1;
-  }
-  return 0;
-}
-
-void ngcs_reg_cmd(ngcs_cmd* cmd) {
-  cmd->list.prev = 0; cmd->list.next = 0;
-  list_add(&cmd->list, &ngcs_cmds.list);
+    ngcs_channel *chan;
+
+    if (ngcs_readmsg(sock, &chanid, &data, &cnt))
+    {
+        closeconn(conn);
+        return;
+    }
+    if (chanid == 0)
+    {
+        if (cnt < 0)
+        {
+            closeconn(conn);
+            return;
+        }
+        else if (cnt == 0)
+        {
+            if (ngcs_writemsg(sock, 0, NULL, 0))
+            {
+                closeconn(conn);
+                return;
+            }
+        }
+        else if (data[0].type != NGCS_TYPE_STRING)
+        {
+            ngcs_freedata(data, cnt);
+            sdata[0].type = NGCS_TYPE_INT;
+            sdata[0].d.i = 0;
+            sdata[1].type = NGCS_TYPE_STRING;
+            sdata[1].size = -1;
+            sdata[1].d.s = (char *) "Bad request";
+            if (ngcs_writemsg(sock, 0, sdata, 2))
+                closeconn(conn);
+            return;
+        }
+        else
+        {
+            chan = malloc(sizeof(ngcs_channel));
+            if (!chan)
+            {
+                F_("Couldn't allocate ngcs_chan!\n");
+                sdata[0].type = NGCS_TYPE_INT;
+                sdata[0].d.i = 0;
+                sdata[1].type = NGCS_TYPE_STRING;
+                sdata[1].size = -1;
+                sdata[1].d.s = (char *) "Internal error";
+                if (ngcs_writemsg(sock, 0, sdata, 2))
+                    closeconn(conn);
+                ngcs_freedata(data, cnt);
+                return;
+            }
+            chan->id = conn->nextid++;
+            while_ngcs_cmds(cmd)
+            {
+                if (strcmp(cmd->name, data[0].d.s) == 0)
+                {
+                    sdata[0].type = NGCS_TYPE_INT;
+                    sdata[0].d.i = chan->id;
+                    if (ngcs_writemsg(sock, 0, sdata, 1))
+                    {
+                        closeconn(conn);
+                        free(chan);
+                        ngcs_freedata(data, cnt);
+                        return;
+                    }
+                    chan->cmd = cmd;
+                    chan->conn = conn;
+                    chan->user_data = NULL;
+                    chan->list.next = 0;
+                    chan->list.prev = 0;
+                    list_add(&chan->list, &conn->chans.list);
+                    if (cmd->connect)
+                        cmd->connect(chan, data, cnt);
+                    ngcs_freedata(data, cnt);
+                    return;
+                }
+            }
+            F_("Unknown ngcs command: %s", data[0].d.s);
+            sdata[0].type = NGCS_TYPE_INT;
+            sdata[0].d.i = 0;
+            if (ngcs_writemsg(sock, 0, sdata, 1))
+                closeconn(conn);
+            free(chan);
+            ngcs_freedata(data, cnt);
+            return;
+        }
+    }
+    else
+    {
+        while_ngcs_chans(chan, conn) if (chan->id == chanid)
+        {
+            if (chan->cmd->gotdata)
+                chan->cmd->gotdata(chan, data, cnt);
+            if (conn->fdw.fds < 0)
+                closeconn(conn);
+            ngcs_freedata(data, cnt);
+            return;
+        }
+        W_("Got data on unknown channel %i", chanid);
+        if (ngcs_writemsg(conn->fdw.fds, chanid, NULL, -1))
+            closeconn(conn);
+        ngcs_freedata(data, cnt);
+        return;
+    }
+}
+
+void closeconn(ngcs_conn * conn)
+{
+    ngcs_channel *chan, *nextchan;
+
+    if (conn->fdw.fds >= 0)
+    {
+        initng_plugin_hook_del(FDWATCHERS, &(conn->fdw));
+        close(conn->fdw.fds);
+    }
+    list_for_each_entry_prev_safe(chan, nextchan, &conn->chans.list, list)
+    {
+        if (chan->cmd->free)
+            chan->cmd->free(chan);
+        list_del(&chan->list);
+        free(chan);
+    }
+    list_del(&conn->list);
+    free(conn);
+}
+
+void closeconn_safe(ngcs_conn * conn)
+{
+    if (conn->fdw.fds >= 0)
+    {
+        initng_plugin_hook_del(FDWATCHERS, &(conn->fdw));
+        close(conn->fdw.fds);
+        conn->fdw.fds = -1;
+    }
+    list_move(&conn->list, &ngcs_dead_conns.list);
+}
+
+void clean_dead_conns(void)
+{
+    ngcs_conn *curr, *tmp;
+
+    while_ngcs_dead_conns_safe(curr, tmp)
+    {
+        closeconn(curr);
+    }
+}
+
+void ngcs_close_channel(ngcs_channel * chan)
+{
+    if (chan->conn->fdw.fds >= 0)
+        if (ngcs_writemsg(chan->conn->fdw.fds, chan->id, NULL, -1))
+            closeconn_safe(chan->conn);
+    if (chan->cmd->free)
+        chan->cmd->free(chan);
+    list_del(&chan->list);
+    free(chan);
+}
+
+int ngcs_channel_send(ngcs_channel * chan, ngcs_data * data, int cnt)
+{
+    if (chan->conn->fdw.fds < 0)
+        return 1;
+    if (ngcs_writemsg(chan->conn->fdw.fds, chan->id, data, cnt))
+    {
+        closeconn_safe(chan->conn);
+        return 1;
+    }
+    return 0;
+}
+
+void ngcs_reg_cmd(ngcs_cmd * cmd)
+{
+    cmd->list.prev = 0;
+    cmd->list.next = 0;
+    list_add(&cmd->list, &ngcs_cmds.list);
 }
 
 #if 0
@@ -332,7 +393,7 @@
     }
 
     D_("Sending PING..\n");
-    if (ngcs_sendmsg(NGCS_PING, 0, 123, NULL, 0));
+    if (ngcs_sendmsg(NGCS_PING, 0, 123, NULL, 0)) ;
     {
         F_("Unable to send PING!\n");
         close(client);
@@ -342,7 +403,7 @@
 
     /* Accept "server side" */
     accepted_client(&fdh);
-	/* FIXME: won't work anymore */
+    /* FIXME: won't work anymore */
 
     D_("Reading PONG..\n");
     if (ngcs_recvall(client, &head, sizeof(head)))
@@ -443,11 +504,11 @@
 
     /* Run check : */
     /*    if (!sendping())
-    {
-        F_("Sendping check failed, ngcs comunication not available (if you see this open a bug)\n");
-        closesock();
-        return (FALSE);
-	} */
+       {
+       F_("Sendping check failed, ngcs comunication not available (if you see this open a bug)\n");
+       closesock();
+       return (FALSE);
+       } */
 
     return (TRUE);
 }
@@ -501,7 +562,7 @@
 
 int module_init(const char *version)
 {
-  D_("module_init(ngcs);\n");
+    D_("module_init(ngcs);\n");
     if (strcmp(version, INITNG_VERSION) != 0)
     {
         F_("This module is compiled for \"%s\" version and initng is compiled on \"%s\" version, won't load this module!\n", INITNG_VERSION, version);
@@ -538,17 +599,20 @@
 
 void module_unload(void)
 {
-    ngcs_conn *curr,*tmp;
+    ngcs_conn *curr, *tmp;
+
     D_("module_unload(ngcs);\n");
 
     /* close open sockets */
     closesock();
-    while_ngcs_conns_safe(curr,tmp) {
-       closeconn(curr);
+    while_ngcs_conns_safe(curr, tmp)
+    {
+        closeconn(curr);
     }
 
-    while_ngcs_dead_conns_safe(curr,tmp) {
-       closeconn(curr);
+    while_ngcs_dead_conns_safe(curr, tmp)
+    {
+        closeconn(curr);
     }
 
     unregister_ngcs_cmds();

Modified: initng/plugins/ngcs/initng_ngcs.h
==============================================================================
--- initng/plugins/ngcs/initng_ngcs.h	(original)
+++ initng/plugins/ngcs/initng_ngcs.h	Mon Jan  2 17:13:28 2006
@@ -35,31 +35,34 @@
 int service_status(active_db_h * service);
 void is_system_halt(h_sys_state state);
 
-void ngcs_close_channel(ngcs_channel* chan);
-void ngcs_reg_cmd(ngcs_cmd* cmd);
-int ngcs_channel_send(ngcs_channel* chan, ngcs_data* data, int cnt);
-
-struct ngcs_cmd_s {
-  const char* name;
-  void(*connect)(ngcs_channel*, ngcs_data*, int);
-  void(*gotdata)(ngcs_channel*, ngcs_data*, int);
-  void(*free)(ngcs_channel*);
-  struct list_head list;
+void ngcs_close_channel(ngcs_channel * chan);
+void ngcs_reg_cmd(ngcs_cmd * cmd);
+int ngcs_channel_send(ngcs_channel * chan, ngcs_data * data, int cnt);
+
+struct ngcs_cmd_s
+{
+    const char *name;
+    void (*connect) (ngcs_channel *, ngcs_data *, int);
+    void (*gotdata) (ngcs_channel *, ngcs_data *, int);
+    void (*free) (ngcs_channel *);
+    struct list_head list;
 };
 
-struct ngcs_channel_s {
-  int id;
-  ngcs_cmd* cmd;
-  ngcs_conn* conn;
-  void* user_data;
-  struct list_head list;  
+struct ngcs_channel_s
+{
+    int id;
+    ngcs_cmd *cmd;
+    ngcs_conn *conn;
+    void *user_data;
+    struct list_head list;
 };
 
-struct ngcs_conn_s {
-  f_module_h fdw;
-  ngcs_channel chans;
-  int nextid;
-  struct list_head list;
+struct ngcs_conn_s
+{
+    f_module_h fdw;
+    ngcs_channel chans;
+    int nextid;
+    struct list_head list;
 };
 
 

Modified: initng/plugins/ngcs/initng_ngcs_cmds.c
==============================================================================
--- initng/plugins/ngcs/initng_ngcs_cmds.c	(original)
+++ initng/plugins/ngcs/initng_ngcs_cmds.c	Mon Jan  2 17:13:28 2006
@@ -37,134 +37,172 @@
 
 void register_ngcs_cmds(void);
 void unregister_ngcs_cmds(void);
-static void ngcs_cmd_halt(ngcs_channel* chan, ngcs_data* data, int cnt);
-static void ngcs_cmd_reboot(ngcs_channel* chan, ngcs_data* data, int cnt);
+static void ngcs_cmd_halt(ngcs_channel * chan, ngcs_data * data, int cnt);
+static void ngcs_cmd_reboot(ngcs_channel * chan, ngcs_data * data, int cnt);
 static int service_status_watch(active_db_h * service);
-static void ngcs_cmd_watch(ngcs_channel* chan, ngcs_data* data, int cnt);
-static void ngcs_free_watch(ngcs_channel* chan);
+static void ngcs_cmd_watch(ngcs_channel * chan, ngcs_data * data, int cnt);
+static void ngcs_free_watch(ngcs_channel * chan);
 static int service_output_watch(active_db_h * service, process_h * x);
 
 ngcs_cmd ngcs_halt_cmd = {
-  "halt",
-  ngcs_cmd_halt,
-  NULL,
-  NULL,
-  { 0, 0 }
+    "halt",
+    ngcs_cmd_halt,
+    NULL,
+    NULL,
+    {0, 0}
 };
 
 ngcs_cmd ngcs_reboot_cmd = {
-  "halt",
-  ngcs_cmd_reboot,
-  NULL,
-  NULL,
-  { 0, 0 }
+    "halt",
+    ngcs_cmd_reboot,
+    NULL,
+    NULL,
+    {0, 0}
 };
 
 ngcs_cmd ngcs_watch_cmd = {
-  "watch",
-  ngcs_cmd_watch,
-  NULL,
-  ngcs_free_watch,
-  { 0, 0 }
+    "watch",
+    ngcs_cmd_watch,
+    NULL,
+    ngcs_free_watch,
+    {0, 0}
 };
 
-typedef struct ngcs_watch_s {
-  ngcs_channel* chan;
-  char* name;
-  struct list_head list;
+typedef struct ngcs_watch_s
+{
+    ngcs_channel *chan;
+    char *name;
+    struct list_head list;
 } ngcs_watch;
 
 ngcs_watch watches;
 
 int service_status_watch(active_db_h * service)
 {
-  ngcs_watch *watch, *nextwatch; int n,ret; ngcs_data* dat = NULL;
-  n = ngcs_marshal_active_db_h(service, NULL, 0);
-  list_for_each_entry_prev_safe(watch, nextwatch, &watches.list, list) {
-    if(watch->name == NULL || strcmp(watch->name, service->name) == 0) {
-       if(!dat) {
-	 dat = malloc(n*sizeof(ngcs_data));
-	 ret = ngcs_marshal_active_db_h(service, dat, n);
-	 if(ret < 0) {
-	   F_("ngcs_marshal_active_db_h() failed!\n");
-	   free(dat); return TRUE;
-	 }
-       }
-       ngcs_channel_send(watch->chan, dat, ret);
+    ngcs_watch *watch, *nextwatch;
+    int n, ret;
+    ngcs_data *dat = NULL;
+
+    n = ngcs_marshal_active_db_h(service, NULL, 0);
+    list_for_each_entry_prev_safe(watch, nextwatch, &watches.list, list)
+    {
+        if (watch->name == NULL || strcmp(watch->name, service->name) == 0)
+        {
+            if (!dat)
+            {
+                dat = malloc(n * sizeof(ngcs_data));
+                ret = ngcs_marshal_active_db_h(service, dat, n);
+                if (ret < 0)
+                {
+                    F_("ngcs_marshal_active_db_h() failed!\n");
+                    free(dat);
+                    return TRUE;
+                }
+            }
+            ngcs_channel_send(watch->chan, dat, ret);
+        }
     }
-  }
-  if(dat) free(dat);
-  return TRUE;
+    if (dat)
+        free(dat);
+    return TRUE;
 }
 
 static int service_output_watch(active_db_h * service, process_h * x)
 {
-  ngcs_watch *watch, *nextwatch;  ngcs_data dat[2];
-  dat[0].type = NGCS_TYPE_STRING; dat[0].size = -1;
-  dat[0].d.s = service->name;
-  dat[1].type = NGCS_TYPE_STRING; dat[1].size = -1;
-  dat[1].d.s = x->buffer+x->buffer_pos;
-  list_for_each_entry_prev_safe(watch, nextwatch, &watches.list, list) {
-    if(watch->name == NULL || strcmp(watch->name, service->name) == 0) {
-      ngcs_channel_send(watch->chan, dat, 2);
+    ngcs_watch *watch, *nextwatch;
+    ngcs_data dat[2];
+
+    dat[0].type = NGCS_TYPE_STRING;
+    dat[0].size = -1;
+    dat[0].d.s = service->name;
+    dat[1].type = NGCS_TYPE_STRING;
+    dat[1].size = -1;
+    dat[1].d.s = x->buffer + x->buffer_pos;
+    list_for_each_entry_prev_safe(watch, nextwatch, &watches.list, list)
+    {
+        if (watch->name == NULL || strcmp(watch->name, service->name) == 0)
+        {
+            ngcs_channel_send(watch->chan, dat, 2);
+        }
     }
-  }
-  return FALSE; /* FIXME - right thing to do? */
+    return FALSE;                           /* FIXME - right thing to do? */
 }
 
-void ngcs_cmd_watch(ngcs_channel* chan, ngcs_data* data, int cnt) {
-  ngcs_watch* watch = malloc(sizeof(ngcs_watch));
-  if(!watch) {
-    F_("Malloc failed!\n");
-    ngcs_close_channel(chan); return;
-  }
-  watch->chan = chan;
-  if(cnt < 2 || data[1].type != NGCS_TYPE_STRING) {
-    watch->name = NULL;
-  } else {
-    watch->name = i_strdup(data[1].d.s);
-    if(!watch->name) {
-      free(watch); F_("Malloc failed!\n");
-      ngcs_close_channel(chan); return;
+void ngcs_cmd_watch(ngcs_channel * chan, ngcs_data * data, int cnt)
+{
+    ngcs_watch *watch = malloc(sizeof(ngcs_watch));
+
+    if (!watch)
+    {
+        F_("Malloc failed!\n");
+        ngcs_close_channel(chan);
+        return;
+    }
+    watch->chan = chan;
+    if (cnt < 2 || data[1].type != NGCS_TYPE_STRING)
+    {
+        watch->name = NULL;
+    }
+    else
+    {
+        watch->name = i_strdup(data[1].d.s);
+        if (!watch->name)
+        {
+            free(watch);
+            F_("Malloc failed!\n");
+            ngcs_close_channel(chan);
+            return;
+        }
     }
-  }
-  watch->list.prev = 0; watch->list.next = 0;
-  list_add(&watch->list, &watches.list);
-  chan->user_data = watch;
+    watch->list.prev = 0;
+    watch->list.next = 0;
+    list_add(&watch->list, &watches.list);
+    chan->user_data = watch;
 }
 
-void ngcs_free_watch(ngcs_channel* chan) {
-  ngcs_watch* watch = chan->user_data;
-  if(!watch) return;
-  list_del(&watch->list);
-  if(watch->name) free(watch->name);
-  free(watch); chan->user_data = 0;
+void ngcs_free_watch(ngcs_channel * chan)
+{
+    ngcs_watch *watch = chan->user_data;
+
+    if (!watch)
+        return;
+    list_del(&watch->list);
+    if (watch->name)
+        free(watch->name);
+    free(watch);
+    chan->user_data = 0;
 }
 
-void register_ngcs_cmds(void) {
-  ngcs_reg_cmd(&ngcs_halt_cmd);
-  ngcs_reg_cmd(&ngcs_reboot_cmd);
-  ngcs_reg_cmd(&ngcs_watch_cmd);
-  initng_plugin_hook_add(ASTATUS_CHANGE, 50, &service_status_watch);
-  initng_plugin_hook_add(PIPEWATCHERS, 50, &service_output_watch);
-  INIT_LIST_HEAD(&watches.list);
+void register_ngcs_cmds(void)
+{
+    ngcs_reg_cmd(&ngcs_halt_cmd);
+    ngcs_reg_cmd(&ngcs_reboot_cmd);
+    ngcs_reg_cmd(&ngcs_watch_cmd);
+    initng_plugin_hook_add(ASTATUS_CHANGE, 50, &service_status_watch);
+    initng_plugin_hook_add(PIPEWATCHERS, 50, &service_output_watch);
+    INIT_LIST_HEAD(&watches.list);
 }
 
-void unregister_ngcs_cmds(void) {
-  initng_plugin_hook_del(ASTATUS_CHANGE, &service_status_watch);
-  initng_plugin_hook_del(PIPEWATCHERS, &service_output_watch);
-  /* TODO */
+void unregister_ngcs_cmds(void)
+{
+    initng_plugin_hook_del(ASTATUS_CHANGE, &service_status_watch);
+    initng_plugin_hook_del(PIPEWATCHERS, &service_output_watch);
+    /* TODO */
 }
 
-void ngcs_cmd_halt(ngcs_channel* chan, ngcs_data* data, int cnt) {
-  (void) data; (void) cnt;
+void ngcs_cmd_halt(ngcs_channel * chan, ngcs_data * data, int cnt)
+{
+    (void) data;
+    (void) cnt;
     g.when_out = THEN_HALT;
     initng_handler_stop_all();
     ngcs_close_channel(chan);
 }
 
-void ngcs_cmd_reboot(ngcs_channel* chan, ngcs_data* data, int cnt) {
-  (void) data; (void) cnt;
+void ngcs_cmd_reboot(ngcs_channel * chan, ngcs_data * data, int cnt)
+{
+    (void) data;
+    (void) cnt;
     g.when_out = THEN_REBOOT;
     initng_handler_stop_all();
     ngcs_close_channel(chan);

Modified: initng/plugins/ngcs/ngcs_common.c
==============================================================================
--- initng/plugins/ngcs/ngcs_common.c	(original)
+++ initng/plugins/ngcs/ngcs_common.c	Mon Jan  2 17:13:28 2006
@@ -4,115 +4,170 @@
 #include <sys/un.h>
 #include <assert.h>
 
-int ngcs_writemsg(int sock, int chan, ngcs_data* data, int cnt) {
-    int head[2]; int n;
-    head[0] = chan; head[1] = cnt;
-    if(ngcs_sendall(sock,head,2*sizeof(int))) return 1;
-    for(n = 0; n < cnt; n++) {
-      head[0] = data[n].type;
-      switch(data[n].type) {
-      case NGCS_TYPE_GROUP:
-      case NGCS_TYPE_INT:
-	head[1] = sizeof(int);
-	if(ngcs_sendall(sock,head,2*sizeof(int))) return 1;
-	if(ngcs_sendall(sock,&data[n].d.i,sizeof(int))) return 1;
-	break;
-      case NGCS_TYPE_LONG:
-	head[1] = sizeof(long);
-	if(ngcs_sendall(sock,head,2*sizeof(int))) return 1;
-	if(ngcs_sendall(sock,&data[n].d.l,sizeof(long))) return 1;
-	break;
-      case NGCS_TYPE_STRING:
-	if(data[n].size<0) data[n].size = strlen(data[n].d.s);
-	head[1] = data[n].size;
-	if(ngcs_sendall(sock,head,2*sizeof(int))) return 1;
-	if(ngcs_sendall(sock,data[n].d.s,data[n].size)) return 1;
-	break;
-      default:
-	if(data[n].size<0) return 1;
-	head[1] = data[n].size;
-	if(ngcs_sendall(sock,head,2*sizeof(int))) return 1;
-	if(ngcs_sendall(sock,data[n].d.p,data[n].size)) return 1;
-	break;	
-      }
+int ngcs_writemsg(int sock, int chan, ngcs_data * data, int cnt)
+{
+    int head[2];
+    int n;
+
+    head[0] = chan;
+    head[1] = cnt;
+    if (ngcs_sendall(sock, head, 2 * sizeof(int)))
+        return 1;
+    for (n = 0; n < cnt; n++)
+    {
+        head[0] = data[n].type;
+        switch (data[n].type)
+        {
+            case NGCS_TYPE_GROUP:
+            case NGCS_TYPE_INT:
+                head[1] = sizeof(int);
+                if (ngcs_sendall(sock, head, 2 * sizeof(int)))
+                    return 1;
+                if (ngcs_sendall(sock, &data[n].d.i, sizeof(int)))
+                    return 1;
+                break;
+            case NGCS_TYPE_LONG:
+                head[1] = sizeof(long);
+                if (ngcs_sendall(sock, head, 2 * sizeof(int)))
+                    return 1;
+                if (ngcs_sendall(sock, &data[n].d.l, sizeof(long)))
+                    return 1;
+                break;
+            case NGCS_TYPE_STRING:
+                if (data[n].size < 0)
+                    data[n].size = strlen(data[n].d.s);
+                head[1] = data[n].size;
+                if (ngcs_sendall(sock, head, 2 * sizeof(int)))
+                    return 1;
+                if (ngcs_sendall(sock, data[n].d.s, data[n].size))
+                    return 1;
+                break;
+            default:
+                if (data[n].size < 0)
+                    return 1;
+                head[1] = data[n].size;
+                if (ngcs_sendall(sock, head, 2 * sizeof(int)))
+                    return 1;
+                if (ngcs_sendall(sock, data[n].d.p, data[n].size))
+                    return 1;
+                break;
+        }
     }
     return 0;
 }
 
-int ngcs_readmsg(int sock, int *chan, ngcs_data** data, int *cnt) {
-    int head[2]; int n;
-    if(ngcs_recvall(sock,head,2*sizeof(int))) return 1;
-    *chan = head[0]; *cnt = head[1];
+int ngcs_readmsg(int sock, int *chan, ngcs_data ** data, int *cnt)
+{
+    int head[2];
+    int n;
+    if (ngcs_recvall(sock, head, 2 * sizeof(int)))
+        return 1;
+    *chan = head[0];
+    *cnt = head[1];
     *data = NULL;
-    if(*cnt <= 0) return 0;
-    *data = malloc((*cnt)*sizeof(ngcs_data));
-    if(!*data) return 1;
-    for(n = 0; n < *cnt; n++) {
-      if(ngcs_recvall(sock, head,2*sizeof(int))) return 1;
-      if(head[1] < 0) return 1;
-      (*data)[n].type = head[0]; (*data)[n].size = head[1];
-      switch((*data)[n].type) {
-      case NGCS_TYPE_GROUP:
-      case NGCS_TYPE_INT:
-	if((*data)[n].size != sizeof(int)) return 1;
-	if(ngcs_recvall(sock,&(*data)[n].d.i,sizeof(int))) return 1;
-	break;
-      case NGCS_TYPE_STRING:
-	(*data)[n].d.s = malloc((*data)[n].size+1);
-	if(!(*data)[n].d.s) return 1;
-	if(ngcs_recvall(sock,(*data)[n].d.s,(*data)[n].size)) return 1;
-	(*data)[n].d.s[(*data)[n].size] = 0;
-	break;
-      default:
-	(*data)[n].d.p = malloc((*data)[n].size);
-	if(!(*data)[n].d.p) return 1;
-	if(ngcs_recvall(sock,(*data)[n].d.p,(*data)[n].size)) return 1;
-	break;
-      }
+    if (*cnt <= 0)
+        return 0;
+    *data = malloc((*cnt) * sizeof(ngcs_data));
+    if (!*data)
+        return 1;
+    for (n = 0; n < *cnt; n++)
+    {
+        if (ngcs_recvall(sock, head, 2 * sizeof(int)))
+            return 1;
+        if (head[1] < 0)
+            return 1;
+        (*data)[n].type = head[0];
+        (*data)[n].size = head[1];
+        switch ((*data)[n].type)
+        {
+            case NGCS_TYPE_GROUP:
+            case NGCS_TYPE_INT:
+                if ((*data)[n].size != sizeof(int))
+                    return 1;
+                if (ngcs_recvall(sock, &(*data)[n].d.i, sizeof(int)))
+                    return 1;
+                break;
+            case NGCS_TYPE_STRING:
+                (*data)[n].d.s = malloc((*data)[n].size + 1);
+                if (!(*data)[n].d.s)
+                    return 1;
+                if (ngcs_recvall(sock, (*data)[n].d.s, (*data)[n].size))
+                    return 1;
+                (*data)[n].d.s[(*data)[n].size] = 0;
+                break;
+            default:
+                (*data)[n].d.p = malloc((*data)[n].size);
+                if (!(*data)[n].d.p)
+                    return 1;
+                if (ngcs_recvall(sock, (*data)[n].d.p, (*data)[n].size))
+                    return 1;
+                break;
+        }
     }
     return 0;
 }
 
-void ngcs_freedata(ngcs_data* data, int cnt) {
-  int i;
-  if(!data || cnt < 0) return;
-  for(i = 0; i < cnt; i++) {
-    switch(data[i].type) {
-    case NGCS_TYPE_INT:
-      break;
-    case NGCS_TYPE_STRING:
-      if(data[i].d.s) free(data[i].d.s);
-      break;
-    default:
-      if(data[i].d.p) free(data[i].d.p);
-      break;
+void ngcs_freedata(ngcs_data * data, int cnt)
+{
+    int i;
+
+    if (!data || cnt < 0)
+        return;
+    for (i = 0; i < cnt; i++)
+    {
+        switch (data[i].type)
+        {
+            case NGCS_TYPE_INT:
+                break;
+            case NGCS_TYPE_STRING:
+                if (data[i].d.s)
+                    free(data[i].d.s);
+                break;
+            default:
+                if (data[i].d.p)
+                    free(data[i].d.p);
+                break;
+        }
     }
-  }
-  free(data);
+    free(data);
 }
 
-int ngcs_sendall(int sock, const void* buf, int len) {
-  int ret;
-  while(len > 0) {
-    ret = send(sock, buf, len, 0);
-    if(ret <= 0) {
-      return 1;
-    } else {
-      buf += ret; len -= ret;
+int ngcs_sendall(int sock, const void *buf, int len)
+{
+    int ret;
+
+    while (len > 0)
+    {
+        ret = send(sock, buf, len, 0);
+        if (ret <= 0)
+        {
+            return 1;
+        }
+        else
+        {
+            buf += ret;
+            len -= ret;
+        }
     }
-  }
-  return 0;
+    return 0;
 }
 
-int ngcs_recvall(int sock, void* buf, int len) {
-  int ret;
-  while(len > 0) {
-    ret = recv(sock, buf, len, 0);
-    if(ret <= 0) {
-      return 1;
-    } else {
-      buf += ret; len -= ret;
+int ngcs_recvall(int sock, void *buf, int len)
+{
+    int ret;
+
+    while (len > 0)
+    {
+        ret = recv(sock, buf, len, 0);
+        if (ret <= 0)
+        {
+            return 1;
+        }
+        else
+        {
+            buf += ret;
+            len -= ret;
+        }
     }
-  }
-  return 0;
+    return 0;
 }

Modified: initng/plugins/ngcs/ngcs_common.h
==============================================================================
--- initng/plugins/ngcs/ngcs_common.h	(original)
+++ initng/plugins/ngcs/ngcs_common.h	Mon Jan  2 17:13:28 2006
@@ -13,21 +13,23 @@
 #define NGCS_TYPE_LONG 4
 #define NGCS_TYPE_GROUP 5
 
-typedef struct ngcs_data_s {
-  int type;
-  int size;
-  union {
-    int i;
-    long l;
-    char* s;
-    void* p;
-  } d;
+typedef struct ngcs_data_s
+{
+    int type;
+    int size;
+    union
+    {
+        int i;
+        long l;
+        char *s;
+        void *p;
+    } d;
 } ngcs_data;
 
 
-int ngcs_sendall(int sock, const void* buf, int len);
-int ngcs_recvall(int sock, void* buf, int len);
-int ngcs_writemsg(int sock, int chan, ngcs_data* data, int cnt);
-int ngcs_readmsg(int sock, int *chan, ngcs_data** data, int *cnt);
-void ngcs_freedata(ngcs_data* data, int cnt);
+int ngcs_sendall(int sock, const void *buf, int len);
+int ngcs_recvall(int sock, void *buf, int len);
+int ngcs_writemsg(int sock, int chan, ngcs_data * data, int cnt);
+int ngcs_readmsg(int sock, int *chan, ngcs_data ** data, int *cnt);
+void ngcs_freedata(ngcs_data * data, int cnt);
 #endif


More information about the Initng-svn mailing list