From 0a04a80d9f3caeffce4d7daddf5730034602073d Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Sat, 16 Jul 2011 15:42:32 -0700 Subject: [PATCH] Replace another inet_ntop() call with getnameinfo(). --- clientserver.c | 2 +- socket.c | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/clientserver.c b/clientserver.c index fbd3af65..52ce44fb 100644 --- a/clientserver.c +++ b/clientserver.c @@ -1199,7 +1199,7 @@ int daemon_main(void) rprintf(FLOG, "rsyncd version %s starting, listening on port %d\n", RSYNC_VERSION, rsync_port); /* TODO: If listening on a particular address, then show that - * address too. In fact, why not just do inet_ntop on the + * address too. In fact, why not just do getnameinfo on the * local address??? */ start_accept_loop(rsync_port, start_daemon); diff --git a/socket.c b/socket.c index a43385ec..b6f29af0 100644 --- a/socket.c +++ b/socket.c @@ -300,9 +300,8 @@ int open_socket_out(char *host, int port, const char *bind_addr, if (DEBUG_GTE(CONNECT, 2)) { char buf[2048]; if ((error = getnameinfo(res->ai_addr, res->ai_addrlen, buf, sizeof buf, NULL, 0, NI_NUMERICHOST) != 0)) - rprintf(FINFO, "error in getnameinfo: %s\n", gai_strerror(error)); - else - rprintf(FINFO, "Connected to %s (%s)\n", h, buf); + snprintf(buf, sizeof buf, "*getnameinfo failure: %s*", gai_strerror(error)); + rprintf(FINFO, "Connected to %s (%s)\n", h, buf); } break; } @@ -312,8 +311,8 @@ int open_socket_out(char *host, int port, const char *bind_addr, for (res = res0, j = 0; res; res = res->ai_next, j++) { if (errnos[j] == 0) continue; - if (inet_ntop(res->ai_family, res->ai_addr->sa_data + 2, buf, sizeof buf) == NULL) - strlcpy(buf, "*inet_ntop failed*", sizeof buf); + if ((error = getnameinfo(res->ai_addr, res->ai_addrlen, buf, sizeof buf, NULL, 0, NI_NUMERICHOST) != 0)) + snprintf(buf, sizeof buf, "*getnameinfo failure: %s*", gai_strerror(error)); rsyserr(FERROR, errnos[j], "failed to connect to %s (%s)", h, buf); } if (s < 0) -- 2.47.2