diff options
author | cperciva <cperciva@FreeBSD.org> | 2010-05-27 03:15:04 +0000 |
---|---|---|
committer | cperciva <cperciva@FreeBSD.org> | 2010-05-27 03:15:04 +0000 |
commit | c8612ee587015f9d8700cd66f976c478b90c96eb (patch) | |
tree | bb411589baeeda79e1125d6ff01c0e7a1f95d350 /usr.sbin/jail/jail.c | |
parent | 24a8b9692fb6bf640d0b0d36774ebc871ad94410 (diff) | |
download | FreeBSD-src-c8612ee587015f9d8700cd66f976c478b90c96eb.zip FreeBSD-src-c8612ee587015f9d8700cd66f976c478b90c96eb.tar.gz |
Change the current working directory to be inside the jail created by
the jail(8) command. [10:04]
Fix a one-NUL-byte buffer overflow in libopie. [10:05]
Correctly sanity-check a buffer length in nfs mount. [10:06]
Approved by: so (cperciva)
Approved by: re (kensmith)
Security: FreeBSD-SA-10:04.jail
Security: FreeBSD-SA-10:05.opie
Security: FreeBSD-SA-10:06.nfsclient
Diffstat (limited to 'usr.sbin/jail/jail.c')
-rw-r--r-- | usr.sbin/jail/jail.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/usr.sbin/jail/jail.c b/usr.sbin/jail/jail.c index ca87796..0722bfd 100644 --- a/usr.sbin/jail/jail.c +++ b/usr.sbin/jail/jail.c @@ -511,6 +511,10 @@ set_param(const char *name, char *value) *value++ = '\0'; } + /* jail_set won't chdir along with its chroot, so do it here. */ + if (!strcmp(name, "path") && chdir(value) < 0) + err(1, "chdir: %s", value); + /* Check for repeat parameters */ for (i = 0; i < nparams; i++) if (!strcmp(name, params[i].jp_name)) { |