Module Name: src Committed By: nia Date: Fri Nov 1 16:36:58 UTC 2024
Modified Files: src/include: string.h wchar.h src/lib/libc/string: memmem.3 strlcpy.3 wmemchr.3 Log Message: libc: Expose some newly-standard C functions in POSIX.1-2024 mode To generate a diff of this commit: cvs rdiff -u -r1.54 -r1.55 src/include/string.h cvs rdiff -u -r1.45 -r1.46 src/include/wchar.h cvs rdiff -u -r1.3 -r1.4 src/lib/libc/string/memmem.3 cvs rdiff -u -r1.21 -r1.22 src/lib/libc/string/strlcpy.3 cvs rdiff -u -r1.18 -r1.19 src/lib/libc/string/wmemchr.3 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/include/string.h diff -u src/include/string.h:1.54 src/include/string.h:1.55 --- src/include/string.h:1.54 Tue Aug 1 17:51:24 2023 +++ src/include/string.h Fri Nov 1 16:36:58 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: string.h,v 1.54 2023/08/01 17:51:24 christos Exp $ */ +/* $NetBSD: string.h,v 1.55 2024/11/01 16:36:58 nia Exp $ */ /*- * Copyright (c) 1990, 1993 @@ -94,14 +94,23 @@ __aconst char *strsignal(int); #endif __END_DECLS +/* + * IEEE Std 1003.1-2024 (POSIX.1-2024) + */ +#if (_POSIX_C_SOURCE - 0) >= 202405L || (_XOPEN_SOURCE - 0 >= 800) || \ + defined(_NETBSD_SOURCE) +__BEGIN_DECLS +void *memmem(const void *, size_t, const void *, size_t); +size_t strlcat(char *, const char *, size_t); +size_t strlcpy(char *, const char *, size_t); +__END_DECLS +#endif + #if defined(_NETBSD_SOURCE) #include <strings.h> /* for backwards-compatibility */ __BEGIN_DECLS -void *memmem(const void *, size_t, const void *, size_t); char *strcasestr(const char *, const char *); char *strchrnul(const char *, int); -size_t strlcat(char *, const char *, size_t); -size_t strlcpy(char *, const char *, size_t); char *strsep(char **, const char *); char *stresep(char **, const char *, int); char *strnstr(const char *, const char *, size_t); Index: src/include/wchar.h diff -u src/include/wchar.h:1.45 src/include/wchar.h:1.46 --- src/include/wchar.h:1.45 Mon Jul 31 17:38:28 2023 +++ src/include/wchar.h Fri Nov 1 16:36:58 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: wchar.h,v 1.45 2023/07/31 17:38:28 christos Exp $ */ +/* $NetBSD: wchar.h,v 1.46 2024/11/01 16:36:58 nia Exp $ */ /*- * Copyright (c)1999 Citrus Project, @@ -134,7 +134,11 @@ wchar_t *wmempcpy(wchar_t * __restrict, wchar_t *wmemmove(wchar_t *, const wchar_t *, size_t); wchar_t *wmemset(wchar_t *, wchar_t, size_t); -#if defined(_NETBSD_SOURCE) +/* + * IEEE Std 1003.1-2024 (POSIX.1-2024) + */ +#if (_POSIX_C_SOURCE - 0) >= 202405L || (_XOPEN_SOURCE - 0 >= 800) || \ + defined(_NETBSD_SOURCE) size_t wcslcat(wchar_t *, const wchar_t *, size_t); size_t wcslcpy(wchar_t *, const wchar_t *, size_t); #endif Index: src/lib/libc/string/memmem.3 diff -u src/lib/libc/string/memmem.3:1.3 src/lib/libc/string/memmem.3:1.4 --- src/lib/libc/string/memmem.3:1.3 Wed Apr 30 13:10:51 2008 +++ src/lib/libc/string/memmem.3 Fri Nov 1 16:36:58 2024 @@ -1,4 +1,4 @@ -.\" $NetBSD: memmem.3,v 1.3 2008/04/30 13:10:51 martin Exp $ +.\" $NetBSD: memmem.3,v 1.4 2024/11/01 16:36:58 nia Exp $ .\" .\" Copyright (c) 2005 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -27,7 +27,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 12, 2005 +.Dd November 1, 2024 .Dt MEMMEM 3 .Os .Sh NAME @@ -74,11 +74,9 @@ is deemed to match the start of the stri .Xr strstr 3 .Sh STANDARDS The -.Fn memmem -function is not currently standardized. -However, it is meant to be API compatible with functions in -.Fx -and Linux. +.Nm +function conforms to +.St -p1003.1-2024 . .Sh HISTORY .Fn memmem first appeared in the Free Software Foundation's glibc library. Index: src/lib/libc/string/strlcpy.3 diff -u src/lib/libc/string/strlcpy.3:1.21 src/lib/libc/string/strlcpy.3:1.22 --- src/lib/libc/string/strlcpy.3:1.21 Fri Aug 11 21:30:32 2023 +++ src/lib/libc/string/strlcpy.3 Fri Nov 1 16:36:58 2024 @@ -1,4 +1,4 @@ -.\" $NetBSD: strlcpy.3,v 1.21 2023/08/11 21:30:32 riastradh Exp $ +.\" $NetBSD: strlcpy.3,v 1.22 2024/11/01 16:36:58 nia Exp $ .\" from OpenBSD: strlcpy.3,v 1.11 2000/11/16 23:27:41 angelos Exp .\" .\" Copyright (c) 1998, 2000 Todd C. Miller <todd.mil...@courtesan.com> @@ -26,7 +26,7 @@ .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF .\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd August 11, 2023 +.Dd November 1, 2024 .Dt STRLCPY 3 .Os .Sh NAME @@ -250,6 +250,13 @@ and .%D June 6-11, 1999 .%U http://www.usenix.org/publications/library/proceedings/usenix99/full_papers/millert/millert.pdf .Re +.Sh STANDARDS +The +.Fn strlcpy +and +.Fn strlcat +functions conform to +.St -p1003.1-2024 . .Sh HISTORY The .Fn strlcpy Index: src/lib/libc/string/wmemchr.3 diff -u src/lib/libc/string/wmemchr.3:1.18 src/lib/libc/string/wmemchr.3:1.19 --- src/lib/libc/string/wmemchr.3:1.18 Mon Jul 31 17:38:28 2023 +++ src/lib/libc/string/wmemchr.3 Fri Nov 1 16:36:58 2024 @@ -1,4 +1,4 @@ -.\" $NetBSD: wmemchr.3,v 1.18 2023/07/31 17:38:28 christos Exp $ +.\" $NetBSD: wmemchr.3,v 1.19 2024/11/01 16:36:58 nia Exp $ .\" .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. @@ -206,10 +206,14 @@ function conforms to .St -p1003.1-2008 . .Pp The -.Fn wcslcat , -.Fn wcslcpy +.Fn wcslcat and +.Fn wcslcpy +functions conform to +.St -p1003.1-2024 . +.Pp +The .Fn wmempcpy -functions are +function is a .Nx -extensions. +extension.