Module Name: src Committed By: christos Date: Mon Jul 8 22:14:31 UTC 2024
Modified Files: src/distrib/sets/lists/comp: mi src/lib/libc/gen: Makefile.inc syslog.3 syslog_ss.c src/lib/libc/include: extern.h src/sys/sys: syslog.h Log Message: PR/58391: Noriyuki Soda: re-adding syslog_ss() to syslog.h and syslog.3 To generate a diff of this commit: cvs rdiff -u -r1.2461 -r1.2462 src/distrib/sets/lists/comp/mi cvs rdiff -u -r1.217 -r1.218 src/lib/libc/gen/Makefile.inc cvs rdiff -u -r1.33 -r1.34 src/lib/libc/gen/syslog.3 cvs rdiff -u -r1.3 -r1.4 src/lib/libc/gen/syslog_ss.c cvs rdiff -u -r1.29 -r1.30 src/lib/libc/include/extern.h cvs rdiff -u -r1.41 -r1.42 src/sys/sys/syslog.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/distrib/sets/lists/comp/mi diff -u src/distrib/sets/lists/comp/mi:1.2461 src/distrib/sets/lists/comp/mi:1.2462 --- src/distrib/sets/lists/comp/mi:1.2461 Mon Jul 1 00:03:04 2024 +++ src/distrib/sets/lists/comp/mi Mon Jul 8 18:14:30 2024 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.2461 2024/07/01 04:03:04 mrg Exp $ +# $NetBSD: mi,v 1.2462 2024/07/08 22:14:30 christos Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. ./etc/mtree/set.comp comp-sys-root @@ -10977,9 +10977,10 @@ ./usr/share/man/cat3/sysexits.0 comp-c-catman .cat ./usr/share/man/cat3/syslog.0 comp-c-catman .cat ./usr/share/man/cat3/syslog_r.0 comp-c-catman .cat -./usr/share/man/cat3/syslog_ss.0 comp-obsolete obsolete +./usr/share/man/cat3/syslog_ss.0 comp-c-catman .cat ./usr/share/man/cat3/syslogp.0 comp-c-catman .cat ./usr/share/man/cat3/syslogp_r.0 comp-c-catman .cat +./usr/share/man/cat3/syslogp_ss.0 comp-c-catman .cat ./usr/share/man/cat3/system.0 comp-c-catman .cat ./usr/share/man/cat3/t_freent.0 comp-obsolete obsolete ./usr/share/man/cat3/t_getent.0 comp-obsolete obsolete @@ -11219,9 +11220,10 @@ ./usr/share/man/cat3/vswscanf.0 comp-c-catman .cat ./usr/share/man/cat3/vsyslog.0 comp-c-catman .cat ./usr/share/man/cat3/vsyslog_r.0 comp-c-catman .cat -./usr/share/man/cat3/vsyslog_ss.0 comp-obsolete obsolete +./usr/share/man/cat3/vsyslog_ss.0 comp-c-catman .cat ./usr/share/man/cat3/vsyslogp.0 comp-c-catman .cat ./usr/share/man/cat3/vsyslogp_r.0 comp-c-catman .cat +./usr/share/man/cat3/vsyslogp_ss.0 comp-c-catman .cat ./usr/share/man/cat3/vtimes.0 comp-obsolete obsolete ./usr/share/man/cat3/vwarn.0 comp-c-catman .cat ./usr/share/man/cat3/vwarnc.0 comp-c-catman .cat @@ -19444,8 +19446,10 @@ ./usr/share/man/html3/sysexits.html comp-c-htmlman html ./usr/share/man/html3/syslog.html comp-c-htmlman html ./usr/share/man/html3/syslog_r.html comp-c-htmlman html +./usr/share/man/html3/syslog_ss.html comp-c-htmlman html ./usr/share/man/html3/syslogp.html comp-c-htmlman html ./usr/share/man/html3/syslogp_r.html comp-c-htmlman html +./usr/share/man/html3/syslogp_ss.html comp-c-htmlman html ./usr/share/man/html3/system.html comp-c-htmlman html ./usr/share/man/html3/t_freent.html comp-obsolete obsolete ./usr/share/man/html3/t_getent.html comp-obsolete obsolete @@ -19671,8 +19675,10 @@ ./usr/share/man/html3/vswscanf.html comp-c-htmlman html ./usr/share/man/html3/vsyslog.html comp-c-htmlman html ./usr/share/man/html3/vsyslog_r.html comp-c-htmlman html +./usr/share/man/html3/vsyslog_ss.html comp-c-htmlman html ./usr/share/man/html3/vsyslogp.html comp-c-htmlman html ./usr/share/man/html3/vsyslogp_r.html comp-c-htmlman html +./usr/share/man/html3/vsyslogp_ss.html comp-c-htmlman html ./usr/share/man/html3/vwarn.html comp-c-htmlman html ./usr/share/man/html3/vwarnc.html comp-c-htmlman html ./usr/share/man/html3/vwarnx.html comp-c-htmlman html @@ -27949,9 +27955,10 @@ ./usr/share/man/man3/sysexits.3 comp-c-man .man ./usr/share/man/man3/syslog.3 comp-c-man .man ./usr/share/man/man3/syslog_r.3 comp-c-man .man -./usr/share/man/man3/syslog_ss.3 comp-obsolete obsolete +./usr/share/man/man3/syslog_ss.3 comp-c-man .man ./usr/share/man/man3/syslogp.3 comp-c-man .man ./usr/share/man/man3/syslogp_r.3 comp-c-man .man +./usr/share/man/man3/syslogp_ss.3 comp-c-man .man ./usr/share/man/man3/system.3 comp-c-man .man ./usr/share/man/man3/t_freent.3 comp-obsolete obsolete ./usr/share/man/man3/t_getent.3 comp-obsolete obsolete @@ -28191,9 +28198,10 @@ ./usr/share/man/man3/vswscanf.3 comp-c-man .man ./usr/share/man/man3/vsyslog.3 comp-c-man .man ./usr/share/man/man3/vsyslog_r.3 comp-c-man .man -./usr/share/man/man3/vsyslog_ss.3 comp-obsolete obsolete +./usr/share/man/man3/vsyslog_ss.3 comp-c-man .man ./usr/share/man/man3/vsyslogp.3 comp-c-man .man ./usr/share/man/man3/vsyslogp_r.3 comp-c-man .man +./usr/share/man/man3/vsyslogp_ss.3 comp-c-man .man ./usr/share/man/man3/vtimes.3 comp-obsolete obsolete ./usr/share/man/man3/vwarn.3 comp-c-man .man ./usr/share/man/man3/vwarnc.3 comp-c-man .man Index: src/lib/libc/gen/Makefile.inc diff -u src/lib/libc/gen/Makefile.inc:1.217 src/lib/libc/gen/Makefile.inc:1.218 --- src/lib/libc/gen/Makefile.inc:1.217 Sat Jan 20 09:52:47 2024 +++ src/lib/libc/gen/Makefile.inc Mon Jul 8 18:14:31 2024 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.217 2024/01/20 14:52:47 christos Exp $ +# $NetBSD: Makefile.inc,v 1.218 2024/07/08 22:14:31 christos Exp $ # from: @(#)Makefile.inc 8.6 (Berkeley) 5/4/95 # gen sources @@ -191,9 +191,11 @@ MLINKS+=sysctl.3 sysctlbyname.3 \ MLINKS+=syslog.3 closelog.3 syslog.3 openlog.3 syslog.3 setlogmask.3 \ syslog.3 vsyslog.3 MLINKS+=syslog.3 closelog_r.3 syslog.3 openlog_r.3 syslog.3 setlogmask_r.3 \ - syslog.3 syslog_r.3 syslog.3 vsyslog_r.3 + syslog.3 syslog_r.3 syslog.3 vsyslog_r.3 \ + syslog.3 syslog_ss.3 syslog.3 vsyslog_ss.3 MLINKS+=syslog.3 syslogp.3 syslog.3 syslogp_r.3 \ - syslog.3 vsyslogp.3 syslog.3 vsyslogp_r.3 + syslog.3 vsyslogp.3 syslog.3 vsyslogp_r.3 \ + syslog.3 syslogp_ss.3 syslog.3 vsyslogp_ss.3 MLINKS+=ttyname.3 isatty.3 ttyname.3 ttyslot.3 ttyname.3 ttyname_r.3 MLINKS+=unvis.3 strunvis.3 unvis.3 strunvisx.3 MLINKS+=unvis.3 strnunvis.3 unvis.3 strnunvisx.3 Index: src/lib/libc/gen/syslog.3 diff -u src/lib/libc/gen/syslog.3:1.33 src/lib/libc/gen/syslog.3:1.34 --- src/lib/libc/gen/syslog.3:1.33 Mon Jul 3 17:32:49 2017 +++ src/lib/libc/gen/syslog.3 Mon Jul 8 18:14:31 2024 @@ -1,4 +1,4 @@ -.\" $NetBSD: syslog.3,v 1.33 2017/07/03 21:32:49 wiz Exp $ +.\" $NetBSD: syslog.3,v 1.34 2024/07/08 22:14:31 christos Exp $ .\" $OpenBSD: syslog.3,v 1.25 2005/07/22 03:16:58 jaredy Exp $ .\" .\" Copyright (c) 1985, 1991, 1993 @@ -30,7 +30,7 @@ .\" .\" @(#)syslog.3 8.1 (Berkeley) 6/4/93 .\" -.Dd March 22, 2017 +.Dd July 2, 2024 .Dt SYSLOG 3 .Os .Sh NAME @@ -40,8 +40,12 @@ .Nm vsyslog_r , .Nm syslogp , .Nm syslogp_r , +.Nm syslog_ss , +.Nm syslogp_ss , .Nm vsyslogp , .Nm vsyslogp_r , +.Nm vsyslog_ss , +.Nm vsyslogp_ss , .Nm openlog , .Nm openlog_r , .Nm closelog , @@ -61,8 +65,10 @@ .Fn syslogp "int priority" "const char *msgid" "const char *sdfmt" "const char *message" "..." .Ft void .Fn syslogp_r "int priority" "struct syslog_data *data" "const char *msgid" "const char *sdfmt" "const char *message" "..." -.\" .Ft void -.\" .Fn syslog_ss "int priority" "struct syslog_data *data" "const char *message" "..." +.Ft void +.Fn syslog_ss "int priority" "struct syslog_data *data" "const char *message" "..." +.Ft void +.Fn syslogp_ss "int priority" "struct syslog_data *data" "const char *msgid" "const char *sdfmt" "const char *message" "..." .Ft void .Fn openlog "const char *ident" "int logopt" "int facility" .Ft void @@ -84,8 +90,10 @@ .Fn vsyslogp "int priority" "const char *msgid" "const char *sdfmt" "const char *message" "va_list args" .Ft void .Fn vsyslogp_r "int priority" "struct syslog_data *data" "const char *msgid" "const char *sdfmt" "const char *message" "va_list args" -.\" .Ft void -.\" .Fn vsyslog_ss "int priority" "struct syslog_data *data" "const char *message" "va_list args" +.Ft void +.Fn vsyslog_ss "int priority" "struct syslog_data *data" "const char *message" "va_list args" +.Ft void +.Fn vsyslogp_ss "int priority" "struct syslog_data *data" "const char *msgid" "const char *sdfmt" "const char *message" "va_list args" .Sh DESCRIPTION The .Fn syslog @@ -170,29 +178,46 @@ facility code .It Va log_mask mask of priorities to be logged .El -.\" .Pp -.\" The -.\" .Fn syslog_ss -.\" is the async-signal-safe version of -.\" .Fn syslog_r -.\" and is also multithread-safe. -.\" It has the following limitations: -.\" .Bl -enum -offset indent -.\" .It -.\" The format string cannot contain multi-byte character sequences. -.\" .It -.\" Floating point formats are not supported and print -.\" .Dq UNK . -.\" .It -.\" The time of the event is not sent to -.\" .Xr syslogd 8 . -.\" .It -.\" The error string in the %m format is not printed symbolically but as -.\" .Dq Error %d . -.\" .El -.\" .Pp -.\" For more information about async-signal-safe functions and signal handlers, see -.\" .Xr signal 7 . +.Pp +The +.Fn syslog_ss +is the async-signal-safe version of +.Fn syslog_r +and is also multithread-safe. +It has the following limitations: +.Bl -enum -offset indent +.It +The format string cannot contain multi-byte character sequences. +.It +Positional +.Xr printf 3 +arguments are not supported. +.It +Floating point formats are not supported and print +.Dq UNK . +.It +The time of the event is not sent to +.Xr syslogd 8 . +.It +The error string in the %m format is not printed symbolically but as +.Dq Error %d . +.El +.Pp +For more information about async-signal-safe functions and signal handlers, see +.Xr signal 7 . +.Pp +Similarly +.Fn vsyslog_ss +is the async-signal-safe version of +.Fn vsyslog_r . +Same for +.Fn syslogp_ss +and +.Fn syslogp_r , +and finally +.Fn vsyslogp_ss +and +.Fn vsyslogp_r . .Pp The .Fn vsyslog Index: src/lib/libc/gen/syslog_ss.c diff -u src/lib/libc/gen/syslog_ss.c:1.3 src/lib/libc/gen/syslog_ss.c:1.4 --- src/lib/libc/gen/syslog_ss.c:1.3 Sun Jan 15 11:41:39 2017 +++ src/lib/libc/gen/syslog_ss.c Mon Jul 8 18:14:31 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: syslog_ss.c,v 1.3 2017/01/15 16:41:39 christos Exp $ */ +/* $NetBSD: syslog_ss.c,v 1.4 2024/07/08 22:14:31 christos Exp $ */ /*- * Copyright (c) 2016 The NetBSD Foundation, Inc. @@ -30,11 +30,12 @@ */ #include <sys/cdefs.h> #if defined(LIBC_SCCS) && !defined(lint) -__RCSID("$NetBSD: syslog_ss.c,v 1.3 2017/01/15 16:41:39 christos Exp $"); +__RCSID("$NetBSD: syslog_ss.c,v 1.4 2024/07/08 22:14:31 christos Exp $"); #endif /* LIBC_SCCS and not lint */ #include "namespace.h" #include <stdio.h> +#include <sys/syslog.h> #include "extern.h" #include "syslog_private.h" Index: src/lib/libc/include/extern.h diff -u src/lib/libc/include/extern.h:1.29 src/lib/libc/include/extern.h:1.30 --- src/lib/libc/include/extern.h:1.29 Fri Jan 19 14:31:41 2024 +++ src/lib/libc/include/extern.h Mon Jul 8 18:14:31 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: extern.h,v 1.29 2024/01/19 19:31:41 christos Exp $ */ +/* $NetBSD: extern.h,v 1.30 2024/07/08 22:14:31 christos Exp $ */ /* * Copyright (c) 1997 Christos Zoulas. All rights reserved. @@ -66,18 +66,6 @@ char *__ldtoa(long double *, int, int, i #endif char *__hdtoa(double, const char *, int, int *, int *, char **); -#ifndef __LIBC12_SOURCE__ -struct syslog_data; -void syslog_ss(int, struct syslog_data *, const char *, ...) - __RENAME(__syslog_ss60) __printflike(3, 4); -void vsyslog_ss(int, struct syslog_data *, const char *, va_list) - __RENAME(__vsyslog_ss60) __printflike(3, 0); -void syslogp_ss(int, struct syslog_data *, const char *, const char *, - const char *, ...) __RENAME(__syslogp_ss60) __printflike(5, 0); -void vsyslogp_ss(int, struct syslog_data *, const char *, const char *, - const char *, va_list) __RENAME(__vsyslogp_ss60) __printflike(5, 0); -#endif - void _malloc_prefork(void); void _malloc_postfork(void); void _malloc_postfork_child(void); Index: src/sys/sys/syslog.h diff -u src/sys/sys/syslog.h:1.41 src/sys/sys/syslog.h:1.42 --- src/sys/sys/syslog.h:1.41 Wed Mar 22 13:52:36 2017 +++ src/sys/sys/syslog.h Mon Jul 8 18:14:31 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: syslog.h,v 1.41 2017/03/22 17:52:36 roy Exp $ */ +/* $NetBSD: syslog.h,v 1.42 2024/07/08 22:14:31 christos Exp $ */ /* * Copyright (c) 1982, 1986, 1988, 1993 @@ -37,6 +37,7 @@ #include <sys/cdefs.h> #include <sys/featuretest.h> #include <sys/ansi.h> +#include <sys/stdarg.h> #define _PATH_LOG "/var/run/log" @@ -219,6 +220,14 @@ void syslogp_r(int, struct syslog_data * const char *, ...) __RENAME(__syslogp_r60) __sysloglike(5, 6); void vsyslogp_r(int, struct syslog_data *, const char *, const char *, const char *, __va_list) __RENAME(__vsyslogp_r60) __sysloglike(5, 0); +void syslog_ss(int, struct syslog_data *, const char *, ...) + __RENAME(__syslog_ss60) __sysloglike(3, 4); +void vsyslog_ss(int, struct syslog_data *, const char *, va_list) + __RENAME(__vsyslog_ss60) __sysloglike(3, 0); +void syslogp_ss(int, struct syslog_data *, const char *, const char *, + const char *, ...) __RENAME(__syslogp_ss60) __sysloglike(5, 0); +void vsyslogp_ss(int, struct syslog_data *, const char *, const char *, + const char *, va_list) __RENAME(__vsyslogp_ss60) __sysloglike(5, 0); #endif void syslogp(int, const char *, const char *, const char *, ...) __sysloglike(4, 5);