Replace inet_aton(3) and gethostbyaddr(3) calls in mountlist_list()
with calls to the new host_foo() DNS helpers.
The new functions will support IPv6 without additional changes, once
IPv6 is enabled in the generic hostname helpers.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
struct rmtabent *rep;
struct stat stb;
int lockid;
- struct in_addr addr;
- struct hostent *he;
if ((lockid = xflock(_PATH_RMTABLCK, "r")) < 0)
return NULL;
break;
}
- if (reverse_resolve &&
- inet_aton((const char *) rep->r_client, &addr) &&
- (he = gethostbyaddr(&addr, sizeof(addr), AF_INET)))
- m->ml_hostname = strdup(he->h_name);
- else
+ if (reverse_resolve) {
+ struct addrinfo *ai;
+ ai = host_pton(rep->r_client);
+ if (ai != NULL) {
+ m->ml_hostname = host_canonname(ai->ai_addr);
+ freeaddrinfo(ai);
+ }
+ }
+ if (m->ml_hostname == NULL)
m->ml_hostname = strdup(rep->r_client);
m->ml_directory = strdup(rep->r_path);