platform/upstream/nsjail.git
7 years agosubproc: use SIG_SETMASK to unblock all signals
Robert Swiecki [Fri, 20 Oct 2017 13:56:32 +0000 (15:56 +0200)]
subproc: use SIG_SETMASK to unblock all signals

7 years agoconfigs/busybox: indicate that the busybox must be statically compiled
Robert Swiecki [Fri, 20 Oct 2017 12:46:43 +0000 (14:46 +0200)]
configs/busybox: indicate that the busybox must be statically compiled

7 years agoMerge branch 'master' of ssh://github.com/google/nsjail
Robert Swiecki [Fri, 20 Oct 2017 12:44:07 +0000 (14:44 +0200)]
Merge branch 'master' of ssh://github.com/google/nsjail

7 years agosubproc: unblock all signals before executing a process
Robert Swiecki [Fri, 20 Oct 2017 12:43:56 +0000 (14:43 +0200)]
subproc: unblock all signals before executing a process

7 years agomount: use NS_DIR_TRUE instead of true in cmdline
Robert Swiecki [Fri, 20 Oct 2017 11:02:15 +0000 (13:02 +0200)]
mount: use NS_DIR_TRUE instead of true in cmdline

7 years agomount: try creating starting tmpfs's in /run/user/<uid> first
Robert Swiecki [Thu, 19 Oct 2017 20:39:37 +0000 (22:39 +0200)]
mount: try creating starting tmpfs's in /run/user/<uid> first

7 years agomount: merge string line in log
Robert Swiecki [Thu, 19 Oct 2017 13:58:57 +0000 (15:58 +0200)]
mount: merge string line in log

7 years agomount: missing 'return false' if the mount fails
Robert Swiecki [Thu, 19 Oct 2017 13:46:31 +0000 (15:46 +0200)]
mount: missing 'return false' if the mount fails

7 years agonsjail: use CTRL+\ (SIGQUIT) to display active sessions
Robert Swiecki [Thu, 19 Oct 2017 13:25:20 +0000 (15:25 +0200)]
nsjail: use CTRL+\ (SIGQUIT) to display active sessions

7 years agouse O_CLOEXEC with utilWriteBufToFile wherever possible
Robert Swiecki [Thu, 19 Oct 2017 12:56:45 +0000 (14:56 +0200)]
use O_CLOEXEC with utilWriteBufToFile wherever possible

7 years agosubproc: comments around new proc stack
Robert Swiecki [Thu, 19 Oct 2017 11:11:41 +0000 (13:11 +0200)]
subproc: comments around new proc stack

7 years agosubproc: typos
Robert Swiecki [Thu, 19 Oct 2017 00:32:55 +0000 (02:32 +0200)]
subproc: typos

7 years agomake indent
Robert Swiecki [Thu, 19 Oct 2017 00:24:34 +0000 (02:24 +0200)]
make indent

7 years agoMerge pull request #56 from VCTLabs/stack-alignment
robertswiecki [Thu, 19 Oct 2017 00:22:08 +0000 (02:22 +0200)]
Merge pull request #56 from VCTLabs/stack-alignment

align stack for child process

7 years agouser: avoid calling setresgid twice on machines that support setres(g|u)id32 2.1
Robert Swiecki [Thu, 19 Oct 2017 00:14:58 +0000 (02:14 +0200)]
user: avoid calling setresgid twice on machines that support setres(g|u)id32

7 years agoMerge pull request #55 from jvvv/master
robertswiecki [Wed, 18 Oct 2017 21:32:13 +0000 (23:32 +0200)]
Merge pull request #55 from jvvv/master

manpage: add --execute_fd option

7 years agomanpage: add --execute_fd option
John Vogel [Wed, 18 Oct 2017 18:48:24 +0000 (14:48 -0400)]
manpage: add --execute_fd option

7 years agocmdline: typo
Robert Swiecki [Wed, 18 Oct 2017 16:02:23 +0000 (18:02 +0200)]
cmdline: typo

7 years agocmdline: add option --execute_fd and support for it, in order to use execveat()
Robert Swiecki [Wed, 18 Oct 2017 15:57:52 +0000 (17:57 +0200)]
cmdline: add option --execute_fd and support for it, in order to use execveat()

7 years agoNo need to use '== true'
Robert Swiecki [Wed, 18 Oct 2017 13:41:16 +0000 (15:41 +0200)]
No need to use '== true'

