diff options
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | tests/server/sockfilt.c | 7 |
2 files changed, 8 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index b34ef784c..0f4190005 100644 --- a/configure.ac +++ b/configure.ac @@ -2002,6 +2002,7 @@ AC_CHECK_FUNCS( strtoll \ strlcat \ getpwuid \ geteuid \ + getppid \ utime \ sigsetjmp \ basename \ diff --git a/tests/server/sockfilt.c b/tests/server/sockfilt.c index 9962a4c40..7c3404c1f 100644 --- a/tests/server/sockfilt.c +++ b/tests/server/sockfilt.c @@ -181,6 +181,13 @@ static int juggle(curl_socket_t *sockfdp, unsigned char buffer[17010]; char data[16]; +#ifdef HAVE_GETPPID + /* As a last resort, quit if sockfilt process becomes orphan. Just in case + parent ftpserver process has died without killing its sockfilt children */ + if(getppid() <= 1) + return FALSE; +#endif + timeout.tv_sec = 120; timeout.tv_usec = 0; |