summaryrefslogtreecommitdiff
path: root/src/inspircd.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2004-04-14 19:35:03 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2004-04-14 19:35:03 +0000
commit9799bd67103cc7f51e68eb3b85d23768f1c5d3b8 (patch)
tree14087c8d26960c5e461941755f8814b50306c769 /src/inspircd.cpp
parent864a2d5fe486a07d382fec200793372f1c64bc82 (diff)
Fixes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@582 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/inspircd.cpp')
-rw-r--r--src/inspircd.cpp18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/inspircd.cpp b/src/inspircd.cpp
index 267832127..a0633957d 100644
--- a/src/inspircd.cpp
+++ b/src/inspircd.cpp
@@ -6836,12 +6836,18 @@ 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);
+ for (int j = 0; j < 255; j++)
+ {
+ if (servers[j] != NULL)
+ {
+ for (int x = 0; x < servers[j]->connectors.size(); j++)
+ {
+ if (servers[j]->connectors[x].GetServerName() == std::string(udp_host))
+ {
+ // 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;
}
}