]> jfr.im git - irc/rqf/shadowircd.git/blobdiff - src/supported.c
Add is_halfop() and is_owner() and start using them in the new functions.
[irc/rqf/shadowircd.git] / src / supported.c
index 2f52479330675e9f0924e795d029d299cd77c0db..b892b50dd89e88488b0d9a70f41115912c2bd32a 100644 (file)
@@ -111,11 +111,12 @@ add_isupport(const char *name, const char *(*func)(const void *), const void *pa
        rb_dlinkAddTail(item, &item->node, &isupportlist);
 }
 
-void
+const void *
 change_isupport(const char *name, const char *(*func)(const void *), const void *param)
 {
        rb_dlink_node *ptr;
        struct isupportitem *item;
+       const void *oldvalue;
 
        RB_DLINK_FOREACH(ptr, isupportlist.head)
        {
@@ -123,13 +124,17 @@ change_isupport(const char *name, const char *(*func)(const void *), const void
 
                if (!strcmp(item->name, name))
                {
-                       item->name = name;
+                       oldvalue = item->param;
+
+                       // item->name = name;
                        item->func = func;
                        item->param = param;
 
                        break;
                }
        }
+
+       return oldvalue;
 }
 
 void
@@ -319,4 +324,6 @@ init_isupport(void)
        add_isupport("FNC", isupport_string, "");
        add_isupport("TARGMAX", isupport_targmax, NULL);
        add_isupport("EXTBAN", isupport_extban, NULL);
+       add_isupport("WHOX", isupport_string, "");
+       add_isupport("CLIENTVER", isupport_string, "3.0");
 }