1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-06-30 05:56:39 +02:00

- Added set::options::dont-resolve (=hostnames of incomming clients won't be resolved).

This is more usefull than the no nameserver + useip solution since with this no resolving
is done for incomming clients, but connecting to other servers (with hostnames) still works fine ;P.
This commit is contained in:
Bram Matthys
2003-02-22 22:34:40 +00:00
parent 4795a45150
commit 8fbb67818b
5 changed files with 15 additions and 0 deletions
+1
View File
@@ -1938,3 +1938,4 @@ seen. gmtime warning still there
quit messages you create a badword quit {}. Additionally loading badwords.quit.conf will
censor several badwords by default. Based on suggestions by Gargo
- Fixed two ident bugs (multihomed&connect), both resulted in ident not working.
- Added set::options::dont-resolve (=hostnames of incomming clients won't be resolved).
+4
View File
@@ -1488,6 +1488,10 @@ loadmodule "src/modules/scan_http.so";
<p><font class="set">set::options::show-connect-info;</font><br>
If present notices showing &quot;ident request&quot;, &quot;hostname lookup&quot;,
etc. will be displayed when a user connects.</p>
<p><font class="set">set::options::dont-resolve;</font><br>
If present hosts of incomming users are not resolved, can be usefull if many of your
users don't have a host to speed up connecting.<br>
Note that since no resolving is done you also can't have host based allow blocks.</p>
<p><font class="set">set::dns::timeout &lt;timevalue&gt;;</font><br>
A time value specifying the length of time a DNS server has to respond before
a timeout. A time value is a numeric string with d meaning days, h meaning hours,
+2
View File
@@ -61,6 +61,7 @@ struct zConfiguration {
unsigned ident_check:1;
unsigned fail_oper_warn:1;
unsigned show_connect_info:1;
unsigned dont_resolve:1;
unsigned use_egd;
long host_timeout;
int host_retries;
@@ -103,6 +104,7 @@ extern aConfiguration iConf;
#define MAXCHANNELSPERUSER iConf.maxchannelsperuser
#define WEBTV_SUPPORT iConf.webtv_support
#define NO_OPER_HIDING iConf.no_oper_hiding
#define DONT_RESOLVE iConf.dont_resolve
#define AUTO_JOIN_CHANS iConf.auto_join_chans
#define OPER_AUTO_JOIN_CHANS iConf.oper_auto_join_chans
#define HOST_TIMEOUT iConf.host_timeout
+3
View File
@@ -1329,6 +1329,8 @@ void start_of_normal_client_handshake(aClient *acptr)
}
lin.flags = ASYNC_CLIENT;
lin.value.cptr = acptr;
if (DONT_RESOLVE)
goto skipdns;
Debug((DEBUG_DNS, "lookup %s", acptr->sockhost));
acptr->hostp = gethost_byaddr((char *)&acptr->ip, &lin);
@@ -1340,6 +1342,7 @@ void start_of_normal_client_handshake(aClient *acptr)
sendto_one(acptr, "%s", REPORT_FIN_DNSC);
}
nextdnscheck = 1;
skipdns:
start_auth(acptr);
}
+5
View File
@@ -4837,6 +4837,9 @@ int _conf_set(ConfigFile *conf, ConfigEntry *ce)
else if (!strcmp(cepp->ce_varname, "show-connect-info")) {
tempiConf.show_connect_info = 1;
}
else if (!strcmp(cepp->ce_varname, "dont-resolve")) {
tempiConf.dont_resolve = 1;
}
}
}
else if (!strcmp(cep->ce_varname, "hosts")) {
@@ -5121,6 +5124,8 @@ int _test_set(ConfigFile *conf, ConfigEntry *ce)
}
else if (!strcmp(cepp->ce_varname, "show-connect-info")) {
}
else if (!strcmp(cepp->ce_varname, "dont-resolve")) {
}
else
{
config_error("%s:%i: unknown option set::options::%s",