1package atc
2
3type HijackProcessSpec struct {
4	Path string   `json:"path"`
5	Args []string `json:"args"`
6	Env  []string `json:"env"`
7	Dir  string   `json:"dir"`
8
9	Privileged bool   `json:"privileged"`
10	User       string `json:"user"`
11
12	TTY *HijackTTYSpec `json:"tty"`
13}
14
15type HijackTTYSpec struct {
16	WindowSize HijackWindowSize `json:"window_size"`
17}
18
19type HijackWindowSize struct {
20	Columns int `json:"columns"`
21	Rows    int `json:"rows"`
22}
23
24type HijackInput struct {
25	Closed  bool           `json:"closed,omitempty"`
26	Stdin   []byte         `json:"stdin,omitempty"`
27	TTYSpec *HijackTTYSpec `json:"tty,omitempty"`
28}
29
30type HijackOutput struct {
31	Stdout     []byte `json:"stdout,omitempty"`
32	Stderr     []byte `json:"stderr,omitempty"`
33	Error      string `json:"error,omitempty"`
34	ExitStatus *int   `json:"exit_status,omitempty"`
35}
36