summaryrefslogtreecommitdiff
path: root/src/s_bsd.c
diff options
context:
space:
mode:
authormichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2012-11-04 15:37:10 +0000
committermichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2012-11-04 15:37:10 +0000
commit90aeacbf12d63dcd628caed461bd744639603d76 (patch)
tree5eb5c2aa3fd576ac33d84d2911482a3f200c1bea /src/s_bsd.c
parent8daa0e2a6fe61e95dc2dd145ebbdb2b05c097196 (diff)
- Initial rewrite of the configuration subsystem
git-svn-id: svn://svn.ircd-hybrid.org/svnroot/ircd-hybrid/trunk@1632 82007160-df01-0410-b94d-b575c5fd34c7
Diffstat (limited to 'src/s_bsd.c')
-rw-r--r--src/s_bsd.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/s_bsd.c b/src/s_bsd.c
index 5eaae02..b3ea5f1 100644
--- a/src/s_bsd.c
+++ b/src/s_bsd.c
@@ -177,8 +177,6 @@ init_comm(void)
void
close_connection(struct Client *client_p)
{
- struct AccessItem *aconf;
- struct ClassItem *aclass;
dlink_node *ptr = NULL;
assert(client_p);
@@ -210,7 +208,7 @@ close_connection(struct Client *client_p)
DLINK_FOREACH(ptr, server_items.head)
{
- struct ConfItem *conf = ptr->data;
+ struct MaskItem *conf = ptr->data;
if (irccmp(conf->name, client_p->name))
continue;
@@ -219,9 +217,7 @@ close_connection(struct Client *client_p)
* Reset next-connect cycle of all connect{} blocks that match
* this servername.
*/
- aconf = map_to_conf(conf);
- aclass = map_to_conf(aconf->class_ptr);
- aconf->hold = CurrentTime + aclass->con_freq;
+ conf->hold = CurrentTime + conf->class->con_freq;
}
}
else
@@ -243,7 +239,7 @@ close_connection(struct Client *client_p)
dbuf_clear(&client_p->localClient->buf_recvq);
MyFree(client_p->localClient->passwd);
- detach_conf(client_p, CONF_TYPE);
+ detach_conf(client_p, CONF_CLIENT|CONF_OPER|CONF_SERVER);
client_p->from = NULL; /* ...this should catch them! >:) --msa */
}