mirror of
https://github.com/sorenisanerd/gotty.git
synced 2024-11-22 12:24:25 +00:00
Add configuration to modify signal sent to child process when close it
This commit is contained in:
parent
95ad63e5ae
commit
888fe870dc
@ -64,6 +64,7 @@ type Options struct {
|
|||||||
ReconnectTime int `hcl:"reconnect_time"`
|
ReconnectTime int `hcl:"reconnect_time"`
|
||||||
Once bool `hcl:"once"`
|
Once bool `hcl:"once"`
|
||||||
PermitArguments bool `hcl:"permit_arguments"`
|
PermitArguments bool `hcl:"permit_arguments"`
|
||||||
|
CloseSignal int `hcl:"close_signal"`
|
||||||
Preferences HtermPrefernces `hcl:"preferences"`
|
Preferences HtermPrefernces `hcl:"preferences"`
|
||||||
RawPreferences map[string]interface{} `hcl:"preferences"`
|
RawPreferences map[string]interface{} `hcl:"preferences"`
|
||||||
}
|
}
|
||||||
@ -88,6 +89,7 @@ var DefaultOptions = Options{
|
|||||||
EnableReconnect: false,
|
EnableReconnect: false,
|
||||||
ReconnectTime: 10,
|
ReconnectTime: 10,
|
||||||
Once: false,
|
Once: false,
|
||||||
|
CloseSignal: 1, // syscall.SIGHUP
|
||||||
Preferences: HtermPrefernces{},
|
Preferences: HtermPrefernces{},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -75,7 +75,7 @@ func (context *clientContext) goHandleClient() {
|
|||||||
|
|
||||||
// Even if the PTY has been closed,
|
// Even if the PTY has been closed,
|
||||||
// Read(0 in processSend() keeps blocking and the process doen't exit
|
// Read(0 in processSend() keeps blocking and the process doen't exit
|
||||||
context.command.Process.Signal(syscall.SIGHUP)
|
context.command.Process.Signal(syscall.Signal(context.app.options.CloseSignal))
|
||||||
|
|
||||||
context.command.Wait()
|
context.command.Wait()
|
||||||
context.connection.Close()
|
context.connection.Close()
|
||||||
|
1
main.go
1
main.go
@ -35,6 +35,7 @@ func main() {
|
|||||||
flag{"reconnect-time", "", "Time to reconnect"},
|
flag{"reconnect-time", "", "Time to reconnect"},
|
||||||
flag{"once", "", "Accept only one client and exit on disconnection"},
|
flag{"once", "", "Accept only one client and exit on disconnection"},
|
||||||
flag{"permit-arguments", "", "Permit clients to send command line arguments in URL (e.g. http://example.com:8080/?arg=AAA&arg=BBB)"},
|
flag{"permit-arguments", "", "Permit clients to send command line arguments in URL (e.g. http://example.com:8080/?arg=AAA&arg=BBB)"},
|
||||||
|
flag{"close-signal", "", "Signal sent to the command process when gotty close it (default: SIGHUP)"},
|
||||||
}
|
}
|
||||||
|
|
||||||
mappingHint := map[string]string{
|
mappingHint := map[string]string{
|
||||||
|
Loading…
Reference in New Issue
Block a user