]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Swap sys/syslog.h with syslog.h.
authorZack Weinberg <zackw@panix.com>
Tue, 18 Jun 2019 15:45:26 +0000 (11:45 -0400)
committerZack Weinberg <zackw@panix.com>
Wed, 8 Jan 2020 17:56:34 +0000 (12:56 -0500)
Our installed syslog.h is a trivial wrapper around sys/syslog.h, which
is where all the actual declarations are.  This is backward from
POSIX, which specifies syslog.h and its contents, and does not specify
sys/syslog.h.  This arrangement appears to have been inherited from
some BSD-phylum C library, and probably pre-dates any standardization
of syslog.

This patch swaps the contents of syslog.h and sys/syslog.h, so that
the actual declarations appear under the standardized name.  Since it
is necessary to adjust all of syslog.h’s bits headers, I also added
multiple-include guards to those files that didn’t already have
them.  (All installed headers should have multiple-include guards,
even if they are internal and only used in one public header.  The
“never include this file directly” #error convention doesn’t protect
against including the internal header a second time after its parent
header has already been included.)

* misc/sys/syslog.h: Exchange contents with...
* misc/syslog.h: ...this file.  Adjust multiple-include guards.

* include/sys/syslog.h: Exchange contents with...
* include/syslog.h: ...this file.  Adjust multiple-include guards.

* bits/syslog-path.h, misc/bits/syslog-ldbl.h
* misc/bits/syslog.h: Allow inclusion by syslog.h, not sys/syslog.h.
Add multiple-include guard where not already present.

* scripts/check-obsolete-constructs.py (HEADER_ALLOWED_INCLUDES):
        Update.

bits/syslog-path.h
include/sys/syslog.h
include/syslog.h
misc/bits/syslog-ldbl.h
misc/bits/syslog.h
misc/sys/syslog.h
misc/syslog.h
scripts/check-obsolete-constructs.py

index 056db353a743ab10ec56d006ed9b6503bb5b423e..826d935c2b51cfb2a385796ab0dbebc96210cb53 100644 (file)
    License along with the GNU C Library; if not, see
    <https://www.gnu.org/licenses/>.  */
 
-#ifndef _SYS_SYSLOG_H
-# error "Never include this file directly.  Use <sys/syslog.h> instead"
-#endif
-
 #ifndef _BITS_SYSLOG_PATH_H
 #define _BITS_SYSLOG_PATH_H 1
 
+#ifndef _SYSLOG_H
+# error "Never include <bits/syslog-path.h> directly.  Use <syslog.h> instead"
+#endif
+
 #define        _PATH_LOG       "/dev/log"
 
 #endif /* bits/syslog-path.h */
index 89d3479ebc8d58f148d4b7a305e8aff3695ba74b..7d6e3bc46c3e8f8211354eaa3b10de5d7dcfe222 100644 (file)
@@ -1,16 +1,3 @@
-#ifndef _LIBC_SYS_SYSLOG_H
-#define _LIBC_SYS_SYSLOG_H 1
+#ifndef _SYSLOG_H
 #include <misc/sys/syslog.h>
-#ifndef _ISOMAC
-
-libc_hidden_proto (syslog)
-
-/* __vsyslog_internal uses the same mode_flags bits as
-   __v*printf_internal; see libio/libioP.h.  */
-extern void __vsyslog_internal (int pri, const char *fmt, __gnuc_va_list ap,
-                               unsigned int mode_flags)
-     attribute_hidden
-     __attribute__ ((__format__ (__printf__, 2, 0)));
-
-#endif /* _ISOMAC */
-#endif /* syslog.h */
+#endif
index 4cfb7723bb7c8c16237a1fa6726e6b8f1518eb40..5dc6e76b7e4949835f30c2f9fdf0b7ec04140e27 100644 (file)
@@ -1 +1,15 @@
-#include <misc/syslog.h>
+#ifndef _SYSLOG_H
+# include <misc/syslog.h>
+#ifndef _ISOMAC
+
+libc_hidden_proto (syslog)
+
+/* __vsyslog_internal uses the same mode_flags bits as
+   __v*printf_internal; see libio/libioP.h.  */
+extern void __vsyslog_internal (int pri, const char *fmt, __gnuc_va_list ap,
+                               unsigned int mode_flags)
+     attribute_hidden
+     __attribute__ ((__format__ (__printf__, 2, 0)));
+
+#endif /* _ISOMAC */
+#endif /* syslog.h */
index fead0d4648c89243bc1ebafcec1548272ed7f973..445fef0b8631726f2db1420f87fa08961139ddd2 100644 (file)
    License along with the GNU C Library; if not, see
    <https://www.gnu.org/licenses/>.  */
 
