summaryrefslogtreecommitdiffstats
path: root/utils/mountd/cache.c
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@redhat.com>2012-05-03 15:01:20 -0400
committerSteve Dickson <steved@redhat.com>2012-05-03 15:12:09 -0400
commit236025253c6ec534cd816390464435ec18c499f7 (patch)
tree78980950e3def72eef76c9f2313288397e8a7e18 /utils/mountd/cache.c
parent005c49a063544b4005b5b7c3c28ed48c197f66ac (diff)
downloadnfs-utils-236025253c6ec534cd816390464435ec18c499f7.tar.gz
nfs-utils-236025253c6ec534cd816390464435ec18c499f7.tar.xz
nfs-utils-236025253c6ec534cd816390464435ec18c499f7.zip
mountd: add trivial helpers for client-matching
From: "J. Bruce Fields" <bfields@redhat.com> Pull out a tiny bit of common logic from three functions. Possibly minor overkill, but simplifies the next patch. Signed-off-by: J. Bruce Fields <bfields@redhat.com> Signed-off-by: Steve Dickson <steved@redhat.com>
Diffstat (limited to 'utils/mountd/cache.c')
-rw-r--r--utils/mountd/cache.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/utils/mountd/cache.c b/utils/mountd/cache.c
index c5f8093..be5198e 100644
--- a/utils/mountd/cache.c
+++ b/utils/mountd/cache.c
@@ -587,7 +587,7 @@ static void nfsd_fh(FILE *f)
next_exp = exp->m_next;
}
- if (!use_ipaddr && !client_member(dom, exp->m_client->m_hostname))
+ if (!use_ipaddr && !namelist_client_matches(exp, dom))
continue;
if (exp->m_export.e_mountpoint &&
!is_mountpoint(exp->m_export.e_mountpoint[0]?
@@ -597,7 +597,7 @@ static void nfsd_fh(FILE *f)
if (!match_fsid(&parsed, exp, path))
continue;
- if (use_ipaddr && !client_check(exp->m_client, ai))
+ if (use_ipaddr && !ipaddr_client_matches(exp, ai))
continue;
if (!found || subexport(&exp->m_export, found)) {
found = &exp->m_export;
@@ -760,14 +760,6 @@ static int path_matches(nfs_export *exp, char *path)
}
static int
-client_matches(nfs_export *exp, char *dom, struct addrinfo *ai)
-{
- if (use_ipaddr)
- return client_check(exp->m_client, ai);
- return client_member(dom, exp->m_client->m_hostname);
-}
-
-static int
export_matches(nfs_export *exp, char *dom, char *path, struct addrinfo *ai)
{
return path_matches(exp, path) && client_matches(exp, dom, ai);