Commit 888fe870 by Iwasaki Yudai

Add configuration to modify signal sent to child process when close it

1 parent 95ad63e5
Showing with 4 additions and 1 deletions
......@@ -64,6 +64,7 @@ type Options struct {
ReconnectTime int `hcl:"reconnect_time"`
Once bool `hcl:"once"`
PermitArguments bool `hcl:"permit_arguments"`
CloseSignal int `hcl:"close_signal"`
Preferences HtermPrefernces `hcl:"preferences"`
RawPreferences map[string]interface{} `hcl:"preferences"`
}
......@@ -88,6 +89,7 @@ var DefaultOptions = Options{
EnableReconnect: false,
ReconnectTime: 10,
Once: false,
CloseSignal: 1, // syscall.SIGHUP
Preferences: HtermPrefernces{},
}
......
......@@ -75,7 +75,7 @@ func (context *clientContext) goHandleClient() {
// Even if the PTY has been closed,
// 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.connection.Close()
......
......@@ -35,6 +35,7 @@ func main() {
flag{"reconnect-time", "", "Time to reconnect"},
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{"close-signal", "", "Signal sent to the command process when gotty close it (default: SIGHUP)"},
}
mappingHint := map[string]string{
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!