s6: the s6-sudo program
Keywords: s6 s6-sudo sudo setuid suid unix privilege gain getpeereid

s6
Software
skarnet.org

# The `s6-sudo` program

`s6-sudo` connects to a Unix domain socket and passes its standard file descriptors, command-line arguments and environment to a program running on the server side, potentially with different privileges.

## Interface

         s6-sudo [ -q | -Q | -v ] [ -p bindpath ] [ -l localname ] [ -e ] [ -t timeoutconn ] [ -T timeoutrun ] path [ args... ]

- s6-sudo executes into `s6-ipcclient path s6-sudoc args...` It does nothing else: it is just a convenience program. The s6-ipcclient program connects to a Unix socket at path, and the s6-sudoc program transmits the desired elements over the socket.
- It should be used to connect to a local service running the s6-sudod program, which will run a server program on the client's behalf.

## Options

- The `-q`, `-Q`, `-v`, `-p` and `-l` options are passed to s6-ipcclient.
- The `-e`, `-t` and `-T` options are passed to s6-sudoc.
- Command-line arguments, if any, are also passed to s6-sudoc, which will transmit them to s6-sudod over the socket.