Date: Wed, 10 May 2006 11:48:13 +0800 (CST) From: Cheng-Lung Sung <clsung@FreeBSD.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/97071: [patch] add security.jail.jid sysctl Message-ID: <20060510034813.39CA828493@going04.iis.sinica.edu.tw> Resent-Message-ID: <200605100350.k4A3oE7D098937@freefall.freebsd.org>
index | next in thread | raw e-mail
>Number: 97071
>Category: kern
>Synopsis: [patch] add security.jail.jid sysctl
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: update
>Submitter-Id: current-users
>Arrival-Date: Wed May 10 03:50:14 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator: Cheng-Lung Sung
>Release: FreeBSD 6.1-STABLE i386
>Organization:
FreeBSD
>Environment:
System: FreeBSD going04.iis.sinica.edu.tw 6.1-STABLE FreeBSD 6.1-STABLE #11: Wed May 10 11:01:51 CST 2006 root@going04.iis.sinica.edu.tw:/usr/obj/usr/src/sys/GOING04 i386
>Description:
bin/89989 suggest to specify jid at jail start-up time, and I think
let users can know their jid inside jail is a good idea.
security.jail.jid can also replace security.jail.jailed, since
they all return zero in host, and > 0 in jail.
>How-To-Repeat:
sysctl security.jail.jid
>Fix:
--- sys/kern/kern_jail.c.orig Sun Nov 13 11:12:32 2005
+++ sys/kern/kern_jail.c Wed May 10 06:34:24 2006
@@ -582,3 +582,17 @@
}
SYSCTL_PROC(_security_jail, OID_AUTO, jailed, CTLTYPE_INT | CTLFLAG_RD,
NULL, 0, sysctl_jail_jailed, "I", "Process in jail?");
+
+static int
+sysctl_jail_jid(SYSCTL_HANDLER_ARGS)
+{
+ int error, jid;
+
+ if ((jid = jailed(req->td->td_ucred)))
+ jid = req->td->td_ucred->cr_prison->pr_id;
+ error = SYSCTL_OUT(req, &jid, sizeof(jid));
+
+ return (error);
+}
+SYSCTL_PROC(_security_jail, OID_AUTO, jid, CTLTYPE_INT | CTLFLAG_RD,
+ NULL, 0, sysctl_jail_jid, "I", "Jail ID");
>Release-Note:
>Audit-Trail:
>Unformatted:
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060510034813.39CA828493>
