Notable changes to Birdcage are documented in this file.
The sections should follow the order Packaging
, Added
, Changed
, Fixed
and Removed
.
The format is based on Keep a Changelog.
- Conversion from Birdcage's to STD's
Command
inheriting all STDIO
Sandbox::spawn
now takes abirdcage::process::Command
- (Linux) Sandboxed process not killed when parent is terminated with a signal
- (Linux) Improved error message with unsupported Kernel versions
- (Linux) PID namespace support
- (Linux) Sandbox lockdown failing when deleting file after adding exception
- (Linux) Environment variables accessible through procfs interface
- (Linux) Sandbox exceptions for symbolic links
- (macOS) Modifying exceptions for paths affected by existing exceptions
- (Linux) Symlink/Canonical path's exceptions overriding each other
- (Linux) Report invalid paths when adding exceptions
Exception::Write
changed toException::WriteAndRead
- (Linux) Root filesystem exceptions failing sandbox creation
- (Linux) Sandbox not enforcing readonly/noexec restrictions
- (Linux) Exceptions for special files (i.e. /dev/null)
- (Linux) Seccomp system call filter
- (Linux) Minimum Kernel version reduced to 3.8
- The sandboxing process now must be single-threaded
- (Linux) Abstract namespace isolation
- (Linux) Socket and pipe isolation
We'd like to thank @bjorn3 for disclosing an issue with socket isolation.
- Local sockets denied by network sandbox on Linux
- Linux seccomp network filtering now uses a whitelist instead of a blacklist