Shellbox
Library and server for containerized shell execution
|
▼NShellbox | |
▼NAction | |
CCallAction | PHP RPC handler |
CMultipartAction | Base class for actions that share a specific input/output protocol |
CShellAction | Shell command handler |
▼NCommand | |
CBashWrapper | A ulimit/cgroup wrapper implemented as a bash script |
CBoxedCommand | A command with input and output files in an otherwise empty working directory |
CBoxedExecutor | Base class for things that execute BoxedCommands |
CBoxedResult | Class representing the result of running a BoxedCommand |
CCommand | The abstract base class for commands |
CFirejailWrapper | A wrapper that restricts the command using firejail |
CInputFile | The base class for input files |
CInputFileFromFile | Encapsulation of an input file that is copied from another file |
CInputFileFromStream | |
CInputFileFromString | Encapsulation of an input file that comes from a string |
CInputFileFromUrl | |
CInputFilePlaceholder | An input file placeholder to represent a temporary file in the server |
CInputFileWithContents | |
CLocalBoxedExecutor | An executor which runs a BoxedCommand locally |
COutputFile | The base class for encapsulated output files |
COutputFilePlaceholder | |
COutputFileToFile | Encapsulation of an output file that is copied to a local file |
COutputFileToStream | Encapsulation of an output file that is copied to a stream |
COutputFileToString | Encapsulation of an output file that is read into a string |
COutputFileToUrl | Encapsulation of an output file which is sent to a server using a PUT request |
COutputFileWithContents | An OutputFile which carries its contents for eventual retrieval |
COutputGlob | The base class for output file glob patterns |
COutputGlobPlaceholder | |
COutputGlobToFile | An output glob for files that are written to a local directory |
COutputGlobToString | An output glob for files that are handled as strings |
COutputGlobToUrl | An OutputGlob for files that are sent to a server with PUT requests |
CRemoteBoxedExecutor | A BoxedExecutor which works by running the command on a remote server via HTTP/HTTPS |
CServerBoxedExecutor | A BoxedExecutor for internal use by the Server |
CServerBoxedResult | A BoxedResult subclass used by ServerBoxedExecutor, providing simplified output file handling |
CServerUnboxedExecutor | Typically UnboxedExecutor rarely needs a TempDirManager, and so it is lazy-initialised to avoid the need for secure random numbers in the usual case |
CSystemdWrapper | A wrapper which runs the command via systemd-run |
CUnboxedCommand | A command without file handling |
CUnboxedExecutor | A concrete class for executing UnboxedCommand objects |
CUnboxedResult | |
CValidationError | |
CValidator | |
CWindowsWrapper | |
CWrapper | Base class for wrappers that modify commands |
▼NMultipart | |
CMultipartError | Exception base class for multipart errors |
CMultipartReader | A streaming parser for multipart content |
CMultipartUtils | Static utility functions for the multipart reader |
▼NRPC | |
CLocalRpcClient | An implementation of RPCClient that executes the provided commands locally |
CRpcClient | A client that executes PHP code on Shellbox server |
▼NShellParser | |
CNode | |
CPEGParser | |
CPEGParserCacheEntry | |
CShellParser | Top-level entry for shell command parsing |
CShellSyntaxError | Exception class for shell command syntax errors |
CSyntaxInfo | |
CSyntaxTree | A wrapper for the shell syntax tree, providing a higher-level API |
CUnimplementedError | |
CClient | A generic client which executes actions on the Shellbox server |
CClientLogHandler | |
CFileUtils | Throwing wrappers for file functions |
CServer | The Shellbox server main class |
CShellbox | Static factories and miscellaneous utility functions |
CShellboxError | The base class for exceptions thrown by Shellbox |
CTempDirManager | Manager for a temporary directory which is lazily created, with lazily created subdirectories underneath, and some path traversal protection to make sure files stay inside the directory |