walters / rpms / nfs-utils

Forked from rpms/nfs-utils 6 years ago
Clone
Blob Blame History Raw
diff -up nfs-utils-1.2.0/support/include/nfslib.h.orig nfs-utils-1.2.0/support/include/nfslib.h
--- nfs-utils-1.2.0/support/include/nfslib.h.orig	2009-08-27 11:56:15.475380000 -0400
+++ nfs-utils-1.2.0/support/include/nfslib.h	2009-08-27 11:56:32.497258000 -0400
@@ -90,6 +90,7 @@ struct exportent {
 	char *		e_uuid;
 	void *		e_v4root;
 	struct sec_entry e_secinfo[SECFLAVOR_COUNT+1];
+	int             e_pnfs;
 };
 
 struct rmtabent {
diff -up nfs-utils-1.2.0/support/nfs/exports.c.orig nfs-utils-1.2.0/support/nfs/exports.c
--- nfs-utils-1.2.0/support/nfs/exports.c.orig	2009-08-27 11:57:57.945647000 -0400
+++ nfs-utils-1.2.0/support/nfs/exports.c	2009-08-27 11:59:22.231103000 -0400
@@ -293,6 +293,8 @@ putexportent(struct exportent *ep)
 	}
 	fprintf(fp, "anonuid=%d,anongid=%d", ep->e_anonuid, ep->e_anongid);
 	secinfo_show(fp, ep);
+	if (ep->e_pnfs)
+		fprintf(fp, ",pnfs");
 	fprintf(fp, ")\n");
 }
 
@@ -343,6 +345,7 @@ mkexportent(char *hname, char *path, cha
 	ee.e_fslocmethod = FSLOC_NONE;
 	ee.e_fslocdata = NULL;
 	ee.e_secinfo[0].flav = NULL;
+	ee.e_pnfs = 0;
 	ee.e_nsquids = 0;
 	ee.e_nsqgids = 0;
 	ee.e_uuid = NULL;
@@ -552,6 +555,8 @@ parseopts(char *cp, struct exportent *ep
 			ep->e_flags &= ~NFSEXP_NOACL;
 		else if (strcmp(opt, "no_acl") == 0)
 			ep->e_flags |= NFSEXP_NOACL;
+		else if (strcmp(opt, "pnfs") == 0)
+			ep->e_pnfs = 1;
 		else if (strncmp(opt, "anonuid=", 8) == 0) {
 			char *oe;
 			ep->e_anonuid = strtol(opt+8, &oe, 10);
diff -up nfs-utils-1.2.0/utils/exportfs/exportfs.c.orig nfs-utils-1.2.0/utils/exportfs/exportfs.c
--- nfs-utils-1.2.0/utils/exportfs/exportfs.c.orig	2009-06-02 10:43:05.000000000 -0400
+++ nfs-utils-1.2.0/utils/exportfs/exportfs.c	2009-08-27 12:00:05.139293000 -0400
@@ -523,6 +523,8 @@ dump(int verbose)
 #endif
 			}
 			secinfo_show(stdout, ep);
+			if (ep->e_pnfs)
+				c = dumpopt(c, ",pnfs");
 			printf("%c\n", (c != '(')? ')' : ' ');
 		}
 	}
diff -up nfs-utils-1.2.0/utils/mountd/cache.c.orig nfs-utils-1.2.0/utils/mountd/cache.c
--- nfs-utils-1.2.0/utils/mountd/cache.c.orig	2009-08-27 11:54:17.895168000 -0400
+++ nfs-utils-1.2.0/utils/mountd/cache.c	2009-08-27 12:01:40.547995000 -0400
@@ -609,6 +609,8 @@ static int dump_to_cache(FILE *f, char *
 		qword_printint(f, exp->e_anonuid);
 		qword_printint(f, exp->e_anongid);
 		qword_printint(f, exp->e_fsid);
+		if (exp->e_pnfs == 1)
+			qword_print(f, "pnfs");
 		write_fsloc(f, exp, path);
 		write_secinfo(f, exp, flag_mask);
  		if (exp->e_uuid == NULL || different_fs) {