diff options
| author | Alexander Barton <alex@barton.de> | 2011-04-26 11:09:59 +0200 |
|---|---|---|
| committer | Alexander Barton <alex@barton.de> | 2011-04-26 11:10:50 +0200 |
| commit | 160f5725a6646d432f70fe8b677ffdbcbdeb02ce (patch) | |
| tree | 0125676f469d84e18aa16f67aa2bc63c1d821f54 | |
| parent | e4e1595bffdb6c43cd163ae576ee9715b859e494 (diff) | |
| download | ngircd-160f5725a6646d432f70fe8b677ffdbcbdeb02ce.tar.gz ngircd-160f5725a6646d432f70fe8b677ffdbcbdeb02ce.zip | |
Do reverse lookups using the AF of the incoming connection
This fixes errors like this one: Address mismatch: 2001:1234:abcd:1::1 != 192.168.1.1
| -rw-r--r-- | src/ngircd/resolve.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ngircd/resolve.c b/src/ngircd/resolve.c index ff40b8d5..9b17af9c 100644 --- a/src/ngircd/resolve.c +++ b/src/ngircd/resolve.c @@ -380,7 +380,7 @@ Do_ResolveAddr(const ng_ipaddr_t *Addr, int identsock, int w_fd) if (!ReverseLookup(Addr, hostname, sizeof(hostname))) goto dns_done; - if (ForwardLookup(hostname, &resolved_addr, AF_UNSPEC)) { + if (ForwardLookup(hostname, &resolved_addr, ng_ipaddr_af(Addr))) { if (!Addr_in_list(&resolved_addr, Addr)) { Log_Forgery_WrongIP(tmp_ip_str, hostname); strlcpy(hostname, tmp_ip_str, sizeof(hostname)); |