summaryrefslogtreecommitdiff
path: root/src/AsyncNameResolver.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2011-08-20 21:53:48 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2011-08-20 21:53:48 +0900
commit3c73b6e76746e03f21ef401f17180a296b4a66d3 (patch)
tree80f001ff6de4d14ff853cfb4f1bc58a4332b9f51 /src/AsyncNameResolver.cc
parentaf46293ef93a056bcd06f4b8f973fe5aa395d20f (diff)
Eliminated inet_ntoa and inet_ntop. Use getnameinfo() instead.
Diffstat (limited to 'src/AsyncNameResolver.cc')
-rw-r--r--src/AsyncNameResolver.cc18
1 files changed, 4 insertions, 14 deletions
diff --git a/src/AsyncNameResolver.cc b/src/AsyncNameResolver.cc
index 08055cc5..4cba7a25 100644
--- a/src/AsyncNameResolver.cc
+++ b/src/AsyncNameResolver.cc
@@ -38,6 +38,7 @@
#include "A2STR.h"
#include "LogFactory.h"
+#include "SocketCore.h"
namespace aria2 {
@@ -50,21 +51,10 @@ void callback(void* arg, int status, int timeouts, struct hostent* host)
return;
}
for(char** ap = host->h_addr_list; *ap; ++ap) {
-#ifdef HAVE_INET_NTOP
- char addrstring[INET6_ADDRSTRLEN];
- const char* dst =
- inet_ntop(host->h_addrtype, *ap, addrstring, sizeof(addrstring));
- if(dst) {
- resolverPtr->resolvedAddresses_.push_back(dst);
+ char addrstring[NI_MAXHOST];
+ if(inetNtop(host->h_addrtype, *ap, addrstring, sizeof(addrstring)) == 0) {
+ resolverPtr->resolvedAddresses_.push_back(addrstring);
}
-#else // !HAVE_INET_NTOP
- if(host->h_addrtype != AF_INET) {
- continue;
- }
- struct in_addr addr;
- memcpy(&addr, *ap, sizeof(in_addr));
- resolverPtr->resolvedAddresses_.push_back(inet_ntoa(addr));
-#endif // !HAVE_INET_NTOP
}
if(resolverPtr->resolvedAddresses_.empty()) {
resolverPtr->error_ = "address conversion failed";