summaryrefslogtreecommitdiffstats
path: root/support
diff options
context:
space:
mode:
authorSteve Dickson <steved@redhat.com>2009-12-01 07:20:43 -0500
committerSteve Dickson <steved@redhat.com>2010-01-13 15:39:14 -0500
commitb25694320f2bdd79de82f2003209b8229eafff36 (patch)
tree1bf73d05a1b538e63713345ee01dafb5bf89f87e /support
parentde108c531e29ba936a68a6efb99095ad6d6cec8f (diff)
downloadnfs-utils-b25694320f2bdd79de82f2003209b8229eafff36.tar.gz
nfs-utils-b25694320f2bdd79de82f2003209b8229eafff36.tar.xz
nfs-utils-b25694320f2bdd79de82f2003209b8229eafff36.zip
exports: turn on pseudo exports
If a pseudo root is not defined in the export file, the v4root_needed global variable will be set, signaling v4root_set() create the dynamic pseudo root. Signed-off-by: Steve Dickson <steved@redhat.com>
Diffstat (limited to 'support')
-rw-r--r--support/export/xtab.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/support/export/xtab.c b/support/export/xtab.c
index 3b1dcce..2a43193 100644
--- a/support/export/xtab.c
+++ b/support/export/xtab.c
@@ -19,7 +19,9 @@
#include "exportfs.h"
#include "xio.h"
#include "xlog.h"
+#include "v4root.h"
+int v4root_needed;
static void cond_rename(char *newfile, char *oldfile);
static int
@@ -36,6 +38,8 @@ xtab_read(char *xtab, char *lockfn, int is_export)
if ((lockid = xflock(lockfn, "r")) < 0)
return 0;
setexportent(xtab, "r");
+ if (is_export == 1)
+ v4root_needed = 1;
while ((xp = getexportent(is_export==0, 0)) != NULL) {
if (!(exp = export_lookup(xp->e_hostname, xp->e_path, is_export != 1)) &&
!(exp = export_create(xp, is_export!=1))) {
@@ -48,6 +52,8 @@ xtab_read(char *xtab, char *lockfn, int is_export)
case 1:
exp->m_xtabent = 1;
exp->m_mayexport = 1;
+ if ((xp->e_flags & NFSEXP_FSID) && xp->e_fsid == 0)
+ v4root_needed = 0;
break;
case 2:
exp->m_exported = -1;/* may be exported */