]> git.decadent.org.uk Git - nfs-utils.git/blobdiff - utils/exportfs/exportfs.c
Make CROSSMNT distinct from NOHIDE
[nfs-utils.git] / utils / exportfs / exportfs.c
index 4c04098e1579475a5f66b5314872db308c599f41..05ace88959d221f25f80784b7adba03749ad8203 100644 (file)
@@ -45,6 +45,8 @@ main(int argc, char **argv)
 
        xlog_open("exportfs");
 
+       export_errno = 0;
+
        while ((c = getopt(argc, argv, "aio:ruv")) != EOF) {
                switch(c) {
                case 'a':
@@ -119,7 +121,7 @@ main(int argc, char **argv)
        xtab_export_write();
        xtab_mount_write();
 
-       return 0;
+       return export_errno;
 }
 
 /* we synchronise intention with reality.
@@ -206,6 +208,7 @@ exportfs(char *arg, char *options, int verbose)
                } else
                        hp = hp2;
                exp = export_find(hp, path);
+               hname = hp->h_name;
        } else {
                exp = export_lookup(hname, path, 0);
        }
@@ -330,8 +333,10 @@ dump(int verbose)
                                c = dumpopt(c, "async");
                        if (ep->e_flags & NFSEXP_GATHERED_WRITES)
                                c = dumpopt(c, "wdelay");
-                       if (ep->e_flags & NFSEXP_CROSSMNT)
+                       if (ep->e_flags & NFSEXP_NOHIDE)
                                c = dumpopt(c, "nohide");
+                       if (ep->e_flags & NFSEXP_CROSSMNT)
+                               c = dumpopt(c, "crossmnt");
                        if (ep->e_flags & NFSEXP_INSECURE_PORT)
                                c = dumpopt(c, "insecure");
                        if (ep->e_flags & NFSEXP_ROOTSQUASH)
@@ -344,6 +349,8 @@ dump(int verbose)
                                c = dumpopt(c, "no_subtree_check");
                        if (ep->e_flags & NFSEXP_NOAUTHNLM)
                                c = dumpopt(c, "insecure_locks");
+                       if (ep->e_flags & NFSEXP_FSID)
+                               c = dumpopt(c, "fsid=%d", ep->e_fsid);
                        if (ep->e_maptype == CLE_MAP_UGIDD)
                                c = dumpopt(c, "mapping=ugidd");
                        else if (ep->e_maptype == CLE_MAP_FILE)