Suppress an error within syslog(). Patch from Dan Kegel. Fixes bug 191192.
authornjn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9>
Mon, 13 Jul 2009 07:02:26 +0000 (07:02 +0000)
committernjn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9>
Mon, 13 Jul 2009 07:02:26 +0000 (07:02 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10438 a5019735-40e9-0310-863c-91ae7b9d1cf9

darwin9.supp
none/tests/Makefile.am
none/tests/syslog.c [new file with mode: 0644]
none/tests/syslog.stderr.exp [new file with mode: 0644]
none/tests/syslog.vgtest [new file with mode: 0644]

index 12dce1bcb32f465a0c35df071893321a46f244cf..0689e5de5aef9f346e5fc2cd659d18c8ee39c13c 100644 (file)
@@ -1,8 +1,9 @@
 
-##----------------------------------------------------------------------##
-#
 # Suppressions for Darwin 9.x / Mac OS X 10.5 Leopard
-#
+
+##----------------------------------------------------------------------##
+# Memcheck
+##----------------------------------------------------------------------##
 
 {
    mach_msg_trap-1
    obj:/usr/lib/libSystem*
 }
 
+{
+   macos-vsyslog-hole
+   Memcheck:Param
+   socketcall.sendto(msg)
+   fun:sendto$NOCANCEL$UNIX2003
+   fun:vsyslog
+}
+
 # Still-reachable memory.
 
 # I chopped this one off at libSystem_initializer, there were more frames.
    fun:setenv$UNIX2003
 }
 
-
 ##----------------------------------------------------------------------##
-#
-# Suppressions for Helgrind.
+# Helgrind
+##----------------------------------------------------------------------##
 
 # These ones were necessary to give no errors on a tiny non-threaded
 # program.  I don't know if they're real problems or false positives (njn).
index 061eab656ca88df265ac31a0940c2f5dad7309c2..e87a3d70a9730ea77e4d9e31e1c27b3b9ec00486 100644 (file)
@@ -125,6 +125,7 @@ EXTRA_DIST = \
        stackgrowth.stdout.exp stackgrowth.stderr.exp stackgrowth.vgtest \
        syscall-restart1.vgtest syscall-restart1.stdout.exp syscall-restart1.stderr.exp \
        syscall-restart2.vgtest syscall-restart2.stdout.exp syscall-restart2.stderr.exp \
+       syslog.vgtest syslog.stderr.exp \
        system.stderr.exp system.vgtest \
        thread-exits.stderr.exp thread-exits.stdout.exp thread-exits.vgtest \
        threaded-fork.stderr.exp threaded-fork.stdout.exp threaded-fork.vgtest \
@@ -153,7 +154,9 @@ check_PROGRAMS = \
        rcrl readline1 res_search resolv \
        rlimit_nofile selfrun sem semlimit sha1_test \
        shortpush shorts stackgrowth sigstackgrowth \
-       syscall-restart1 syscall-restart2 system \
+       syscall-restart1 syscall-restart2 \
+       syslog \
+       system \
        threaded-fork threadederrno \
        tls tls.so tls2.so vgprintf \
        coolo_sigaction gxx304
diff --git a/none/tests/syslog.c b/none/tests/syslog.c
new file mode 100644 (file)
index 0000000..0f21a81
--- /dev/null
@@ -0,0 +1,9 @@
+// syslog() needs a suppression on Mac OS X (bug 191192).  This tests that.
+
+#include <syslog.h>
+
+int main()
+{
+    syslog(LOG_USER|LOG_DEBUG, "valgrind/none/tests/syslog: test message");
+    return 0;
+}
diff --git a/none/tests/syslog.stderr.exp b/none/tests/syslog.stderr.exp
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/none/tests/syslog.vgtest b/none/tests/syslog.vgtest
new file mode 100644 (file)
index 0000000..fe0713c
--- /dev/null
@@ -0,0 +1,2 @@
+prog: syslog
+vgopts: -q