summaryrefslogtreecommitdiffstats
path: root/main/arpwatch/15_all_arpwatch-2.1a15-fix-dead-lock.patch
diff options
context:
space:
mode:
authorFrancesco Colista <francesco.colista@gmail.com>2013-07-08 11:33:58 +0000
committerFrancesco Colista <francesco.colista@gmail.com>2013-07-08 11:34:11 +0000
commit411a2782aaa756b3a8f3988763ac592cff1257b3 (patch)
treef3506a151a9b2e71ed9417f298e40f11e8d66418 /main/arpwatch/15_all_arpwatch-2.1a15-fix-dead-lock.patch
parent0852cf7df3027cc1addd921d31c0b032983196e0 (diff)
downloadaports-411a2782aaa756b3a8f3988763ac592cff1257b3.tar.bz2
aports-411a2782aaa756b3a8f3988763ac592cff1257b3.tar.xz
main/arpwatch: added several patches for improving options and security
Diffstat (limited to 'main/arpwatch/15_all_arpwatch-2.1a15-fix-dead-lock.patch')
-rw-r--r--main/arpwatch/15_all_arpwatch-2.1a15-fix-dead-lock.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/main/arpwatch/15_all_arpwatch-2.1a15-fix-dead-lock.patch b/main/arpwatch/15_all_arpwatch-2.1a15-fix-dead-lock.patch
new file mode 100644
index 000000000..9e94c7dd0
--- /dev/null
+++ b/main/arpwatch/15_all_arpwatch-2.1a15-fix-dead-lock.patch
@@ -0,0 +1,32 @@
+diff -Naru arpwatch-2.1a15.orig/report.c arpwatch-2.1a15/report.c
+--- arpwatch-2.1a15.orig/report.c 2006-09-23 19:31:47.000000000 +0400
++++ arpwatch-2.1a15/report.c 2006-09-23 19:38:54.000000000 +0400
+@@ -217,7 +217,12 @@
+ continue;
+ /* ECHILD means no one left */
+ if (errno != ECHILD)
+- syslog(LOG_ERR, "reaper: %m");
++ /* It is dangerous to call non reentrant */
++ /* functions from callback (POSIX) */
++ /* Next line effectively disables this as */
++ /* we never get here in debug */
++ if (debug)
++ syslog(LOG_ERR, "reaper: %m");
+ break;
+ }
+ /* Already got everyone who was done */
+@@ -225,8 +230,13 @@
+ break;
+ --cdepth;
+ if (WEXITSTATUS(status))
++ /* It is dangerous to call non-reentrant */
++ /* functions from callback (POSIX) */
++ /* Next line effectively disables this as */
++ /* we never get here in debug */
++ if (debug)
+ syslog(LOG_DEBUG, "reaper: pid %d, exit status %d",
+- pid, WEXITSTATUS(status));
++ pid, WEXITSTATUS(status));
+ }
+ return RETSIGVAL;
+ }