summaryrefslogtreecommitdiff
path: root/usr/src/lib/libshare/nfs/libshare_nfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/lib/libshare/nfs/libshare_nfs.c')
-rw-r--r--usr/src/lib/libshare/nfs/libshare_nfs.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/usr/src/lib/libshare/nfs/libshare_nfs.c b/usr/src/lib/libshare/nfs/libshare_nfs.c
index dc6e5f61d4..b71df49804 100644
--- a/usr/src/lib/libshare/nfs/libshare_nfs.c
+++ b/usr/src/lib/libshare/nfs/libshare_nfs.c
@@ -161,8 +161,10 @@ struct option_defs optdefs[] = {
{SHOPT_ROOT_MAPPING, OPT_ROOT_MAPPING, OPT_TYPE_USER},
#define OPT_CHARSET_MAP 16
{"", OPT_CHARSET_MAP, OPT_TYPE_ACCLIST},
+#define OPT_NOACLFAB 17
+ {SHOPT_NOACLFAB, OPT_NOACLFAB, OPT_TYPE_BOOLEAN},
#ifdef VOLATILE_FH_TEST /* XXX added for testing volatile fh's only */
-#define OPT_VOLFH 17
+#define OPT_VOLFH 18
{SHOPT_VOLFH, OPT_VOLFH},
#endif /* VOLATILE_FH_TEST */
NULL
@@ -1001,6 +1003,13 @@ fill_export_from_optionset(struct exportdata *export, sa_optionset_t optionset)
*/
export->ex_flags |= EX_CHARMAP;
break;
+ case OPT_NOACLFAB:
+ if (value != NULL && (strcasecmp(value, "true") == 0 ||
+ strcmp(value, "1") == 0))
+ export->ex_flags |= EX_NOACLFAB;
+ else
+ export->ex_flags &= ~EX_NOACLFAB;
+ break;
default:
/* have a syntactic error */
(void) printf(dgettext(TEXT_DOMAIN,