-#ifndef _SYS_SYSLOG_H
-# error "Never include <bits/syslog-ldbl.h> directly; use <sys/syslog.h> instead."
+#ifndef _BITS_SYSLOG_LDBL_H
+#define _BITS_SYSLOG_LDBL_H 1
+
+#ifndef _SYSLOG_H
+# error "Never include <bits/syslog-ldbl.h> directly; use <syslog.h> instead."
 #endif
 
 __LDBL_REDIR_DECL (syslog)
@@ -33,3 +36,5 @@ __LDBL_REDIR_DECL (__syslog_chk)
 __LDBL_REDIR_DECL (__vsyslog_chk)
 # endif
 #endif
+
+#endif /* bits/syslog-ldbl.h */
index 322192df21059bc6ca1e7bedf92caaadb0e91db9..0f0b628a33c59dd515b863b910e0c46691032f07 100644 (file)
    License along with the GNU C Library; if not, see
    <https://www.gnu.org/licenses/>.  */
 
-#ifndef _SYS_SYSLOG_H
-# error "Never include <bits/syslog.h> directly; use <sys/syslog.h> instead."
+#ifndef _BITS_SYSLOG_H
+#define _BITS_SYSLOG_H 1
+
+#ifndef _SYSLOG_H
+# error "Never include <bits/syslog.h> directly; use <syslog.h> instead."
 #endif
 
 
@@ -47,3 +50,5 @@ vsyslog (int __pri, const char *__fmt, __gnuc_va_list __ap)
   __vsyslog_chk (__pri,  __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
 }
 #endif
+
+#endif /* bits/syslog.h */
index ee01478c4b19a954426a96448577c5a76e6647c0..9fc15930fbda9d888767166e6f880bb607c685f3 100644 (file)
@@ -1,215 +1,3 @@
-/*
- * Copyright (c) 1982, 1986, 1988, 1993
- *     The Regents of the University of California.  All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *     @(#)syslog.h    8.1 (Berkeley) 6/2/93
- */
-
-#ifndef _SYS_SYSLOG_H
-#define _SYS_SYSLOG_H 1
-
-#include <features.h>
-#define __need___va_list
-#include <stdarg.h>
-
-/* This file defines _PATH_LOG.  */
-#include <bits/syslog-path.h>
-
-/*
- * priorities/facilities are encoded into a single 32-bit quantity, where the
- * bottom 3 bits are the priority (0-7) and the top 28 bits are the facility
- * (0-big number).  Both the priorities and the facilities map roughly
- * one-to-one to strings in the syslogd(8) source code.  This mapping is
- * included in this file.
- *
- * priorities (these are ordered)
- */
-#define        LOG_EMERG       0       /* system is unusable */
-#define        LOG_ALERT       1       /* action must be taken immediately */
-#define        LOG_CRIT        2       /* critical conditions */
-#define        LOG_ERR         3       /* error conditions */
-#define        LOG_WARNING     4       /* warning conditions */
-#define        LOG_NOTICE      5       /* normal but significant condition */
-#define        LOG_INFO        6       /* informational */
-#define        LOG_DEBUG       7       /* debug-level messages */
-
-#define        LOG_PRIMASK     0x07    /* mask to extract priority part (internal) */
-                               /* extract priority */
-#define        LOG_PRI(p)      ((p) & LOG_PRIMASK)
-#define        LOG_MAKEPRI(fac, pri)   ((fac) | (pri))
-
-#ifdef SYSLOG_NAMES
-#define        INTERNAL_NOPRI  0x10    /* the "no priority" priority */
-                               /* mark "facility" */
-#define        INTERNAL_MARK   LOG_MAKEPRI(LOG_NFACILITIES << 3, 0)
-typedef struct _code {
-       char    *c_name;
-       int     c_val;
-} CODE;
-
-CODE prioritynames[] =
-  {
-    { "alert", LOG_ALERT },
-    { "crit", LOG_CRIT },
-    { "debug", LOG_DEBUG },
-    { "emerg", LOG_EMERG },
-    { "err", LOG_ERR },
-    { "error", LOG_ERR },              /* DEPRECATED */
-    { "info", LOG_INFO },
-    { "none", INTERNAL_NOPRI },                /* INTERNAL */
-    { "notice", LOG_NOTICE },
-    { "panic", LOG_EMERG },            /* DEPRECATED */
-    { "warn", LOG_WARNING },           /* DEPRECATED */
-    { "warning", LOG_WARNING },
-    { NULL, -1 }
-  };
+#ifndef _SYSLOG_H
+# include <syslog.h>
 #endif
