]> jfr.im git - solanum.git/blobdiff - ircd/authproc.c
ircd startup: avoid black magic with file descriptors
[solanum.git] / ircd / authproc.c
index e8fa81816c60b336dd02dd1b10ed6ee0cb6ac854..00fec3e0d1def6d0110da2388a431eb31370373b 100644 (file)
@@ -153,14 +153,14 @@ str_to_cid(const char *str)
 }
 
 static inline struct Client *
-cid_to_client(uint32_t cid, bool delete)
+cid_to_client(uint32_t ncid, bool del)
 {
        struct Client *client_p;
 
-       if(delete)
-               client_p = rb_dictionary_delete(cid_clients, RB_UINT_TO_POINTER(cid));
+       if(del)
+               client_p = rb_dictionary_delete(cid_clients, RB_UINT_TO_POINTER(ncid));
        else
-               client_p = rb_dictionary_retrieve(cid_clients, RB_UINT_TO_POINTER(cid));
+               client_p = rb_dictionary_retrieve(cid_clients, RB_UINT_TO_POINTER(ncid));
 
        /* If the client's not found, that's okay, it may have already gone away.
         * --Elizafox */
@@ -169,14 +169,14 @@ cid_to_client(uint32_t cid, bool delete)
 }
 
 static inline struct Client *
-str_cid_to_client(const char *str, bool delete)
+str_cid_to_client(const char *str, bool del)
 {
-       uint32_t cid = str_to_cid(str);
+       uint32_t ncid = str_to_cid(str);
 
-       if(cid == 0)
+       if(ncid == 0)
                return NULL;
 
-       return cid_to_client(cid, delete);
+       return cid_to_client(ncid, del);
 }
 
 static void
@@ -615,7 +615,7 @@ add_blacklist(const char *host, const char *reason, uint8_t iptype, rb_dlink_lis
        stats->host = rb_strdup(host);
        stats->iptype = iptype;
        stats->hits = 0;
-       rb_dictionary_add(bl_stats, host, stats);
+       rb_dictionary_add(bl_stats, stats->host, stats);
 
        rb_helper_write(authd_helper, "O rbl %s %hhu %s :%s", host, iptype, filterbuf, reason);
 }
@@ -627,9 +627,9 @@ del_blacklist(const char *host)
        struct BlacklistStats *stats = rb_dictionary_retrieve(bl_stats, host);
        if(stats != NULL)
        {
+               rb_dictionary_delete(bl_stats, host);
                rb_free(stats->host);
                rb_free(stats);
-               rb_dictionary_delete(bl_stats, host);
        }
 
        rb_helper_write(authd_helper, "O rbl_del %s", host);