void np_srv_remove_conn(Npsrv *srv, Npconn *conn) { Npconn *c, **pc; xpthread_mutex_lock(&srv->lock); pc = &srv->conns; c = *pc; while (c != NULL) { if (c == conn) { *pc = c->next; c->next = NULL; break; } pc = &c->next; c = *pc; } srv->conncount--; xpthread_cond_signal(&srv->conncountcond); xpthread_mutex_unlock(&srv->lock); np_tpool_cleanup (srv); }
void np_srv_destroy(Npsrv *srv) { np_tpool_decref (srv->tpool); np_tpool_cleanup (srv); np_usercache_destroy (srv); np_ctl_finalize (srv); free (srv); }
void np_srv_destroy(Npsrv *srv) { np_tpool_decref (srv->tpool); np_tpool_cleanup (srv); np_usercache_destroy (srv); np_net_shutdown (srv->netroot); np_assert_srv = NULL; free (srv); }