X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=ircd%2Fhash.c;h=c3b58b5a973ef571f468ef73c01d8db2d842873c;hb=525130db7bae2c188f1588ca164e82d1ce736f46;hp=100c9600b853bdef6b0929dbe80f7886c9a423bb;hpb=3f20d184b58e9c9e7cdce991e6007f5f674a130d;p=ircu2.10.12-pk.git diff --git a/ircd/hash.c b/ircd/hash.c index 100c960..c3b58b5 100644 --- a/ircd/hash.c +++ b/ircd/hash.c @@ -281,9 +281,9 @@ static HASHREGS strhash(const char *n) */ int hAddClient(struct Client *cptr) { - HASHREGS hashv = strhash(cptr->name); + HASHREGS hashv = strhash(cli_name(cptr)); - cptr->hnext = clientTable[hashv]; + cli_hnext(cptr) = clientTable[hashv]; clientTable[hashv] = cptr; return 0; @@ -312,22 +312,22 @@ int hAddChannel(struct Channel *chptr) */ int hRemClient(struct Client *cptr) { - HASHREGS hashv = strhash(cptr->name); + HASHREGS hashv = strhash(cli_name(cptr)); struct Client *tmp = clientTable[hashv]; if (tmp == cptr) { - clientTable[hashv] = cptr->hnext; - cptr->hnext = cptr; + clientTable[hashv] = cli_hnext(cptr); + cli_hnext(cptr) = cptr; return 0; } while (tmp) { - if (tmp->hnext == cptr) { - tmp->hnext = tmp->hnext->hnext; - cptr->hnext = cptr; + if (cli_hnext(tmp) == cptr) { + cli_hnext(tmp) = cli_hnext(cli_hnext(tmp)); + cli_hnext(cptr) = cptr; return 0; } - tmp = tmp->hnext; + tmp = cli_hnext(tmp); } return -1; } @@ -400,12 +400,12 @@ struct Client* hSeekClient(const char *name, int TMask) struct Client *cptr = clientTable[hashv]; if (cptr) { - if (0 == (cptr->status & TMask) || 0 != ircd_strcmp(name, cptr->name)) { + if (0 == (cli_status(cptr) & TMask) || 0 != ircd_strcmp(name, cli_name(cptr))) { struct Client* prev; while (prev = cptr, cptr = cptr->hnext) { - if ((cptr->status & TMask) && (0 == ircd_strcmp(name, cptr->name))) { - prev->hnext = cptr->hnext; - cptr->hnext = clientTable[hashv]; + if ((cli_status(cptr) & TMask) && (0 == ircd_strcmp(name, cli_name(cptr)))) { + cli_hnext(prev) = cli_hnext(cptr); + cli_hnext(cptr) = clientTable[hashv]; clientTable[hashv] = cptr; break; } @@ -463,7 +463,7 @@ int m_hash(struct Client *cptr, struct Client *sptr, int parc, char *parv[]) if ((cl = clientTable[i])) { int len = 0; ++buckets; - for ( ; cl; cl = cl->hnext) + for ( ; cl; cl = cli_hnext(cl)) ++len; if (len > max_chain) max_chain = len;