]> code.citadel.org Git - citadel.git/blobdiff - webcit/netconf.c
fix various incidents reported by CLANG Static analyzer:
[citadel.git] / webcit / netconf.c
index 5f9087228076de8e9abdd5957c8759f4049839ae..d08c42db3d60563fd56c50b6035c7a72be2e116f 100644 (file)
@@ -97,8 +97,8 @@ HashList *load_netconf(StrBuf *Target, WCTemplputParams *TP)
                Hash = NewHash(1, NULL);
 
                Buf = NewStrBuf();
-               while ((len = StrBuf_ServGetln(Buf),
-                       strcmp(ChrPtr(Buf), "000"))) {
+               while ((len = StrBuf_ServGetln(Buf), (len >= 0) && 
+                       ((len != 3) || !strcmp(ChrPtr(Buf), "000")))) {
                        Node = NewNode(Buf);
                        if (Node == NULL)
                                continue;
@@ -138,6 +138,7 @@ void save_net_conf(HashList *Nodelist)
                                }
                        }
                        FreeStrBuf(&Buf);
+                       DeleteHashPos(&where);
                }
                serv_puts("000");
        }
@@ -206,7 +207,7 @@ void display_edit_node(void)
        
        memset(&SubTP, 0, sizeof(WCTemplputParams));
        SVPutBuf("ITERATE:KEY", Index, 1);
-       SubTP.ContextType = CTX_NODECONF;
+       SubTP.Filter.ContextType = CTX_NODECONF;
        SubTP.Context = vNode;
        begin_burst();
        Tmpl = sbstr("template");
@@ -298,18 +299,18 @@ void
 InitModule_NETCONF
 (void)
 {
-       WebcitAddUrlHandler(HKEY("display_edit_node"), display_edit_node, 0);
+       WebcitAddUrlHandler(HKEY("display_edit_node"), "", 0, display_edit_node, 0);
 
-       WebcitAddUrlHandler(HKEY("edit_node"), edit_node, 0);
-       WebcitAddUrlHandler(HKEY("display_netconf"), display_netconf, 0);
-       WebcitAddUrlHandler(HKEY("display_confirm_delete_node"), display_confirm_delete_node, 0);
-       WebcitAddUrlHandler(HKEY("delete_node"), delete_node, 0);
+       WebcitAddUrlHandler(HKEY("aide_ignetconf_edit_node"), "", 0, edit_node, 0);
+       WebcitAddUrlHandler(HKEY("display_netconf"), "", 0, display_netconf, 0);
+       WebcitAddUrlHandler(HKEY("display_confirm_delete_node"), "", 0, display_confirm_delete_node, 0);
+       WebcitAddUrlHandler(HKEY("delete_node"), "", 0, delete_node, 0);
 
                                                                                           
-        RegisterNamespace("CFG:IGNET:NODE", 0, 1, tmplput_NodeName, CTX_NODECONF);
-        RegisterNamespace("CFG:IGNET:SECRET", 0, 1, tmplput_Secret, CTX_NODECONF);
-        RegisterNamespace("CFG:IGNET:HOST", 0, 1, tmplput_Host, CTX_NODECONF);
-        RegisterNamespace("CFG:IGNET:PORT", 0, 1, tmplput_Port, CTX_NODECONF);
+        RegisterNamespace("CFG:IGNET:NODE", 0, 1, tmplput_NodeName, NULL, CTX_NODECONF);
+        RegisterNamespace("CFG:IGNET:SECRET", 0, 1, tmplput_Secret, NULL, CTX_NODECONF);
+        RegisterNamespace("CFG:IGNET:HOST", 0, 1, tmplput_Host, NULL, CTX_NODECONF);
+        RegisterNamespace("CFG:IGNET:PORT", 0, 1, tmplput_Port, NULL, CTX_NODECONF);
 
        RegisterIterator("NODECONFIG", 0, NULL, load_netconf, NULL, DeleteHash, CTX_NODECONF, CTX_NONE, IT_NOFLAG);
 }