From 07980b056c5371f8b6fdd50172f501be07155bdf Mon Sep 17 00:00:00 2001 From: Guus Sliepen Date: Wed, 1 Aug 2012 15:14:48 +0200 Subject: [PATCH] Try sending SIGTERM if we cannot connect to a tincd but we know its PID. --- src/tincctl.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/tincctl.c b/src/tincctl.c index 619b90e..1cdcf58 100644 --- a/src/tincctl.c +++ b/src/tincctl.c @@ -714,8 +714,16 @@ static int cmd_start(int argc, char *argv[]) { static int cmd_stop(int argc, char *argv[]) { #ifndef HAVE_MINGW - if(!connect_tincd()) + if(!connect_tincd()) { + if(pid) { + if(kill(pid, SIGTERM)) + return 1; + fprintf(stderr, "Sent TERM signal to process with PID %u.\n", pid); + return 0; + } + return 1; + } sendline(fd, "%d %d", CONTROL, REQ_STOP); if(!recvline(fd, line, sizeof line) || sscanf(line, "%d %d %d", &code, &req, &result) != 3 || code != CONTROL || req != REQ_STOP || result) { -- 2.25.1