diff options
author | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2011-05-02 22:20:04 (GMT) |
---|---|---|
committer | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2011-05-02 22:20:04 (GMT) |
commit | 0edbdfd24cf34593bc5e49ab2f3f2081de77495d (patch) | |
tree | 56ba0c8918a9a1c082f7674cb388d98f8b8fd3e0 /patches/glibc/ports-2.12.1/300-nscd-one-fork.patch | |
parent | c50fc857f72f1da138f3c6dca8baac824c4881ca (diff) |
libc/glibc: update patchset, add ports patchset
Patchset provided by "Ioannis E. Venetis" <venetis@mail.capsl.udel.edu>
http://sourceware.org/ml/crossgcc/2011-04/msg00072.html
http://sourceware.org/ml/crossgcc/2011-04/msg00073.html
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Diffstat (limited to 'patches/glibc/ports-2.12.1/300-nscd-one-fork.patch')
-rw-r--r-- | patches/glibc/ports-2.12.1/300-nscd-one-fork.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/patches/glibc/ports-2.12.1/300-nscd-one-fork.patch b/patches/glibc/ports-2.12.1/300-nscd-one-fork.patch new file mode 100644 index 0000000..27eae51 --- /dev/null +++ b/patches/glibc/ports-2.12.1/300-nscd-one-fork.patch @@ -0,0 +1,40 @@ +only fork one to assist in stop-start-daemon assumptions about daemon behavior + +http://bugs.gentoo.org/190785 + +diff -durN glibc-2.12.1.orig/nscd/nscd.c glibc-2.12.1/nscd/nscd.c +--- glibc-2.12.1.orig/nscd/nscd.c 2009-02-06 21:10:27.000000000 +0100 ++++ glibc-2.12.1/nscd/nscd.c 2009-11-13 00:50:24.000000000 +0100 +@@ -182,6 +182,9 @@ + if (pid != 0) + exit (0); + ++ if (write_pid (_PATH_NSCDPID) < 0) ++ dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); ++ + int nullfd = open (_PATH_DEVNULL, O_RDWR); + if (nullfd != -1) + { +@@ -231,12 +234,6 @@ + for (i = min_close_fd; i < getdtablesize (); i++) + close (i); + +- pid = fork (); +- if (pid == -1) +- error (EXIT_FAILURE, errno, _("cannot fork")); +- if (pid != 0) +- exit (0); +- + setsid (); + + if (chdir ("/") != 0) +@@ -245,9 +242,6 @@ + + openlog ("nscd", LOG_CONS | LOG_ODELAY, LOG_DAEMON); + +- if (write_pid (_PATH_NSCDPID) < 0) +- dbg_log ("%s: %s", _PATH_NSCDPID, strerror (errno)); +- + if (!init_logfile ()) + dbg_log (_("Could not create log file")); + |