]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/inspircd.cpp
Auth fixes
[user/henk/code/inspircd.git] / src / inspircd.cpp
index 267832127b3b2c41a3d0239ddcdcaa439f74e3b8..c0e5ee313f66c80341aaf474cb3bacd6d85148c3 100644 (file)
@@ -6836,12 +6836,24 @@ void handle_link_packet(char* udp_msg, char* udp_host, serverrec *serv)
 
                serverrec* source_server = NULL;
 
-               for (int j = 0; j < 255; j++) {
-                       if (servers[j] != NULL) {
-                               if (!strcasecmp(servers[j]->name,udp_host)) {
-                                       if (servers[j]->haspassed) {
-                                               // found a valid key for this server, can process restricted stuff here
-                                               process_restricted_commands(token,params,servers[j],serv,udp_host);
+               log(DEBUG,"Begin checking");
+
+               for (int j = 0; j < 255; j++)
+               {
+                       log(DEBUG,"Loop %d",j);
+                       if (servers[j] != NULL)
+                       {
+                               log(DEBUG,"Server %d not null",j);
+                               for (int x = 0; x < servers[j]->connectors.size(); x++)
+                               {
+                                       log(DEBUG,"Servers are: '%s' '%s'",udp_host,servers[j]->connectors[x].GetServerName().c_str());
+                                       if (!strcasecmp(servers[j]->connectors[x].GetServerName().c_str(),udp_host))
+                                       {
+                                               log(DEBUG,"match! process restricted stuff here");
+                                               // found a valid ircd_connector.
+                                               // TODO: Fix this so it only lets servers in that are in the 
+                                               // STATE_CONNECTED state!!!
+                                               process_restricted_commands(token,params,servers[j],serv,udp_host);
                                                return;
                                        }
                                }