X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fngircd%2Fresolve.c;h=32791901215c475c95982616e8d95b321efe7680;hp=c7e600381e81b571ded2cd343887529418e7d59c;hb=62503353525fd893156731521edc95b2bd6a1f6f;hpb=30796698a9fca0037ea48f70ceafac1e783d06fb diff --git a/src/ngircd/resolve.c b/src/ngircd/resolve.c index c7e60038..32791901 100644 --- a/src/ngircd/resolve.c +++ b/src/ngircd/resolve.c @@ -1,6 +1,6 @@ /* * ngIRCd -- The Next Generation IRC Daemon - * Copyright (c)2001-2011 Alexander Barton (alex@barton.de) and Contributors. + * Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,16 +18,16 @@ * Asynchronous resolver */ -#include "imp.h" #include #include #include #include #include +#include +#include #include #include #include -#include #ifdef IDENTAUTH #ifdef HAVE_IDENT_H @@ -35,17 +35,12 @@ #endif #endif -#include "array.h" #include "conn.h" #include "conf.h" -#include "defines.h" #include "log.h" #include "ng_ipaddr.h" -#include "exp.h" #include "resolve.h" -#include "io.h" - static void Do_ResolveAddr PARAMS(( const ng_ipaddr_t *Addr, int Sock, int w_fd )); static void Do_ResolveName PARAMS(( const char *Host, int w_fd )); @@ -222,8 +217,8 @@ ReverseLookup(const ng_ipaddr_t *IpAddr, char *resbuf, size_t reslen) assert(reslen >= NG_INET_ADDRSTRLEN); ng_ipaddr_tostr_r(IpAddr, tmp_ip_str); - Log_Subprocess(LOG_WARNING, "%s: Can't resolve address \"%s\": %s", - funcname, tmp_ip_str, errmsg); + Log_Subprocess(LOG_WARNING, "Can't resolve address \"%s\": %s [%s].", + tmp_ip_str, errmsg, funcname); strlcpy(resbuf, tmp_ip_str, reslen); return false; } @@ -242,7 +237,7 @@ ForwardLookup(const char *hostname, array *IpAddr, int af) { ng_ipaddr_t addr; -#ifdef HAVE_GETADDRINFO +#ifdef HAVE_WORKING_GETADDRINFO int res; struct addrinfo *a, *ai_results; static struct addrinfo hints; @@ -268,9 +263,9 @@ ForwardLookup(const char *hostname, array *IpAddr, int af) } for (a = ai_results; a != NULL; a = a->ai_next) { - assert(a->ai_addrlen <= sizeof(addr)); + assert((size_t)a->ai_addrlen <= sizeof(addr)); - if (a->ai_addrlen > sizeof(addr)) + if ((size_t)a->ai_addrlen > sizeof(addr)) continue; memcpy(&addr, a->ai_addr, a->ai_addrlen); @@ -339,14 +334,16 @@ static void Log_Forgery_NoIP(const char *ip, const char *host) { Log_Subprocess(LOG_WARNING, - "Possible forgery: %s resolved to %s (which has no ip address)", ip, host); + "Possible forgery: %s resolved to \"%s\", which has no IP address!", + ip, host); } static void Log_Forgery_WrongIP(const char *ip, const char *host) { Log_Subprocess(LOG_WARNING, - "Possible forgery: %s resolved to %s (which points to different address)", ip, host); + "Possible forgery: %s resolved to \"%s\", which points to a different address!", + ip, host); }