-
-/* facility codes */
-#define        LOG_KERN        (0<<3)  /* kernel messages */
-#define        LOG_USER        (1<<3)  /* random user-level messages */
-#define        LOG_MAIL        (2<<3)  /* mail system */
-#define        LOG_DAEMON      (3<<3)  /* system daemons */
-#define        LOG_AUTH        (4<<3)  /* security/authorization messages */
-#define        LOG_SYSLOG      (5<<3)  /* messages generated internally by syslogd */
-#define        LOG_LPR         (6<<3)  /* line printer subsystem */
-#define        LOG_NEWS        (7<<3)  /* network news subsystem */
-#define        LOG_UUCP        (8<<3)  /* UUCP subsystem */
-#define        LOG_CRON        (9<<3)  /* clock daemon */
-#define        LOG_AUTHPRIV    (10<<3) /* security/authorization messages (private) */
-#define        LOG_FTP         (11<<3) /* ftp daemon */
-
-       /* other codes through 15 reserved for system use */
-#define        LOG_LOCAL0      (16<<3) /* reserved for local use */
-#define        LOG_LOCAL1      (17<<3) /* reserved for local use */
-#define        LOG_LOCAL2      (18<<3) /* reserved for local use */
-#define        LOG_LOCAL3      (19<<3) /* reserved for local use */
-#define        LOG_LOCAL4      (20<<3) /* reserved for local use */
-#define        LOG_LOCAL5      (21<<3) /* reserved for local use */
-#define        LOG_LOCAL6      (22<<3) /* reserved for local use */
-#define        LOG_LOCAL7      (23<<3) /* reserved for local use */
-
-#define        LOG_NFACILITIES 24      /* current number of facilities */
-#define        LOG_FACMASK     0x03f8  /* mask to extract facility part */
-                               /* facility of pri */
-#define        LOG_FAC(p)      (((p) & LOG_FACMASK) >> 3)
-
-#ifdef SYSLOG_NAMES
-CODE facilitynames[] =
-  {
-    { "auth", LOG_AUTH },
-    { "authpriv", LOG_AUTHPRIV },
-    { "cron", LOG_CRON },
-    { "daemon", LOG_DAEMON },
-    { "ftp", LOG_FTP },
-    { "kern", LOG_KERN },
-    { "lpr", LOG_LPR },
-    { "mail", LOG_MAIL },
-    { "mark", INTERNAL_MARK },         /* INTERNAL */
-    { "news", LOG_NEWS },
-    { "security", LOG_AUTH },          /* DEPRECATED */
-    { "syslog", LOG_SYSLOG },
-    { "user", LOG_USER },
-    { "uucp", LOG_UUCP },
-    { "local0", LOG_LOCAL0 },
-    { "local1", LOG_LOCAL1 },
-    { "local2", LOG_LOCAL2 },
-    { "local3", LOG_LOCAL3 },
-    { "local4", LOG_LOCAL4 },
-    { "local5", LOG_LOCAL5 },
-    { "local6", LOG_LOCAL6 },
-    { "local7", LOG_LOCAL7 },
-    { NULL, -1 }
-  };
-#endif
-
-/*
- * arguments to setlogmask.
- */
-#define        LOG_MASK(pri)   (1 << (pri))            /* mask for one priority */
-#define        LOG_UPTO(pri)   ((1 << ((pri)+1)) - 1)  /* all priorities through pri */
-
-/*
- * Option flags for openlog.
- *
- * LOG_ODELAY no longer does anything.
- * LOG_NDELAY is the inverse of what it used to be.
- */
-#define        LOG_PID         0x01    /* log the pid with each message */
-#define        LOG_CONS        0x02    /* log on the console if errors in sending */
-#define        LOG_ODELAY      0x04    /* delay open until first syslog() (default) */
-#define        LOG_NDELAY      0x08    /* don't delay open */
-#define        LOG_NOWAIT      0x10    /* don't wait for console forks: DEPRECATED */
-#define        LOG_PERROR      0x20    /* log to stderr as well */
-
-__BEGIN_DECLS
-
-/* Close descriptor used to write to system logger.
-
-   This function is a possible cancellation point and therefore not
-   marked with __THROW.  */
-extern void closelog (void);
-
-/* Open connection to system logger.
-
-   This function is a possible cancellation point and therefore not
-   marked with __THROW.  */
-extern void openlog (const char *__ident, int __option, int __facility);
-
-/* Set the log mask level.  */
-extern int setlogmask (int __mask) __THROW;
-
-/* Generate a log message using FMT string and option arguments.
-
-   This function is a possible cancellation point and therefore not
-   marked with __THROW.  */
-extern void syslog (int __pri, const char *__fmt, ...)
-     __attribute__ ((__format__ (__printf__, 2, 3)));
-
-#ifdef __USE_MISC
-/* Generate a log message using FMT and using arguments pointed to by AP.
-
-   This function is not part of POSIX and therefore no official
-   cancellation point.  But due to similarity with an POSIX interface
-   or due to the implementation it is a cancellation point and
-   therefore not marked with __THROW.  */
-extern void vsyslog (int __pri, const char *__fmt, __gnuc_va_list __ap)
-     __attribute__ ((__format__ (__printf__, 2, 0)));
-#endif
-
-
-/* Define some macros helping to catch buffer overflows.  */
-#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function
-# include <bits/syslog.h>
-#endif
-#ifdef __LDBL_COMPAT
-# include <bits/syslog-ldbl.h>
-#endif
-
-__END_DECLS
-
-#endif /* sys/syslog.h */
index 830b4928ad6fda0bbd23776352d43f3cfb2ad186..406133ba71ddcb47d9dbbbdaa2dba9303a275cac 100644 (file)
@@ -1 +1,215 @@
-#include <sys/syslog.h>
+/*
+ * Copyright (c) 1982, 1986, 1988, 1993
+ *     The Regents of the University of California.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *     @(#)syslog.h    8.1 (Berkeley) 6/2/93
+ */
+
+#ifndef _SYSLOG_H
+#define _SYSLOG_H 1
+
+#include <features.h>
+#define __need___va_list
+#include <stdarg.h>
+
+/* This file defines _PATH_LOG.  */
+#include <bits/syslog-path.h>
+
+/*
+ * priorities/facilities are encoded into a single 32-bit quantity, where the
+ * bottom 3 bits are the priority (0-7) and the top 28 bits are the facility
+ * (0-big number).  Both the priorities and the facilities map roughly
+ * one-to-one to strings in the syslogd(8) source code.  This mapping is
+ * included in this file.
+ *
+ * priorities (these are ordered)
+ */
+#define        LOG_EMERG       0       /* system is unusable */
+#define        LOG_ALERT       1       /* action must be taken immediately */
+#define        LOG_CRIT        2       /* critical conditions */
+#define        LOG_ERR         3       /* error conditions */
+#define        LOG_WARNING     4       /* warning conditions */
+#define        LOG_NOTICE      5       /* normal but significant condition */
+#define        LOG_INFO        6       /* informational */
+#define        LOG_DEBUG       7       /* debug-level messages */
+
+#define        LOG_PRIMASK     0x07    /* mask to extract priority part (internal) */
+                               /* extract priority */
+#define        LOG_PRI(p)      ((p) & LOG_PRIMASK)
+#define        LOG_MAKEPRI(fac, pri)   ((fac) | (pri))
+
+#ifdef SYSLOG_NAMES
+#define        INTERNAL_NOPRI  0x10    /* the "no priority" priority */
+                               /* mark "facility" */
+#define        INTERNAL_MARK   LOG_MAKEPRI(LOG_NFACILITIES << 3, 0)
+typedef struct _code {
+       char    *c_name;
+       int     c_val;
+} CODE;
+
+CODE prioritynames[] =
+  {
+    { "alert", LOG_ALERT },
+    { "crit", LOG_CRIT },
+    { "debug", LOG_DEBUG },
+    { "emerg", LOG_EMERG },
+    { "err", LOG_ERR },
+    { "error", LOG_ERR },              /* DEPRECATED */
+    { "info", LOG_INFO },
+    { "none", INTERNAL_NOPRI },                /* INTERNAL */
+    { "notice", LOG_NOTICE },
+    { "panic", LOG_EMERG },            /* DEPRECATED */
+    { "warn", LOG_WARNING },           /* DEPRECATED */
+    { "warning", LOG_WARNING },
+    { NULL, -1 }
+  };
+#endif
+
+/* facility codes */
+#define        LOG_KERN        (0<<3)  /* kernel messages */
+#define        LOG_USER        (1<<3)  /* random user-level messages */
+#define        LOG_MAIL        (2<<3)  /* mail system */
+#define        LOG_DAEMON      (3<<3)  /* system daemons */
+#define        LOG_AUTH        (4<<3)  /* security/authorization messages */
+#define        LOG_SYSLOG      (5<<3)  /* messages generated internally by syslogd */
+#define        LOG_LPR         (6<<3)  /* line printer subsystem */
+#define        LOG_NEWS        (7<<3)  /* network news subsystem */
+#define        LOG_UUCP        (8<<3)  /* UUCP subsystem */
+#define        LOG_CRON        (9<<3)  /* clock daemon */
+#define        LOG_AUTHPRIV    (10<<3) /* security/authorization messages (private) */
+#define        LOG_FTP         (11<<3) /* ftp daemon */
+
+       /* other codes through 15 reserved for system use */
+#define        LOG_LOCAL0      (16<<3) /* reserved for local use */
+#define        LOG_LOCAL1      (17<<3) /* reserved for local use */
+#define        LOG_LOCAL2      (18<<3) /* reserved for local use */
+#define        LOG_LOCAL3      (19<<3) /* reserved for local use */
+#define        LOG_LOCAL4      (20<<3) /* reserved for local use */
+#define        LOG_LOCAL5      (21<<3) /* reserved for local use */
+#define        LOG_LOCAL6      (22<<3) /* reserved for local use */
+#define        LOG_LOCAL7      (23<<3) /* reserved for local use */
+
+#define        LOG_NFACILITIES 24      /* current number of facilities */
+#define        LOG_FACMASK     0x03f8  /* mask to extract facility part */
+                               /* facility of pri */
+#define        LOG_FAC(p)      (((p) & LOG_FACMASK) >> 3)
+
+#ifdef SYSLOG_NAMES
+CODE facilitynames[] =
+  {
+    { "auth", LOG_AUTH },
+    { "authpriv", LOG_AUTHPRIV },
+    { "cron", LOG_CRON },
+    { "daemon", LOG_DAEMON },
+    { "ftp", LOG_FTP },
+    { "kern", LOG_KERN },
+    { "lpr", LOG_LPR },
+    { "mail", LOG_MAIL },
+    { "mark", INTERNAL_MARK },         /* INTERNAL */
+    { "news", LOG_NEWS },
+    { "security", LOG_AUTH },          /* DEPRECATED */
+    { "syslog", LOG_SYSLOG },
+    { "user", LOG_USER },
+    { "uucp", LOG_UUCP },
+    { "local0", LOG_LOCAL0 },
+    { "local1", LOG_LOCAL1 },
+    { "local2", LOG_LOCAL2 },
+    { "local3", LOG_LOCAL3 },
+    { "local4", LOG_LOCAL4 },
+    { "local5", LOG_LOCAL5 },
+    { "local6", LOG_LOCAL6 },
+    { "local7", LOG_LOCAL7 },
+    { NULL, -1 }
+  };
+#endif
+
+/*
+ * arguments to setlogmask.
+ */
+#define        LOG_MASK(pri)   (1 << (pri))            /* mask for one priority */
+#define        LOG_UPTO(pri)   ((1 << ((pri)+1)) - 1)  /* all priorities through pri */
+
+/*
+ * Option flags for openlog.
+ *
+ * LOG_ODELAY no longer does anything.
+ * LOG_NDELAY is the inverse of what it used to be.
+ */
+#define        LOG_PID         0x01    /* log the pid with each message */
+#define        LOG_CONS        0x02    /* log on the console if errors in sending */
+#define        LOG_ODELAY      0x04    /* delay open until first syslog() (default) */
+#define        LOG_NDELAY      0x08    /* don't delay open */
+#define        LOG_NOWAIT      0x10    /* don't wait for console forks: DEPRECATED */
+#define        LOG_PERROR      0x20    /* log to stderr as well */
+
+__BEGIN_DECLS
+
+/* Close descriptor used to write to system logger.
+
+   This function is a possible cancellation point and therefore not
+   marked with __THROW.  */
+extern void closelog (void);
+
+/* Open connection to system logger.
+
+   This function is a possible cancellation point and therefore not
+   marked with __THROW.  */
+extern void openlog (const char *__ident, int __option, int __facility);
+
+/* Set the log mask level.  */
+extern int setlogmask (int __mask) __THROW;
+
+/* Generate a log message using FMT string and option arguments.
+
+   This function is a possible cancellation point and therefore not
+   marked with __THROW.  */
+extern void syslog (int __pri, const char *__fmt, ...)
+     __attribute__ ((__format__ (__printf__, 2, 3)));
+
+#ifdef __USE_MISC
+/* Generate a log message using FMT and using arguments pointed to by AP.
+
+   This function is not part of POSIX and therefore no official
+   cancellation point.  But due to similarity with an POSIX interface
+   or due to the implementation it is a cancellation point and
+   therefore not marked with __THROW.  */
+extern void vsyslog (int __pri, const char *__fmt, __gnuc_va_list __ap)
+     __attribute__ ((__format__ (__printf__, 2, 0)));
+#endif
+
+
+/* Define some macros helping to catch buffer overflows.  */
+#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function
+# include <bits/syslog.h>
+#endif
+#ifdef __LDBL_COMPAT
+# include <bits/syslog-ldbl.h>
+#endif
+
+__END_DECLS
+
+#endif /* sys/syslog.h */
index af2d14bca08c2bb6763d2e9890461100e6cabe64..6f5d21c2bb12bbdebb0c97faed7371f3c124af24 100755 (executable)
@@ -635,12 +635,12 @@ HEADER_ALLOWED_INCLUDES = {
     "memory.h":                    [ "string.h" ],
     "poll.h":                      [ "sys/poll.h" ],
     "re_comp.h":                   [ "regex.h" ],
-    "syslog.h":                    [ "sys/syslog.h" ],
     "sys/bitypes.h":               [ "sys/types.h" ],
     "sys/dir.h":                   [ "dirent.h" ],
     "sys/errno.h":                 [ "errno.h" ],
     "sys/fcntl.h":                 [ "fcntl.h" ],
     "sys/signal.h":                [ "signal.h" ],
+    "sys/syslog.h":                [ "syslog.h" ],
     "sys/termios.h":               [ "termios.h" ],
     "sys/unistd.h":                [ "unistd.h" ],
     "syscall.h":                   [ "sys/syscall.h" ],