| 304 | } |
| 305 | |
| 306 | static void |
| 307 | usage (int ecode, FILE *out) |
| 308 | { |
| 309 | fprintf (out, "usage: %s [OPTIONS...] [--] COMMAND [ARGS...]\n\n", argv0 ? argv0 : "bwrap"); |
| 310 | |
| 311 | fprintf (out, |
| 312 | " --help Print this help\n" |
| 313 | " --version Print version\n" |
| 314 | " --args FD Parse NUL-separated args from FD\n" |
| 315 | " --argv0 VALUE Set argv[0] to the value VALUE before running the program\n" |
| 316 | " --level-prefix Prepend e.g. <3> to diagnostic messages\n" |
| 317 | " --unshare-all Unshare every namespace we support by default\n" |
| 318 | " --share-net Retain the network namespace (can only combine with --unshare-all)\n" |
| 319 | " --unshare-user Create new user namespace (may be automatically implied if not setuid)\n" |
| 320 | " --unshare-user-try Create new user namespace if possible else continue by skipping it\n" |
| 321 | " --unshare-ipc Create new ipc namespace\n" |
| 322 | " --unshare-pid Create new pid namespace\n" |
| 323 | " --unshare-net Create new network namespace\n" |
| 324 | " --unshare-uts Create new uts namespace\n" |
| 325 | " --unshare-cgroup Create new cgroup namespace\n" |
| 326 | " --unshare-cgroup-try Create new cgroup namespace if possible else continue by skipping it\n" |
| 327 | " --userns FD Use this user namespace (cannot combine with --unshare-user)\n" |
| 328 | " --userns2 FD After setup switch to this user namespace, only useful with --userns\n" |
| 329 | " --disable-userns Disable further use of user namespaces inside sandbox\n" |
| 330 | " --assert-userns-disabled Fail unless further use of user namespace inside sandbox is disabled\n" |
| 331 | " --pidns FD Use this pid namespace (as parent namespace if using --unshare-pid)\n" |
| 332 | " --uid UID Custom uid in the sandbox (requires --unshare-user or --userns)\n" |
| 333 | " --gid GID Custom gid in the sandbox (requires --unshare-user or --userns)\n" |
| 334 | " --hostname NAME Custom hostname in the sandbox (requires --unshare-uts)\n" |
| 335 | " --chdir DIR Change directory to DIR\n" |
| 336 | " --clearenv Unset all environment variables\n" |
| 337 | " --setenv VAR VALUE Set an environment variable\n" |
| 338 | " --unsetenv VAR Unset an environment variable\n" |
| 339 | " --lock-file DEST Take a lock on DEST while sandbox is running\n" |
| 340 | " --sync-fd FD Keep this fd open while sandbox is running\n" |
| 341 | " --bind SRC DEST Bind mount the host path SRC on DEST\n" |
| 342 | " --bind-try SRC DEST Equal to --bind but ignores non-existent SRC\n" |
| 343 | " --dev-bind SRC DEST Bind mount the host path SRC on DEST, allowing device access\n" |
| 344 | " --dev-bind-try SRC DEST Equal to --dev-bind but ignores non-existent SRC\n" |
| 345 | " --ro-bind SRC DEST Bind mount the host path SRC readonly on DEST\n" |
| 346 | " --ro-bind-try SRC DEST Equal to --ro-bind but ignores non-existent SRC\n" |
| 347 | " --bind-fd FD DEST Bind open directory or path fd on DEST\n" |
| 348 | " --ro-bind-fd FD DEST Bind open directory or path fd read-only on DEST\n" |
| 349 | " --remount-ro DEST Remount DEST as readonly; does not recursively remount\n" |
| 350 | " --overlay-src SRC Read files from SRC in the following overlay\n" |
| 351 | " --overlay RWSRC WORKDIR DEST Mount overlayfs on DEST, with RWSRC as the host path for writes and\n" |
| 352 | " WORKDIR an empty directory on the same filesystem as RWSRC\n" |
| 353 | " --tmp-overlay DEST Mount overlayfs on DEST, with writes going to an invisible tmpfs\n" |
| 354 | " --ro-overlay DEST Mount overlayfs read-only on DEST\n" |
| 355 | " --exec-label LABEL Exec label for the sandbox\n" |
| 356 | " --file-label LABEL File label for temporary sandbox content\n" |
| 357 | " --proc DEST Mount new procfs on DEST\n" |
| 358 | " --dev DEST Mount new dev on DEST\n" |
| 359 | " --tmpfs DEST Mount new tmpfs on DEST\n" |
| 360 | " --mqueue DEST Mount new mqueue on DEST\n" |
| 361 | " --dir DEST Create dir at DEST\n" |
| 362 | " --file FD DEST Copy from FD to destination DEST\n" |
| 363 | " --bind-data FD DEST Copy from FD to file which is bind-mounted on DEST\n" |
no outgoing calls
no test coverage detected