]> jfr.im git - irc/freenode/ircd-seven.git/commitdiff
hunt_server: Disallow wildcarded nicknames.
authorJilles Tjoelker <redacted>
Sat, 8 Jan 2011 16:47:05 +0000 (17:47 +0100)
committerJilles Tjoelker <redacted>
Sat, 8 Jan 2011 16:47:05 +0000 (17:47 +0100)
Any hunted parameter with wildcards is now assumed
to be a server, never a user.

Reasons:
* fewer match() calls
* do not disclose existing nicknames
* more intuitive behaviour for CONNECT

m_trace has a copy of some hunt_server logic in it
(for the RPL_TRACELINK reply), so adjust that too.

modules/m_trace.c
src/s_serv.c

index 603922e6fe781111ccbbfae83cd898a30af5fa47..25206e56cd8a4f2c68231bce43dd6c9bf831198b 100644 (file)
@@ -111,7 +111,7 @@ m_trace(struct Client *client_p, struct Client *source_p, int parc, const char *
 
                        if(ac2ptr == NULL)
                        {
-                               RB_DLINK_FOREACH(ptr, global_client_list.head)
+                               RB_DLINK_FOREACH(ptr, global_serv_list.head)
                                {
                                        ac2ptr = ptr->data;
 
index 8b670c5090f36330eebb5408e47d8006bf614810..02632bbf6e6787c248959f547fb9618102962881 100644 (file)
@@ -157,7 +157,7 @@ hunt_server(struct Client *client_p, struct Client *source_p,
         */
        if(!target_p && wilds)
        {
-               RB_DLINK_FOREACH(ptr, global_client_list.head)
+               RB_DLINK_FOREACH(ptr, global_serv_list.head)
                {
                        if(match(new, ((struct Client *) (ptr->data))->name))
                        {