X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=blobdiff_plain;f=support%2Fnfs%2Fexports.c;h=3b34d4ee55e1f420a6923fada953aa15a30d51b3;hp=078c806f3c4c672c8b94d4fef49e7b30ae48a68e;hb=4b5c4d21704d0767747c71b22f0e91efe59c07d6;hpb=a24504ade282e4f7e2dec379368a2fd41680f388 diff --git a/support/nfs/exports.c b/support/nfs/exports.c index 078c806..3b34d4e 100644 --- a/support/nfs/exports.c +++ b/support/nfs/exports.c @@ -151,6 +151,8 @@ putexportent(struct exportent *ep) "" : "no_"); fprintf(fp, "%ssubtree_check,", (ep->e_flags & NFSEXP_NOSUBTREECHECK)? "no_" : ""); + fprintf(fp, "%ssecure_locks,", (ep->e_flags & NFSEXP_NOAUTHNLM)? + "in" : ""); fprintf(fp, "mapping="); switch (ep->e_maptype) { @@ -307,6 +309,14 @@ parseopts(char *cp, struct exportent *ep) ep->e_flags &= ~NFSEXP_NOSUBTREECHECK; else if (strcmp(opt, "no_subtree_check") == 0) ep->e_flags |= NFSEXP_NOSUBTREECHECK; + else if (strcmp(opt, "auth_nlm") == 0) + ep->e_flags &= ~NFSEXP_NOAUTHNLM; + else if (strcmp(opt, "no_auth_nlm") == 0) + ep->e_flags |= NFSEXP_NOAUTHNLM; + else if (strcmp(opt, "secure_locks") == 0) + ep->e_flags &= ~NFSEXP_NOAUTHNLM; + else if (strcmp(opt, "insecure_locks") == 0) + ep->e_flags |= NFSEXP_NOAUTHNLM; else if (strncmp(opt, "mapping=", 8) == 0) ep->e_maptype = parsemaptype(opt+8); else if (strcmp(opt, "map_identity") == 0) /* old style */ @@ -384,8 +394,8 @@ parsesquash(char *list, int **idp, int *lenp, char **ep) cp++; } while(1); - if (*cp == ',') *ep = cp+1; - + if (**ep == ',') (*ep)++; + *lenp = len; *idp = id; return 1;