]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit - tools/regression/capsicum/libcapsicum/grp.c
Convert casperd(8) daemon to the libcasper.
authoroshogbo <oshogbo@FreeBSD.org>
Thu, 25 Feb 2016 18:23:40 +0000 (18:23 +0000)
committeroshogbo <oshogbo@FreeBSD.org>
Thu, 25 Feb 2016 18:23:40 +0000 (18:23 +0000)
commit023f14d65b31db71d1a4e6655205dd919bfeb5fb
treefaa5b7886c70249c03078cb4861e837c2d0f6582
parent85f8ae969b95a5539c68ffb09c545b5023901f4e
Convert casperd(8) daemon to the libcasper.
After calling the cap_init(3) function Casper will fork from it's original
process, using pdfork(2). Forking from a process has a lot of advantages:
1. We have the same cwd as the original process.
2. The same uid, gid and groups.
3. The same MAC labels.
4. The same descriptor table.
5. The same routing table.
6. The same umask.
7. The same cpuset(1).
From now services are also in form of libraries.
We also removed libcapsicum at all and converts existing program using Casper
to new architecture.

Discussed with: pjd, jonathan, ed, drysdale@google.com, emaste
Partially reviewed by: drysdale@google.com, bdrewery
Approved by: pjd (mentor)
Differential Revision: https://reviews.freebsd.org/D4277
85 files changed:
Makefile.inc1
ObsoleteFiles.inc
contrib/mdocml/lib.in
contrib/tcpdump/addrtoname.c
contrib/tcpdump/config.h.in
contrib/tcpdump/configure
contrib/tcpdump/configure.in
contrib/tcpdump/tcpdump.c
etc/defaults/rc.conf
etc/mtree/BSD.debug.dist
etc/mtree/BSD.include.dist
etc/mtree/BSD.root.dist
etc/rc.d/Makefile
etc/rc.d/casperd [deleted file]
gnu/usr.bin/groff/tmac/mdoc.local.in
lib/Makefile
lib/libc/posix1e/posix1e.3
lib/libcapsicum/Makefile [deleted file]
lib/libcapsicum/Makefile.depend [deleted file]
lib/libcapsicum/libcapsicum_dns.c [deleted file]
lib/libcapsicum/libcapsicum_impl.h [deleted file]
lib/libcapsicum/libcapsicum_pwd.c [deleted file]
lib/libcapsicum/libcapsicum_service.c [deleted file]
lib/libcapsicum/libcapsicum_sysctl.c [deleted file]
lib/libcasper/Makefile
lib/libcasper/libcasper.h [deleted file]
lib/libcasper/libcasper/Makefile [new file with mode: 0644]
lib/libcasper/libcasper/libcasper.3 [moved from lib/libcapsicum/libcapsicum.3 with 91% similarity]
lib/libcasper/libcasper/libcasper.c [moved from lib/libcapsicum/libcapsicum.c with 72% similarity]
lib/libcasper/libcasper/libcasper.h [moved from lib/libcapsicum/libcapsicum.h with 87% similarity]
lib/libcasper/libcasper/libcasper_impl.c [moved from lib/libcapsicum/libcapsicum_service.h with 84% similarity]
lib/libcasper/libcasper/libcasper_impl.h [new file with mode: 0644]
lib/libcasper/libcasper/libcasper_service.c [new file with mode: 0644]
lib/libcasper/libcasper/libcasper_service.h [moved from lib/libcasper/libcasper_impl.h with 67% similarity]
lib/libcasper/libcasper/service.c [moved from lib/libcasper/libcasper.c with 74% similarity]
lib/libcasper/libcasper/zygote.c [moved from sbin/casperd/zygote.c with 97% similarity]
lib/libcasper/libcasper/zygote.h [moved from sbin/casperd/zygote.h with 91% similarity]
lib/libcasper/services/Makefile [new file with mode: 0644]
lib/libcasper/services/cap_dns/Makefile [new file with mode: 0644]
lib/libcasper/services/cap_dns/cap_dns.c [moved from libexec/casper/dns/dns.c with 54% similarity]
lib/libcasper/services/cap_dns/cap_dns.h [moved from lib/libcapsicum/libcapsicum_dns.h with 96% similarity]
lib/libcasper/services/cap_grp/Makefile [new file with mode: 0644]
lib/libcasper/services/cap_grp/cap_grp.c [moved from lib/libcapsicum/libcapsicum_grp.c with 57% similarity]
lib/libcasper/services/cap_grp/cap_grp.h [moved from lib/libcapsicum/libcapsicum_grp.h with 96% similarity]
lib/libcasper/services/cap_pwd/Makefile [new file with mode: 0644]
lib/libcasper/services/cap_pwd/cap_pwd.c [moved from libexec/casper/pwd/pwd.c with 54% similarity]
lib/libcasper/services/cap_pwd/cap_pwd.h [moved from lib/libcapsicum/libcapsicum_pwd.h with 96% similarity]
lib/libcasper/services/cap_random/Makefile [new file with mode: 0644]
lib/libcasper/services/cap_random/cap_random.c [moved from lib/libcapsicum/libcapsicum_random.c with 76% similarity]
lib/libcasper/services/cap_random/cap_random.h [moved from lib/libcapsicum/libcapsicum_random.h with 94% similarity]
lib/libcasper/services/cap_sysctl/Makefile [new file with mode: 0644]
lib/libcasper/services/cap_sysctl/cap_sysctl.c [moved from libexec/casper/sysctl/sysctl.c with 80% similarity]
lib/libcasper/services/cap_sysctl/cap_sysctl.h [moved from lib/libcapsicum/libcapsicum_sysctl.h with 94% similarity]
libexec/Makefile
libexec/casper/Makefile [deleted file]
libexec/casper/dns/Makefile [deleted file]
libexec/casper/grp/Makefile [deleted file]
libexec/casper/grp/grp.c [deleted file]
libexec/casper/pwd/Makefile [deleted file]
libexec/casper/random/Makefile [deleted file]
libexec/casper/random/random.c [deleted file]
libexec/casper/sysctl/Makefile [deleted file]
libexec/rtld-elf/paths.h
sbin/Makefile
sbin/casperd/Makefile [deleted file]
sbin/casperd/casperd.8 [deleted file]
sbin/casperd/casperd.c [deleted file]
sbin/ping/Makefile
sbin/ping/Makefile.depend
sbin/ping/ping.c
share/man/man4/capsicum.4
share/mk/bsd.libnames.mk
share/mk/src.libnames.mk
targets/pseudo/userland/Makefile.depend
targets/pseudo/userland/lib/Makefile.depend
targets/pseudo/userland/libexec/Makefile.depend
tools/regression/capsicum/libcasper/Makefile [moved from tools/regression/capsicum/libcapsicum/Makefile with 87% similarity]
tools/regression/capsicum/libcasper/dns.c [moved from tools/regression/capsicum/libcapsicum/dns.c with 99% similarity]
tools/regression/capsicum/libcasper/grp.c [moved from tools/regression/capsicum/libcapsicum/grp.c with 99% similarity]
tools/regression/capsicum/libcasper/pwd.c [moved from tools/regression/capsicum/libcapsicum/pwd.c with 99% similarity]
tools/regression/capsicum/libcasper/sysctl.c [moved from tools/regression/capsicum/libcapsicum/sysctl.c with 99% similarity]
usr.bin/kdump/Makefile
usr.bin/kdump/kdump.c
usr.sbin/tcpdump/tcpdump/Makefile
usr.sbin/tcpdump/tcpdump/config.h