summaryrefslogtreecommitdiff
path: root/libgo/go/syslog/syslog_c.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/syslog/syslog_c.c')
-rw-r--r--libgo/go/syslog/syslog_c.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/libgo/go/syslog/syslog_c.c b/libgo/go/syslog/syslog_c.c
new file mode 100644
index 000000000..f49b9ffcb
--- /dev/null
+++ b/libgo/go/syslog/syslog_c.c
@@ -0,0 +1,19 @@
+/* syslog_c.c -- call syslog for Go.
+
+ Copyright 2011 The Go Authors. All rights reserved.
+ Use of this source code is governed by a BSD-style
+ license that can be found in the LICENSE file. */
+
+#include <syslog.h>
+
+/* We need to use a C function to call the syslog function, because we
+ can't represent a C varargs function in Go. */
+
+void syslog_c(int, const char*)
+ asm ("libgo_syslog.syslog.syslog_c");
+
+void
+syslog_c (int priority, const char *msg)
+{
+ syslog (priority, "%s", msg);
+}