--- linux-2.4/fs/nfsd/vfs.c.diff 2003-07-31 10:35:27.000000000 -0400 +++ linux-2.4/fs/nfsd/vfs.c 2003-08-01 08:32:06.000000000 -0400 @@ -82,7 +82,7 @@ static struct raparms * raparm_cache; * N.B. After this call _both_ fhp and resfh need an fh_put * * If the lookup would cross a mountpoint, and the mounted filesystem - * is exported to the client with NFSEXP_CROSSMNT, then the lookup is + * is exported to the client with NFSEXP_NOHIDE, then the lookup is * accepted as it stands and the mounted directory is * returned. Otherwise the covered directory is returned. * NOTE: this mountpoint crossing is not supported properly by all @@ -116,7 +116,7 @@ nfsd_lookup(struct svc_rqst *rqstp, stru dentry = dget(dparent); else if (dparent != exp->ex_dentry) dentry = dget(dparent->d_parent); - else if (!EX_CROSSMNT(exp)) + else if (!EX_NOHIDE(exp)) dentry = dget(dparent); /* .. == . just like at / */ else { /* checking mountpoint crossing is very different when stepping up */ --- linux-2.4/fs/nfsd/export.c.diff 2003-07-31 10:35:27.000000000 -0400 +++ linux-2.4/fs/nfsd/export.c 2003-08-01 08:27:27.000000000 -0400 @@ -640,7 +640,7 @@ struct flags { { NFSEXP_UIDMAP, {"uidmap", ""}}, { NFSEXP_KERBEROS, { "kerberos", ""}}, { NFSEXP_SUNSECURE, { "sunsecure", ""}}, - { NFSEXP_CROSSMNT, {"nohide", ""}}, + { NFSEXP_NOHIDE, {"nohide", ""}}, { NFSEXP_NOSUBTREECHECK, {"no_subtree_check", ""}}, { NFSEXP_NOAUTHNLM, {"insecure_locks", ""}}, #ifdef MSNFS --- linux-2.4/include/linux/nfsd/export.h.diff 2003-07-31 10:36:23.000000000 -0400 +++ linux-2.4/include/linux/nfsd/export.h 2003-08-01 08:31:15.000000000 -0400 @@ -35,7 +35,7 @@ #define NFSEXP_UIDMAP 0x0040 #define NFSEXP_KERBEROS 0x0080 /* not available */ #define NFSEXP_SUNSECURE 0x0100 -#define NFSEXP_CROSSMNT 0x0200 +#define NFSEXP_NOHIDE 0x0200 #define NFSEXP_NOSUBTREECHECK 0x0400 #define NFSEXP_NOAUTHNLM 0x0800 /* Don't authenticate NLM requests - just trust */ #define NFSEXP_MSNFS 0x1000 /* do silly things that MS clients expect */ @@ -80,7 +80,7 @@ struct svc_export { #define EX_SECURE(exp) (!((exp)->ex_flags & NFSEXP_INSECURE_PORT)) #define EX_ISSYNC(exp) (!((exp)->ex_flags & NFSEXP_ASYNC)) #define EX_RDONLY(exp) ((exp)->ex_flags & NFSEXP_READONLY) -#define EX_CROSSMNT(exp) ((exp)->ex_flags & NFSEXP_CROSSMNT) +#define EX_NOHIDE(exp) ((exp)->ex_flags & NFSEXP_NOHIDE) #define EX_SUNSECURE(exp) ((exp)->ex_flags & NFSEXP_SUNSECURE) #define EX_WGATHER(exp) ((exp)->ex_flags & NFSEXP_GATHERED_WRITES)