]> code.citadel.org Git - citadel.git/blobdiff - webcit/inetconf.c
* add first draft of group-change detection
[citadel.git] / webcit / inetconf.c
index 8814784fb9a974427708b3b156db8a2ee3fa5191..97820b7ab6473208726daee9f53405b6bd5e9826 100644 (file)
@@ -44,7 +44,7 @@ ConstStrBuf CfgNames[] = {
  */
 void load_inetconf(void)
 {
-       struct wcsession *WCC = WC;
+       wcsession *WCC = WC;
        StrBuf *Buf, *CfgToken, *Value;
        void *vHash;
        HashList *Hash;
@@ -93,7 +93,7 @@ void load_inetconf(void)
  * save changes to the inet config
  */
 void new_save_inetconf(void) {
-       struct wcsession *WCC = WC;
+       wcsession *WCC = WC;
        HashList *Hash;
        StrBuf *Str;
        const StrBuf *eType, *eNum, *eName;
@@ -157,7 +157,7 @@ void new_save_inetconf(void) {
                                return;
                        }
                        if (GetCount(Hash) > 0) {
-                               where = GetNewHashPos();
+                               where = GetNewHashPos(Hash, 0);
                                while (GetNextHashPos(Hash, where, &KeyLen, &Key, &vStr)) {
                                        Str = (StrBuf*) vStr;
                                        if ((Str!= NULL) && (StrLength(Str) > 0))
@@ -182,7 +182,7 @@ void InetCfgSubst(StrBuf *TemplBuffer, void *vContext, WCTemplateToken *Tokens)
 
 void DeleteInetConfHash(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType)
 {
-       struct wcsession *WCC = WC;
+       wcsession *WCC = WC;
 
        if (WCC->InetCfg != NULL)
                DeleteHash(&WCC->InetCfg);
@@ -192,15 +192,12 @@ void DeleteInetConfHash(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void
 
 HashList *GetInetConfHash(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType)
 {
-       struct wcsession *WCC = WC;
+       wcsession *WCC = WC;
        void *vHash;
 
        if (WCC->InetCfg == NULL)
                load_inetconf();
-       GetHash(WCC->InetCfg, 
-               Tokens->Params[2]->Start, 
-               Tokens->Params[2]->len,
-               &vHash);
+       GetHash(WCC->InetCfg, TKEY(2), &vHash);
        svprintf(HKEY("SERVCFG:INET:TYPE"), WCS_STRING, Tokens->Params[2]->Start);
        return vHash;
 }
@@ -210,6 +207,6 @@ InitModule_INETCONF
 (void)
 {
        WebcitAddUrlHandler(HKEY("save_inetconf"), new_save_inetconf, AJAX);
-       RegisterIterator("SERVCFG:INET", 1, NULL, GetInetConfHash, InetCfgSubst, NULL, CTX_INETCFG, CTX_NONE);
+       RegisterIterator("SERVCFG:INET", 1, NULL, GetInetConfHash, InetCfgSubst, NULL, CTX_INETCFG, CTX_NONE, IT_NOFLAG);
        RegisterNamespace("SERVCFG:FLUSHINETCFG",0, 0, DeleteInetConfHash, CTX_NONE);
 }