Please sign in to comment.
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
tun: Kill the tunnel script's process group
When invoked with --script-tun, openconnect starts the tunnel script via "/bin/sh -c 'SCRIPT'", then sends SIGHUP to the shell's PID when shutting down. However, non-interactive shells are not guaranteed to send SIGHUP to any running jobs¹; indeed, the observed behavior on Linux is that only the shell process receives SIGHUP, and the tunnel script continues running after openconnect exits. A quick fix is to set the child's pgid == pid, then send SIGHUP to the entire process group when we want to shut down. ¹ http://www.gnu.org/software/bash/manual/html_node/Signals.html Signed-off-by: Kevin Cernekee <firstname.lastname@example.org> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
- Loading branch information
Showing with 4 additions and 1 deletion.
- +4 −1 tun.c