]> arthur.barton.de Git - netatalk.git/blobdiff - libatalk/util/server_child.c
Merge master
[netatalk.git] / libatalk / util / server_child.c
index 607c7889b0f791ebfc3d74f8397d60be6f2d45b0..34cec28d17d5b0d601a5fef0daacf0c8b3bbbe90 100644 (file)
 
 #include <stdlib.h>
 #include <string.h>
-#ifdef HAVE_UNISTD_H
 #include <unistd.h>
-#endif /* HAVE_UNISTD_H */
 #include <signal.h>
 #include <errno.h>
-
-/* POSIX.1 sys/wait.h check */
 #include <sys/types.h>
-#ifdef HAVE_SYS_WAIT_H
 #include <sys/wait.h>
-#endif /* HAVE_SYS_WAIT_H */
 #include <sys/time.h>
 
 #include <atalk/logger.h>
@@ -282,9 +276,11 @@ int server_child_transfer_session(server_child *children,
         if (kill(pid, 0) == 0) {
             LOG(log_note, logtype_default, "Reconnect: terminating old session[%u]", pid);
             kill(pid, SIGTERM);
+            sleep(2);
             if (kill(pid, 0) == 0) {
                 LOG(log_error, logtype_default, "Reconnect: killing old session[%u]", pid);
                 kill(pid, SIGKILL);
+                sleep(2);
             }
         }
         return 0;