summaryrefslogtreecommitdiffstats
path: root/utils/statd/callback.c
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2010-01-14 12:23:19 -0500
committerSteve Dickson <steved@redhat.com>2010-01-15 14:55:51 -0500
commitcbd3a131e5c02bbd7b92a72b3ac467d71cfee1c4 (patch)
tree026b19a8311b83c5bf9a16edd7299020ff528a07 /utils/statd/callback.c
parentf0d3a4bedccca7cce48296757bc1c8bd59b80828 (diff)
downloadnfs-utils-cbd3a131e5c02bbd7b92a72b3ac467d71cfee1c4.tar.gz
nfs-utils-cbd3a131e5c02bbd7b92a72b3ac467d71cfee1c4.tar.xz
nfs-utils-cbd3a131e5c02bbd7b92a72b3ac467d71cfee1c4.zip
statd: Introduce statd version of matchhostname()
For the near future, statd will support IPv6 but exportfs will not. Thus statd will need a version of matchhostname() that can deal properly with IPv6 remotes. To reduce the risk of breaking exportfs, introduce a separate version of matchhostname() for statd to use while exportfs continues to use the existing AF_INET-only implementation. Note that statd will never send matchhostname() a hostname string containing export wildcards, so is_hostame() is not needed in the statd version of matchhostname(). This saves some computational expense when comparing hostnames. A separate statd-specific implementation of matchhostname() allows some flexibility in the long term, as well. We might want to enrich the matching heuristics of our SM_NOTIFY, for example, or replace them entirely with a heuristic that is not dependent upon DNS. Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Diffstat (limited to 'utils/statd/callback.c')
-rw-r--r--utils/statd/callback.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/utils/statd/callback.c b/utils/statd/callback.c
index 2f98aeb..b1acd15 100644
--- a/utils/statd/callback.c
+++ b/utils/statd/callback.c
@@ -13,7 +13,6 @@
#include <arpa/inet.h>
#include "rpcmisc.h"
-#include "misc.h"
#include "statd.h"
#include "notlist.h"
@@ -52,8 +51,8 @@ sm_notify_1_svc(struct stat_chge *argp, struct svc_req *rqstp)
*/
for (lp = rtnl ; lp ; lp = lp->next)
if (NL_STATE(lp) != argp->state &&
- (matchhostname(argp->mon_name, lp->dns_name) ||
- matchhostname(ip_addr, lp->dns_name))) {
+ (statd_matchhostname(argp->mon_name, lp->dns_name) ||
+ statd_matchhostname(ip_addr, lp->dns_name))) {
NL_STATE(lp) = argp->state;
call = nlist_clone(lp);
nlist_insert(&notify, call);