7 years agoNo need to add custom flags when remounting RO
Robert Swiecki [Wed, 18 Oct 2017 13:41:02 +0000 (15:41 +0200)]
No need to add custom flags when remounting RO

7 years agomount: mountFlagsToStr cannot be repeated as it uses TLS buffer
Robert Swiecki [Wed, 18 Oct 2017 13:31:15 +0000 (15:31 +0200)]
mount: mountFlagsToStr cannot be repeated as it uses TLS buffer

7 years agosimplify includes, remove unneeded, add needed
Robert Swiecki [Wed, 18 Oct 2017 12:46:17 +0000 (14:46 +0200)]
simplify includes, remove unneeded, add needed

7 years agoMove struct nsjail_t definition to nsjail.h and leave only macros in common.h
Robert Swiecki [Wed, 18 Oct 2017 12:27:34 +0000 (14:27 +0200)]
Move struct nsjail_t definition to nsjail.h and leave only macros in common.h

7 years agosubproc: clear signal handlers in the child process
Robert Swiecki [Wed, 18 Oct 2017 10:33:24 +0000 (12:33 +0200)]
subproc: clear signal handlers in the child process

7 years agoMerge pull request #54 from VCTLabs/compat-3.x-kernel
robertswiecki [Tue, 17 Oct 2017 13:40:48 +0000 (15:40 +0200)]
Merge pull request #54 from VCTLabs/compat-3.x-kernel

Revert "caps: define CAP_AUDIT_READ if not defined"

7 years agoMakefile: add columnt limit to the indent
Robert Swiecki [Tue, 17 Oct 2017 13:22:23 +0000 (15:22 +0200)]
Makefile: add columnt limit to the indent

