1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-07-08 02:23:12 +02:00

+- Added Find_link, serv->conf, did a Find_tld fixup, removed serv->nline,

+  removing a lot of my_name_for_link crap, indented s_serv.c
+- Recoded m_server(YES!) -stskeeps
This commit is contained in:
stskeeps
2001-01-20 21:26:54 +00:00
parent 1881d7a7c2
commit 2db92a77ad
6 changed files with 1078 additions and 699 deletions
+3
View File
@@ -103,3 +103,6 @@
- Heavily recoded /rehash (removed a ton of coding)
- Updated match() to have some optimizations from bahamut
- +GScm now affect /part msgs (requested by SegFault and others)
- Added Find_link, serv->conf, did a Find_tld fixup, removed serv->nline,
removing a lot of my_name_for_link crap, indented s_serv.c
- Recoded m_server(YES!) -stskeeps
+1 -1
View File
@@ -67,7 +67,7 @@ ConfigItem_listen *Find_listen(char *ipmask, int port);
ConfigItem_ulines *Find_uline(char *host);
ConfigItem_except *Find_except(char *host, short type);
ConfigItem_tld *Find_tld(char *host);
ConfigItem_link *Find_link(char *username, char *hostname, char *ip, char *servername);
aMotd *read_motd(char *filename);
aMotd *read_rules(char *filename);
+11 -10
View File
@@ -717,14 +717,14 @@ struct User {
};
struct Server {
struct Server *nexts;
anUser *user; /* who activated this connection */
char *up; /* uplink for this server */
char by[NICKLEN + 1];
aConfItem *nline; /* N-line pointer for this server */
TS timestamp; /* Remotely determined connect try time */
unsigned short numeric; /* NS numeric, 0 if none */
long users;
struct Server *nexts;
anUser *user; /* who activated this connection */
char *up; /* uplink for this server */
char by[NICKLEN + 1];
ConfigItem_link *conf;
TS timestamp; /* Remotely determined connect try time */
unsigned short numeric; /* NS numeric, 0 if none */
long users;
#ifdef LIST_DEBUG
aClient *bcptr;
#endif
@@ -1068,10 +1068,11 @@ struct _configitem_link {
short port;
char *hubmask;
char *leafmask;
unsigned char leafdepth;
unsigned char leafdepth;
char *connpwd;
char *recvpwd;
ConfigItem_class *class;
int refcount;
ConfigItem_class *class;
short options;
};
+24 -2
View File
@@ -1871,10 +1871,32 @@ ConfigItem_tld *Find_tld(char *host) {
if (!host)
return NULL;
for(tld = conf_tld; tld; tld = (ConfigItem_tld *) tld->next) {
if (!match(tld->mask, host))
for(tld = conf_tld; tld; tld = (ConfigItem_tld *) tld->next)
{
if (!match(tld->mask, host))
return tld;
}
return NULL;
}
ConfigItem_link *Find_link(char *username,
char *hostname,
char *ip,
char *servername)
{
ConfigItem_link *link;
if (!username || !hostname || !servername || !ip)
return NULL;
for(link = conf_link; link; link = (ConfigItem_link *) link->next)
{
if (!match(link->servername, servername) &&
!match(link->username, username) &&
(!match(link->hostname, hostname) || !match(link->hostname, ip)))
return link;
}
return NULL;
}
-4
View File
@@ -653,10 +653,6 @@ static void exit_one_client_backend(cptr, sptr, from, comment, split)
if (!(acptr = local[i]) || !IsServer(acptr) ||
acptr == cptr || IsMe(acptr))
continue;
if ((aconf = acptr->serv->nline) &&
(match(my_name_for_link(me.name, aconf),
sptr->name) == 0))
continue;
/*
** SQUIT going "upstream". This is the remote
** squit still hunting for the target. Use prefixed
+1039 -682
View File
File diff suppressed because it is too large Load Diff