The restriction here is pretty late and pretty minimal. We need a lot
of authority to open password databases, and don't do much after that
point.
Details
- Reviewers
emaste allanjude oshogbo - Commits
- rS310140: dma-mbox-create: Restrict with Capsicum
- sudo truss /usr/libexec/dma-mbox-create cmeyer
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Hi! Do we want to ifdef the capsicum part? We share this code with DragonFly, https://github.com/corecode/dma (which is where our port comes from), and the latter is used in Debian. I also pull this code and build it for CentOS.
It's definitely best if we can share an unmodified version of this with other operating systems, so #ifdefing the Capsicum-specific chagnes seems reasonable to me.
FYI we #ifdef'd bspatch as FreeBSD is upstream and other software may pull from us,
https://svnweb.freebsd.org/base/head/usr.bin/bsdiff/bspatch/bspatch.c?view=markup
having the small refactoring here (the maildirfd) upstream should be useful in other operating systems with some sandboxing technology
Ifdef Capsicum support (FreeBSD-only for now) for code-sharing with DragonFly
and Linux.
Right. Most of these changes are not FreeBSD-specific, so I only ifdef'd the Capsicum-exclusive bits.
contrib/dma/dma-mbox-create.c | ||
---|---|---|
178–185 ↗ | (On Diff #20584) | do we still need fn? |
Considering sending this as a pull request for upstream: https://github.com/emaste/dma/commit/6748bdd435e6287cb36ea278fec2a1f7281be6bf
Is this too useless to commit? Nothing beyond sandbox entry seems even remotely exploitable.