/*
* 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
* Asynchronous resolver
*/
-#include "imp.h"
#include <assert.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
+#include <sys/stat.h>
+#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
-#include <signal.h>
#ifdef IDENTAUTH
#ifdef HAVE_IDENT_H
#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 ));
return false;
} /* Resolve_Name */
-
-#if !defined(HAVE_GETADDRINFO) || !defined(HAVE_GETNAMEINFO)
-#if !defined(WANT_IPV6) && defined(h_errno)
+#if !defined(HAVE_WORKING_GETADDRINFO) || !defined(HAVE_GETNAMEINFO)
+#ifdef h_errno
static char *
Get_Error( int H_Error )
{
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;
}
{
ng_ipaddr_t addr;
-#ifdef HAVE_GETADDRINFO
+#ifdef HAVE_WORKING_GETADDRINFO
int res;
struct addrinfo *a, *ai_results;
static struct addrinfo hints;
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);
}