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]"
