diff options
author | Jeff Layton <jlayton@redhat.com> | 2007-09-27 06:53:58 -0400 |
---|---|---|
committer | Neil Brown <neilb@suse.de> | 2007-09-28 11:39:57 +1000 |
commit | 180238a295c1a8127953c96f0b462688d0f57a09 (patch) | |
tree | 14c543b537a70a4ae0d1ed5d0cf3d9b88bad0aa0 /utils/mountd/cache.c | |
parent | 4c337e2131123c339bc4921779b57b69b77be2fd (diff) | |
download | nfs-utils-180238a295c1a8127953c96f0b462688d0f57a09.tar.gz nfs-utils-180238a295c1a8127953c96f0b462688d0f57a09.tar.xz nfs-utils-180238a295c1a8127953c96f0b462688d0f57a09.zip |
rpc.mountd: create client_resolve and change client_compose to take a hostent arg
This moves the resolution of IP address to hostent into a helper function
and has other functions call it. Having client_compose take a hostent arg
allows us to avoid an extra hostname lookup in the auth_authenticate
codepath as well. Instead of redoing this lookup in client_compose, we can
simply reuse the hostent that was already generated in auth_authenticate.
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Acked-by: Steve Dickson <steved@redhat.com>
Signed-off-by: Neil Brown <neilb@suse.de>
Diffstat (limited to 'utils/mountd/cache.c')
-rw-r--r-- | utils/mountd/cache.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/utils/mountd/cache.c b/utils/mountd/cache.c index fedc0bf..ef460f7 100644 --- a/utils/mountd/cache.c +++ b/utils/mountd/cache.c @@ -76,6 +76,7 @@ void auth_unix_ip(FILE *f) char ipaddr[20]; char *client; struct in_addr addr; + struct hostent *he; if (readline(fileno(f), &lbuf, &lbuflen) != 1) return; @@ -94,7 +95,8 @@ void auth_unix_ip(FILE *f) auth_reload(); /* addr is a valid, interesting address, find the domain name... */ - client = client_compose(addr); + he = client_resolve(addr); + client = client_compose(he); qword_print(f, "nfsd"); @@ -105,7 +107,7 @@ void auth_unix_ip(FILE *f) qword_eol(f); if (client) free(client); - + free(he); } void auth_unix_gid(FILE *f) |