Author: pjd
Date: Wed Jan 12 14:38:17 2011
New Revision: 217308
URL: http://svn.freebsd.org/changeset/base/217308

Log:
  Add a note that when custom signal handler is installed for a signal,
  signal action is restored to default in child after fork(2).
  In this case there is no need to do anything with dummy SIGCHLD handler,
  because after fork(2) it will be automatically reverted to SIG_IGN.
  
  Obtained from:        Wheel Systems Sp. z o.o. http://www.wheelsystems.com
  MFC after:    3 days

Modified:
  head/sbin/hastd/hooks.c

Modified: head/sbin/hastd/hooks.c
==============================================================================
--- head/sbin/hastd/hooks.c     Wed Jan 12 14:35:29 2011        (r217307)
+++ head/sbin/hastd/hooks.c     Wed Jan 12 14:38:17 2011        (r217308)
@@ -372,6 +372,11 @@ hook_execv(const char *path, va_list ap)
                descriptors();
                PJDLOG_VERIFY(sigemptyset(&mask) == 0);
                PJDLOG_VERIFY(sigprocmask(SIG_SETMASK, &mask, NULL) == 0);
+               /*
+                * Dummy handler set for SIGCHLD in the parent should be
+                * changed after fork(2) automatically to the default SIG_IGN,
+                * so there is no need to do anything with it.
+                */
                execv(path, args);
                pjdlog_errno(LOG_ERR, "Unable to execute %s", path);
                exit(EX_SOFTWARE);
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to