ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/client.c
(Generate patch)

Comparing ircd-hybrid-7.2/src/client.c (file contents):
Revision 650 by michael, Thu Jun 8 07:00:17 2006 UTC vs.
Revision 706 by michael, Sun Jul 2 11:25:55 2006 UTC

# Line 1398 | Line 1398 | change_local_nick(struct Client *client_
1398       (IsOper(source_p) && ConfigFileEntry.no_oper_flood))
1399    {
1400      if (irccmp(source_p->name, nick))
1401 +    {
1402 +      /*
1403 +       * Make sure everyone that has this client on its accept list
1404 +       * loses that reference.
1405 +       */
1406 +      del_all_their_accepts(source_p);
1407        source_p->tsinfo = CurrentTime;
1408 +    }
1409  
1410      /* XXX - the format of this notice should eventually be changed
1411       * to either %s[%s@%s], or even better would be get_client_name() -bill
# Line 1408 | Line 1415 | change_local_nick(struct Client *client_
1415      sendto_common_channels_local(source_p, 1, ":%s!%s@%s NICK :%s",
1416                                   source_p->name, source_p->username,
1417                                   source_p->host, nick);
1411 –
1418      add_history(source_p, 1);
1419 <          
1420 <         /* Only hubs care about lazy link nicks not being sent on yet
1421 <           * lazylink leafs/leafs always send their nicks up to hub,
1422 <           * hence must always propagate nick changes.
1423 <           * hubs might not propagate a nick change, if the leaf
1424 <           * does not know about that client yet.
1425 <           */
1419 >
1420 >    /*
1421 >     * Only hubs care about lazy link nicks not being sent on yet
1422 >     * lazylink leafs/leafs always send their nicks up to hub,
1423 >     * hence must always propagate nick changes.
1424 >     * hubs might not propagate a nick change, if the leaf
1425 >     * does not know about that client yet.
1426 >     */
1427      sendto_server(client_p, source_p, NULL, CAP_TS6, NOCAPS, NOFLAGS,
1428                    ":%s NICK %s :%lu",
1429                    ID(source_p), nick, (unsigned long)source_p->tsinfo);
# Line 1439 | Line 1446 | change_local_nick(struct Client *client_
1446    strcpy(source_p->name, nick);
1447    hash_add_client(source_p);
1448  
1442 –  /* Make sure everyone that has this client on its accept list
1443 –   * loses that reference.
1444 –   */
1445 –  del_all_their_accepts(source_p);
1446 –
1449    /* fd_desc is long enough */
1450    fd_note(&client_p->localClient->fd, "Nick: %s", nick);
1451   }

Diff Legend

– Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)