X-Git-Url: https://git.distorted.org.uk/~mdw/userv-utils/blobdiff_plain/02b2392d025937ea5a1108b07b0dcd2a52cd957e..5f1c67ff94a72191a92c02205b91c321bc96695b:/ipif/service.c diff --git a/ipif/service.c b/ipif/service.c index 33ba2df..5ed6014 100644 --- a/ipif/service.c +++ b/ipif/service.c @@ -75,7 +75,7 @@ static struct pplace { } *cpplace; -static int slpipe[2], ptmaster; +static int slpipe[2], ptmaster, undoslattach; static const char *ifname; static const char *ptyname; @@ -88,13 +88,36 @@ static union { sigset_t emptyset, fullset; +static int cleantask(void) { + pid_t pid; + + pid= fork(); + if (!pid) return 1; + if (pid == (pid_t)-1) + perror("userv-ipif: fork for undo slattach failed - cannot clean up properly"); + return 0; +} + static void terminate(int estatus) { int i, status; pid_t pid; for (i=0; i