Jamie Gritton <[email protected]> writes:
> Index: kern/vfs_export.c
> ===================================================================
> --- kern/vfs_export.c (revision 197506)
> +++ kern/vfs_export.c (working copy)
> @@ -122,6 +122,8 @@
>               np->netc_anon->cr_uid = argp->ex_anon.cr_uid;
>               crsetgroups(np->netc_anon, argp->ex_anon.cr_ngroups,
>                   argp->ex_anon.cr_groups);
> +             np->netc_anon->cr_prison = &prison0;
> +             prison_hold(np->netc_anon->cr_prison);
>               np->netc_numsecflavors = argp->ex_numsecflavors;
>               bcopy(argp->ex_secflavors, np->netc_secflavors,
>                   sizeof(np->netc_secflavors));

You need to #include <sys/jail.h> for prison0...  See attached patch.

DES
-- 
Dag-Erling Smørgrav - [email protected]

Index: sys/kern/vfs_export.c
===================================================================
--- sys/kern/vfs_export.c	(revision 197539)
+++ sys/kern/vfs_export.c	(working copy)
@@ -40,6 +40,7 @@
 #include <sys/param.h>
 #include <sys/dirent.h>
 #include <sys/domain.h>
+#include <sys/jail.h>
 #include <sys/kernel.h>
 #include <sys/lock.h>
 #include <sys/malloc.h>
@@ -122,6 +123,8 @@
 		np->netc_anon->cr_uid = argp->ex_anon.cr_uid;
 		crsetgroups(np->netc_anon, argp->ex_anon.cr_ngroups,
 		    argp->ex_anon.cr_groups);
+		np->netc_anon->cr_prison = &prison0;
+		prison_hold(np->netc_anon->cr_prison);
 		np->netc_numsecflavors = argp->ex_numsecflavors;
 		bcopy(argp->ex_secflavors, np->netc_secflavors,
 		    sizeof(np->netc_secflavors));
@@ -206,6 +209,8 @@
 	np->netc_anon->cr_uid = argp->ex_anon.cr_uid;
 	crsetgroups(np->netc_anon, argp->ex_anon.cr_ngroups,
 	    np->netc_anon->cr_groups);
+	np->netc_anon->cr_prison = &prison0;
+	prison_hold(np->netc_anon->cr_prison);
 	np->netc_numsecflavors = argp->ex_numsecflavors;
 	bcopy(argp->ex_secflavors, np->netc_secflavors,
 	    sizeof(np->netc_secflavors));
Index: sys/rpc/rpcsec_gss/svc_rpcsec_gss.c
===================================================================
--- sys/rpc/rpcsec_gss/svc_rpcsec_gss.c	(revision 197539)
+++ sys/rpc/rpcsec_gss/svc_rpcsec_gss.c	(working copy)
@@ -449,6 +449,8 @@
 	cr->cr_uid = cr->cr_ruid = cr->cr_svuid = uc->uid;
 	cr->cr_rgid = cr->cr_svgid = uc->gid;
 	crsetgroups(cr, uc->gidlen, uc->gidlist);
+	cr->cr_prison = &prison0;
+	prison_hold(cr->cr_prison);
 	*crp = crhold(cr);
 
 	return (TRUE);
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[email protected]"

Reply via email to