7 years agouser: use setresuid32 where available first (on some 32bit platforms:
Robert Swiecki [Tue, 17 Oct 2017 13:16:27 +0000 (15:16 +0200)]
user: use setresuid32 where available first (on some 32bit platforms:

7 years agoalign stack for child process
Ron Lockwood-Childs [Tue, 17 Oct 2017 09:22:58 +0000 (02:22 -0700)]
align stack for child process

Fixes "bus error" crashes on aarch64 caused by alignment faults.

On aarch64, the stack pointer needs to be 16-byte aligned; use gcc
builtin macro __BIGGEST_ALIGNMENT__ to specify a stack alignment
suitable for each platform.

7 years agoRevert "caps: define CAP_AUDIT_READ if not defined"
Ron Lockwood-Childs [Mon, 16 Oct 2017 21:01:10 +0000 (14:01 -0700)]
Revert "caps: define CAP_AUDIT_READ if not defined"

Restore compatibility with 3.x kernels by not requiring CAP_AUDIT_READ
if not defined in kernel header file

This reverts commit 7820553cb9296b5f1a3137153948db45309aa6b1.

Conflicts:
caps.c
contain.h

7 years agonsjail: add missing commans in nested structs and make indent
Robert Swiecki [Mon, 16 Oct 2017 13:31:14 +0000 (15:31 +0200)]
nsjail: add missing commans in nested structs and make indent

7 years agouser: remove static from idx vars, it causes crash after many iterations of nsjail 2.0
Robert Swiecki [Mon, 16 Oct 2017 13:19:07 +0000 (15:19 +0200)]
user: remove static from idx vars, it causes crash after many iterations of nsjail

7 years agoMerge pull request #51 from jvvv/master
robertswiecki [Thu, 12 Oct 2017 12:11:45 +0000 (14:11 +0200)]
Merge pull request #51 from jvvv/master

manpage: update for recent option changes

7 years agomanpage: update for recent option changes
John Vogel [Thu, 12 Oct 2017 06:53:10 +0000 (02:53 -0400)]
manpage: update for recent option changes

Add --proc_path and --proc_rw options.
Also clean up --mode|-M option layout.

7 years agonet: prettier logging in bind 1.9
Robert Swiecki [Wed, 11 Oct 2017 13:43:59 +0000 (15:43 +0200)]
net: prettier logging in bind

7 years agocmdline: better --rw description
Robert Swiecki [Wed, 11 Oct 2017 00:16:14 +0000 (02:16 +0200)]
cmdline: better --rw description

7 years agocmdline: add --proc_path and --proc_rw options
Robert Swiecki [Wed, 11 Oct 2017 00:10:52 +0000 (02:10 +0200)]
cmdline: add --proc_path and --proc_rw options

7 years agomove VALSTR_STRUCT to common.h
Robert Swiecki [Sun, 8 Oct 2017 21:06:40 +0000 (23:06 +0200)]
move VALSTR_STRUCT to common.h

7 years agoallow for indentation of more structures (now with clang-format)
Robert Swiecki [Sun, 8 Oct 2017 21:03:02 +0000 (23:03 +0200)]
allow for indentation of more structures (now with clang-format)

7 years agomake indent
Robert Swiecki [Sun, 8 Oct 2017 21:00:45 +0000 (23:00 +0200)]
make indent

7 years agoswitch indent to clang-format completely
Robert Swiecki [Sun, 8 Oct 2017 20:52:52 +0000 (22:52 +0200)]
switch indent to clang-format completely

7 years agoconfig.proto: reflow numbering of fields
Robert Swiecki [Sun, 8 Oct 2017 20:50:06 +0000 (22:50 +0200)]
config.proto: reflow numbering of fields

7 years agomount: make mountIsDir static
Robert Swiecki [Sun, 8 Oct 2017 13:17:57 +0000 (15:17 +0200)]
mount: make mountIsDir static

7 years agosubproc: print syscall number as decimal
Robert Swiecki [Sun, 8 Oct 2017 13:02:41 +0000 (15:02 +0200)]
subproc: print syscall number as decimal

7 years agocmdline: missing 'soft'/'hard' variants for RLIMIT_STACK in usage()
Robert Swiecki [Sun, 8 Oct 2017 11:00:37 +0000 (13:00 +0200)]
cmdline: missing 'soft'/'hard' variants for RLIMIT_STACK in usage()

7 years agoMerge branch 'master' of ssh://github.com/google/nsjail
Robert Swiecki [Sun, 8 Oct 2017 10:57:51 +0000 (12:57 +0200)]
Merge branch 'master' of ssh://github.com/google/nsjail

7 years agocmdline: missing comparison in cmdlineParseRLimit()
Robert Swiecki [Sun, 8 Oct 2017 10:57:43 +0000 (12:57 +0200)]
cmdline: missing comparison in cmdlineParseRLimit()

7 years agoMerge pull request #50 from jvvv/master
robertswiecki [Sun, 8 Oct 2017 10:56:22 +0000 (12:56 +0200)]
Merge pull request #50 from jvvv/master

manpage: tweak for recent options changes

7 years agoMerge pull request #49 from disconnect3d/small-refactor-sandbox
robertswiecki [Sun, 8 Oct 2017 10:55:56 +0000 (12:55 +0200)]
Merge pull request #49 from disconnect3d/small-refactor-sandbox

sandbox.c: small refactor

7 years agosubproc: print si->si_errno as well as it provides user-supplied value from seccomp-bpf
Robert Swiecki [Sun, 8 Oct 2017 10:00:19 +0000 (12:00 +0200)]
subproc: print si->si_errno as well as it provides user-supplied value from seccomp-bpf

7 years agosubproc: reorder printing of si->si_syscall #2
Robert Swiecki [Sun, 8 Oct 2017 09:55:11 +0000 (11:55 +0200)]
subproc: reorder printing of si->si_syscall #2

7 years agosubproc: reorder printing of si->si_syscall
Robert Swiecki [Sun, 8 Oct 2017 09:53:24 +0000 (11:53 +0200)]
subproc: reorder printing of si->si_syscall

7 years agosubproc: print si->si_syscall
Robert Swiecki [Sun, 8 Oct 2017 09:51:37 +0000 (11:51 +0200)]
subproc: print si->si_syscall

7 years agomanpage: tweak for recent options changes
John Vogel [Sun, 8 Oct 2017 05:28:06 +0000 (01:28 -0400)]
manpage: tweak for recent options changes

Adjust rlimit_* options to match command line --help output.
Add --really_quiet option.

And some clean up:
Remove 'See Also' section that only references a non-existent
info page that is a relic of using help2man for initial manual
page generation.

7 years agosandbox.c: small refactor
disconnect3d [Sun, 8 Oct 2017 00:57:49 +0000 (02:57 +0200)]
sandbox.c: small refactor

7 years agomount: don't R/O remount mounts which were not mounted (not mandatory)
Robert Swiecki [Sat, 7 Oct 2017 23:28:45 +0000 (01:28 +0200)]
mount: don't R/O remount mounts which were not mounted (not mandatory)

7 years agocommon: less const argv
Robert Swiecki [Sat, 7 Oct 2017 22:36:13 +0000 (00:36 +0200)]
common: less const argv

7 years agomake indent
Robert Swiecki [Sat, 7 Oct 2017 22:17:47 +0000 (00:17 +0200)]
make indent

7 years agocmdline: use mountAddMountPt in the remaining calls
Robert Swiecki [Sat, 7 Oct 2017 22:14:24 +0000 (00:14 +0200)]
cmdline: use mountAddMountPt in the remaining calls

7 years agocmdline/mount: mount proc at the beginning
Robert Swiecki [Sat, 7 Oct 2017 21:32:25 +0000 (23:32 +0200)]
cmdline/mount: mount proc at the beginning

7 years agocmdline: use soft/hard literals instead of def/max for rlimits
Robert Swiecki [Sat, 7 Oct 2017 20:36:21 +0000 (22:36 +0200)]
cmdline: use soft/hard literals instead of def/max for rlimits

7 years agocmdline: missing flags for --chroot mount point
Robert Swiecki [Sat, 7 Oct 2017 20:33:46 +0000 (22:33 +0200)]
cmdline: missing flags for --chroot mount point

7 years agocmdline: use mountAddMountPt instead of adding structs explicitly
Robert Swiecki [Sat, 7 Oct 2017 20:30:19 +0000 (22:30 +0200)]
cmdline: use mountAddMountPt instead of adding structs explicitly

7 years agocmdline: better errors for setting rlimits
Robert Swiecki [Sat, 7 Oct 2017 10:37:26 +0000 (12:37 +0200)]
cmdline: better errors for setting rlimits

7 years agocmdline: 'inf' for rlimits
Robert Swiecki [Sat, 7 Oct 2017 10:33:19 +0000 (12:33 +0200)]
cmdline: 'inf' for rlimits

7 years agocmdline: descriptions of flags
Robert Swiecki [Sat, 7 Oct 2017 10:31:54 +0000 (12:31 +0200)]
cmdline: descriptions of flags

7 years agocmdline: implement --really_quiet option
Robert Swiecki [Sat, 7 Oct 2017 00:03:51 +0000 (02:03 +0200)]
cmdline: implement --really_quiet option

7 years agoconfig: make argv static to avoid using heap
Robert Swiecki [Fri, 6 Oct 2017 23:54:36 +0000 (01:54 +0200)]
config: make argv static to avoid using heap

7 years agoconfig: make config static so we can get rid of strdup()
Robert Swiecki [Fri, 6 Oct 2017 22:18:21 +0000 (00:18 +0200)]
config: make config static so we can get rid of strdup()

7 years agoconfig.proto: comments
Robert Swiecki [Fri, 6 Oct 2017 20:50:32 +0000 (22:50 +0200)]
config.proto: comments

7 years agoconfig: indent
Robert Swiecki [Fri, 6 Oct 2017 20:44:55 +0000 (22:44 +0200)]
config: indent

7 years agoconfig: allow to use soft/hard/inf limits for rlimits
Robert Swiecki [Fri, 6 Oct 2017 20:44:27 +0000 (22:44 +0200)]
config: allow to use soft/hard/inf limits for rlimits

7 years agopid: comment on the ns-init process
Robert Swiecki [Fri, 6 Oct 2017 17:42:58 +0000 (19:42 +0200)]
pid: comment on the ns-init process

7 years agomount: realpath is not needed as mount will realpath the path
Robert Swiecki [Tue, 3 Oct 2017 16:37:34 +0000 (18:37 +0200)]
mount: realpath is not needed as mount will realpath the path

7 years ago.gitignore: ignore config.pb.*
Robert Swiecki [Sun, 1 Oct 2017 17:55:36 +0000 (19:55 +0200)]
.gitignore: ignore config.pb.*

7 years agocontain: remove unnecessary includes
Robert Swiecki [Sun, 1 Oct 2017 17:08:31 +0000 (19:08 +0200)]
contain: remove unnecessary includes

7 years agouser: comments
Robert Swiecki [Sun, 1 Oct 2017 17:01:36 +0000 (19:01 +0200)]
user: comments

7 years agouser: log message
Robert Swiecki [Sun, 1 Oct 2017 14:13:17 +0000 (16:13 +0200)]
user: log message

7 years agouser: simplify login when running with --disable_clonew_newuser by using prctl(PR_SET...
Robert Swiecki [Sun, 1 Oct 2017 14:11:46 +0000 (16:11 +0200)]
user: simplify login when running with --disable_clonew_newuser by using prctl(PR_SET_SECUREBITS, SECBIT_KEEP_CAPS | SECBIT_NO_SETUID_FIXUP)

7 years agouser: more comments
Robert Swiecki [Sun, 1 Oct 2017 13:54:04 +0000 (15:54 +0200)]
user: more comments

7 years agocaps: more comments
Robert Swiecki [Sun, 1 Oct 2017 03:49:13 +0000 (05:49 +0200)]
caps: more comments

7 years agomount: print error when --disable_clone_newns is used but no --chroot was specified
Robert Swiecki [Sun, 1 Oct 2017 03:47:10 +0000 (05:47 +0200)]
mount: print error when --disable_clone_newns is used but no --chroot was specified

7 years agocaps: call prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_CLEAR_ALL) early
Robert Swiecki [Sun, 1 Oct 2017 03:38:26 +0000 (05:38 +0200)]
caps: call prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_CLEAR_ALL) early

7 years agoAllow for running with --disable_newuser started as root
Robert Swiecki [Sun, 1 Oct 2017 03:32:07 +0000 (05:32 +0200)]
Allow for running with --disable_newuser started as root

7 years agomount: allow to use --disable_newuser for root users
Robert Swiecki [Sun, 1 Oct 2017 03:16:01 +0000 (05:16 +0200)]
mount: allow to use --disable_newuser for root users

7 years agomount: remount / as private before doing any new mounts
Robert Swiecki [Sun, 1 Oct 2017 02:51:56 +0000 (04:51 +0200)]
mount: remount / as private before doing any new mounts

7 years agoMakefile: correct proto dep, plus some comments in caps.c
Robert Swiecki [Sat, 30 Sep 2017 22:06:36 +0000 (00:06 +0200)]
Makefile: correct proto dep, plus some comments in caps.c

7 years agocaps: define CAP_AUDIT_READ if not defined
Robert Swiecki [Fri, 29 Sep 2017 23:04:35 +0000 (01:04 +0200)]
caps: define CAP_AUDIT_READ if not defined

7 years agocaps: missing static function declarator
Robert Swiecki [Fri, 29 Sep 2017 22:37:06 +0000 (00:37 +0200)]
caps: missing static function declarator

7 years agocaps: refactor the code to make it readable for the --keep_caps case
Robert Swiecki [Fri, 29 Sep 2017 22:36:11 +0000 (00:36 +0200)]
caps: refactor the code to make it readable for the --keep_caps case

7 years agocap: Don't use -libcap anymore, as it had problems with newer capabilities
Robert Swiecki [Fri, 29 Sep 2017 22:05:41 +0000 (00:05 +0200)]
cap: Don't use -libcap anymore, as it had problems with newer capabilities

7 years agocmdline: various fixes of descriptions
Robert Swiecki [Fri, 29 Sep 2017 20:18:16 +0000 (22:18 +0200)]
cmdline: various fixes of descriptions

7 years agocaps: dont' throw warning if CAP_AUDIT_READ is not understood by libcap during reading
Robert Swiecki [Fri, 29 Sep 2017 19:31:22 +0000 (21:31 +0200)]
caps: dont' throw warning if CAP_AUDIT_READ is not understood by libcap during reading

7 years agocmdline: correct description for rlimit_ values
Robert Swiecki [Fri, 29 Sep 2017 12:46:03 +0000 (14:46 +0200)]
cmdline: correct description for rlimit_ values

7 years agocontain: use setrlimit64 instead of syscall(__NR_prlimit64)
Robert Swiecki [Fri, 29 Sep 2017 12:32:39 +0000 (14:32 +0200)]
contain: use setrlimit64 instead of syscall(__NR_prlimit64)

7 years agoMerge pull request #46 from ebadi/master
robertswiecki [Fri, 29 Sep 2017 12:29:24 +0000 (14:29 +0200)]
Merge pull request #46 from ebadi/master

rlimit64 to getrlimit64

7 years agorlimit64 to getrlimit64
Hamid Ebadi [Fri, 29 Sep 2017 12:11:48 +0000 (14:11 +0200)]
rlimit64 to getrlimit64

7 years agoMake it compile (maybe) under uClibc
Robert Swiecki [Fri, 29 Sep 2017 11:07:42 +0000 (13:07 +0200)]
Make it compile (maybe) under uClibc

7 years agoconfigs: format seccomp policies
Robert Swiecki [Wed, 27 Sep 2017 13:49:12 +0000 (15:49 +0200)]
configs: format seccomp policies

7 years agoconfig: make defaults work correctly 1.8
Robert Swiecki [Wed, 27 Sep 2017 13:36:05 +0000 (15:36 +0200)]
config: make defaults work correctly