svn commit: r359222 - projects/nfs-over-tls/sys/sys

Rick Macklem rmacklem at FreeBSD.org
Sun Mar 22 18:41:52 UTC 2020


Author: rmacklem
Date: Sun Mar 22 18:41:51 2020
New Revision: 359222
URL: https://svnweb.freebsd.org/changeset/base/359222

Log:
  Hack around 32bit flags in the export_args structure by (re)defining
  the export flags under MNTEX_ instead of MNT_.
  It retains the bits already used, but allows others that are MNT_xxx
  bits not used in export_args to be defined for export_args.
  This might be a rasonable workaround?

Modified:
  projects/nfs-over-tls/sys/sys/mount.h

Modified: projects/nfs-over-tls/sys/sys/mount.h
==============================================================================
--- projects/nfs-over-tls/sys/sys/mount.h	Sun Mar 22 18:35:11 2020	(r359221)
+++ projects/nfs-over-tls/sys/sys/mount.h	Sun Mar 22 18:41:51 2020	(r359222)
@@ -361,6 +361,22 @@ void          __mnt_vnode_markerfree_lazy(struct vnode
 			MNT_AUTOMOUNTED | MNT_UNTRUSTED)
 
 /*
+ * Export flags that are only set/used in the ex_flags field and
+ * not in mnt_flag.  Since some are defined as MNT_EXxxx above,
+ * these ones are just redefined here.
+ * MNT_EXPORTED must remain and be set/cleared in mnt_flag.
+ * The others defined as MNT_xxx should probably remain for
+ * compatibility with old versions of mountd, etc.
+ */
+#define	MNTEX_TLS		0x0000000000000001ULL	/* TLS RPC required */
+#define	MNTEX_TLSCERT		0x0000000000000002ULL	/* verified certificate req */
+#define	MNTEX_EXPORTED		MNT_EXPORTED		/* filesystem exported */
+#define	MNTEX_RDONLY		MNT_EXRDONLY		/* exported read only */
+#define	MNTEX_EXPORTANON	MNT_EXPORTANON		/* anon uid mapping for all */
+#define	MNTEX_KERB		MNT_EXKERB		/* exported with Kerberos */
+#define	MNTEX_PUBLIC		MNT_EXPUBLIC		/* public export (WebNFS) */
+
+/*
  * External filesystem command modifier flags.
  * Unmount can use the MNT_FORCE flag.
  * XXX: These are not STATES and really should be somewhere else.


More information about the svn-src-projects mailing list