]> jfr.im git - solanum.git/blobdiff - ircd/client.c
m_cap: use rn_snprintf_try_append
[solanum.git] / ircd / client.c
index 8c78145ec9774ea1363077d8297415fa5e9c1fcf..a4ee0cac292de11db69543dc75f22290100d256f 100644 (file)
@@ -314,6 +314,8 @@ free_local_client(struct Client *client_p)
        if (IsSSL(client_p))
                ssld_decrement_clicount(client_p->localClient->ssl_ctl);
 
+       rb_free(client_p->localClient->cipher_string);
+
        if (IsCapable(client_p, CAP_ZIP))
                ssld_decrement_clicount(client_p->localClient->z_ctl);
 
@@ -326,7 +328,7 @@ free_local_client(struct Client *client_p)
        client_p->localClient = NULL;
 }
 
-void
+static void
 free_client(struct Client *client_p)
 {
        s_assert(NULL != client_p);
@@ -1410,13 +1412,9 @@ exit_remote_server(struct Client *client_p, struct Client *source_p, struct Clie
                snprintf(newcomment, sizeof(newcomment), "by %s: %s",
                                from->name, comment);
 
-       if(source_p->serv != NULL)
-               remove_dependents(client_p, source_p, from, IsPerson(from) ? newcomment : comment, comment1);
+       remove_dependents(client_p, source_p, from, IsPerson(from) ? newcomment : comment, comment1);
 
-       if(source_p->servptr && source_p->servptr->serv)
-               rb_dlinkDelete(&source_p->lnode, &source_p->servptr->serv->servers);
-       else
-               s_assert(0);
+       rb_dlinkDelete(&source_p->lnode, &source_p->servptr->serv->servers);
 
        rb_dlinkFindDestroy(source_p, &global_serv_list);
        target_p = source_p->from;
@@ -1434,6 +1432,7 @@ exit_remote_server(struct Client *client_p, struct Client *source_p, struct Clie
 
        del_from_client_hash(source_p->name, source_p);
        remove_client_from_list(source_p);
+
        scache_split(source_p->serv->nameinfo);
 
        SetDead(source_p);