Module Name:    src
Committed By:   riastradh
Date:           Mon Sep  9 11:30:06 UTC 2024

Modified Files:
        src/distrib/sets/lists/comp: mi
        src/lib/libc/locale: Makefile.inc mbsrtowcs.3 wcsrtombs.3

Log Message:
mbsnrtowcs(3), wcsnrtombs(3): Add man pages for these mouthfuls.

Based on patch drafted by abhinav@, with a little additional tidying
by me.

PR standards/52343: wcsnrtombs missing man-page


To generate a diff of this commit:
cvs rdiff -u -r1.2472 -r1.2473 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.67 -r1.68 src/lib/libc/locale/Makefile.inc
cvs rdiff -u -r1.12 -r1.13 src/lib/libc/locale/mbsrtowcs.3
cvs rdiff -u -r1.13 -r1.14 src/lib/libc/locale/wcsrtombs.3

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.2472 src/distrib/sets/lists/comp/mi:1.2473
--- src/distrib/sets/lists/comp/mi:1.2472	Sun Aug 25 22:10:40 2024
+++ src/distrib/sets/lists/comp/mi	Mon Sep  9 11:30:05 2024
@@ -1,4 +1,4 @@
-#	$NetBSD: mi,v 1.2472 2024/08/25 22:10:40 christos Exp $
+#	$NetBSD: mi,v 1.2473 2024/09/09 11:30:05 riastradh Exp $
 #
 # Note: don't delete entries from here - mark them as "obsolete" instead.
 ./etc/mtree/set.comp				comp-sys-root
@@ -9213,6 +9213,7 @@
 ./usr/share/man/cat3/mbrtoc8.0			comp-c-catman		.cat
 ./usr/share/man/cat3/mbrtowc.0			comp-c-catman		.cat
 ./usr/share/man/cat3/mbsinit.0			comp-c-catman		.cat
+./usr/share/man/cat3/mbsnrtowcs.0		comp-c-catman		.cat
 ./usr/share/man/cat3/mbsrtowcs.0		comp-c-catman		.cat
 ./usr/share/man/cat3/mbstowcs.0			comp-c-catman		.cat
 ./usr/share/man/cat3/mbtowc.0			comp-c-catman		.cat
@@ -11286,6 +11287,7 @@
 ./usr/share/man/cat3/wcsncmp.0			comp-c-catman		.cat
 ./usr/share/man/cat3/wcsncpy.0			comp-c-catman		.cat
 ./usr/share/man/cat3/wcsnlen.0			comp-c-catman		.cat
+./usr/share/man/cat3/wcsnrtombs.0		comp-c-catman		.cat
 ./usr/share/man/cat3/wcspbrk.0			comp-c-catman		.cat
 ./usr/share/man/cat3/wcsrchr.0			comp-c-catman		.cat
 ./usr/share/man/cat3/wcsrtombs.0		comp-c-catman		.cat
@@ -17713,6 +17715,7 @@
 ./usr/share/man/html3/mbrtoc8.html		comp-c-htmlman		html
 ./usr/share/man/html3/mbrtowc.html		comp-c-htmlman		html
 ./usr/share/man/html3/mbsinit.html		comp-c-htmlman		html
+./usr/share/man/html3/mbsnrtowcs.html		comp-c-htmlman		html
 ./usr/share/man/html3/mbsrtowcs.html		comp-c-htmlman		html
 ./usr/share/man/html3/mbstowcs.html		comp-c-htmlman		html
 ./usr/share/man/html3/mbtowc.html		comp-c-htmlman		html
@@ -19764,6 +19767,7 @@
 ./usr/share/man/html3/wcsncmp.html		comp-c-htmlman		html
 ./usr/share/man/html3/wcsncpy.html		comp-c-htmlman		html
 ./usr/share/man/html3/wcsnlen.html		comp-c-htmlman		html
+./usr/share/man/html3/wcsnrtombs.html		comp-c-htmlman		html
 ./usr/share/man/html3/wcspbrk.html		comp-c-htmlman		html
 ./usr/share/man/html3/wcsrchr.html		comp-c-htmlman		html
 ./usr/share/man/html3/wcsrtombs.html		comp-c-htmlman		html
@@ -26220,6 +26224,7 @@
 ./usr/share/man/man3/mbrtoc8.3			comp-c-man		.man
 ./usr/share/man/man3/mbrtowc.3			comp-c-man		.man
 ./usr/share/man/man3/mbsinit.3			comp-c-man		.man
+./usr/share/man/man3/mbsnrtowcs.3		comp-c-man		.man
 ./usr/share/man/man3/mbsrtowcs.3		comp-c-man		.man
 ./usr/share/man/man3/mbstowcs.3			comp-c-man		.man
 ./usr/share/man/man3/mbtowc.3			comp-c-man		.man
@@ -28312,6 +28317,7 @@
 ./usr/share/man/man3/wcsncmp.3			comp-c-man		.man
 ./usr/share/man/man3/wcsncpy.3			comp-c-man		.man
 ./usr/share/man/man3/wcsnlen.3			comp-c-man		.man
+./usr/share/man/man3/wcsnrtombs.3		comp-c-man		.man
 ./usr/share/man/man3/wcspbrk.3			comp-c-man		.man
 ./usr/share/man/man3/wcsrchr.3			comp-c-man		.man
 ./usr/share/man/man3/wcsrtombs.3		comp-c-man		.man

Index: src/lib/libc/locale/Makefile.inc
diff -u src/lib/libc/locale/Makefile.inc:1.67 src/lib/libc/locale/Makefile.inc:1.68
--- src/lib/libc/locale/Makefile.inc:1.67	Thu Aug 15 21:19:45 2024
+++ src/lib/libc/locale/Makefile.inc	Mon Sep  9 11:30:05 2024
@@ -1,5 +1,5 @@
 #	from: @(#)Makefile.inc	5.1 (Berkeley) 2/18/91
-#	$NetBSD: Makefile.inc,v 1.67 2024/08/15 21:19:45 riastradh Exp $
+#	$NetBSD: Makefile.inc,v 1.68 2024/09/09 11:30:05 riastradh Exp $
 
 # locale sources
 .PATH: ${ARCHDIR}/locale ${.CURDIR}/locale
@@ -68,4 +68,7 @@ MLINKS+=wcstod.3 wcstof.3 wcstod.3 wcsto
 MLINKS+=wcstol.3 wcstoll.3 wcstol.3 wcstoimax.3 \
 	wcstol.3 wcstoul.3 wcstol.3 wcstoull.3 wcstol.3 wcstoumax.3
 
+MLINKS+=mbsrtowcs.3 mbsnrtowcs.3
+MLINKS+=wcsrtombs.3 wcsnrtombs.3
+
 COPTS.wcsftime.c = -Wno-format-nonliteral

Index: src/lib/libc/locale/mbsrtowcs.3
diff -u src/lib/libc/locale/mbsrtowcs.3:1.12 src/lib/libc/locale/mbsrtowcs.3:1.13
--- src/lib/libc/locale/mbsrtowcs.3:1.12	Thu Dec 16 17:42:27 2010
+++ src/lib/libc/locale/mbsrtowcs.3	Mon Sep  9 11:30:05 2024
@@ -1,4 +1,4 @@
-.\" $NetBSD: mbsrtowcs.3,v 1.12 2010/12/16 17:42:27 wiz Exp $
+.\" $NetBSD: mbsrtowcs.3,v 1.13 2024/09/09 11:30:05 riastradh Exp $
 .\"
 .\" Copyright (c)2002 Citrus Project,
 .\" All rights reserved.
@@ -24,12 +24,13 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd February 4, 2002
+.Dd September 9, 2024
 .Dt MBSRTOWCS 3
 .Os
 .\" ----------------------------------------------------------------------
 .Sh NAME
 .Nm mbsrtowcs
+.Nm mbsrntowcs
 .Nd converts a multibyte character string to a wide-character string \
 (restartable)
 .\" ----------------------------------------------------------------------
@@ -41,11 +42,15 @@
 .Ft size_t
 .Fn mbsrtowcs "wchar_t * restrict pwcs" "const char ** restrict s" "size_t n" \
 "mbstate_t * restrict ps"
+.Fn mbsnrtowcs "wchar_t * restrict pwcs" "const char ** restrict s" \
+"size_t nmc" "size_t n" \
+"mbstate_t * restrict ps"
 .\" ----------------------------------------------------------------------
 .Sh DESCRIPTION
 The
 .Fn mbsrtowcs
-converts the multibyte character string indirectly pointed to by
+function converts the multibyte character string indirectly pointed to
+by
 .Fa s
 to the corresponding wide-character string, and stores it in the
 array pointed to by
@@ -120,10 +125,22 @@ never changes the internal state of
 .Fn mbsrtowcs ,
 which is initialized at startup time of the program.
 .El
+.Pp
+The
+.Fn mbsnrtowcs
+function behaves identically to
+.Fn mbsrtowcs ,
+except that the conversion stops after reading at most
+.Fa nmc
+characters from the buffer pointed to by
+.Fa s .
 .\" ----------------------------------------------------------------------
 .Sh RETURN VALUES
+The
 .Fn mbsrtowcs
-returns:
+and
+.Fn mbsnrtowcs
+functions return:
 .Bl -tag -width 012345678901
 .It 0 or positive
 The value returned is the number of elements stored in the array
@@ -155,13 +172,16 @@ to indicate the error.
 .El
 .\" ----------------------------------------------------------------------
 .Sh ERRORS
+The
 .Fn mbsrtowcs
-may cause an error in the following case:
+and
+.Fn mbsnrtowcs
+functions may fail with the following errors:
 .Bl -tag -width Er
 .It Bq Er EILSEQ
-The pointer pointed to by
 .Fa s
-points to an invalid or incomplete multibyte character.
+points to a string containing an invalid or incomplete multibyte
+character.
 .It Bq Er EINVAL
 .Fa ps
 points to an invalid or uninitialized mbstate_t object.
@@ -177,5 +197,12 @@ The
 .Fn mbsrtowcs
 function conforms to
 .St -isoC-amd1 .
-The restrict qualifier is added at
+The
+.Li restrict
+qualifier was added by
 .St -isoC-99 .
+.Pp
+The
+.Fn mbsnrtowcs
+function conforms to
+.St -p1003.1-2008 .

Index: src/lib/libc/locale/wcsrtombs.3
diff -u src/lib/libc/locale/wcsrtombs.3:1.13 src/lib/libc/locale/wcsrtombs.3:1.14
--- src/lib/libc/locale/wcsrtombs.3:1.13	Thu Dec 16 17:42:27 2010
+++ src/lib/libc/locale/wcsrtombs.3	Mon Sep  9 11:30:05 2024
@@ -1,4 +1,4 @@
-.\" $NetBSD: wcsrtombs.3,v 1.13 2010/12/16 17:42:27 wiz Exp $
+.\" $NetBSD: wcsrtombs.3,v 1.14 2024/09/09 11:30:05 riastradh Exp $
 .\"
 .\" Copyright (c)2002 Citrus Project,
 .\" All rights reserved.
@@ -24,12 +24,12 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd August 8, 2006
+.Dd August 27, 2017
 .Dt WCSRTOMBS 3
 .Os
 .\" ----------------------------------------------------------------------
 .Sh NAME
-.Nm wcsrtombs
+.Nm wcsrtombs, wcsnrtombs
 .Nd converts a wide-character string to a multibyte character string \
 (restartable)
 .\" ----------------------------------------------------------------------
@@ -41,12 +41,15 @@
 .Ft size_t
 .Fn wcsrtombs "char * restrict s" "const wchar_t ** restrict pwcs" \
 "size_t n" "mbstate_t * restrict ps"
+.Ft size_t
+.Fn wcsnrtombs "char * restrict s" "const wchar_t ** restrict pwcs" \
+"size_t nwc" "size_t n" "mbstat_t * restrict ps"
 .\" ----------------------------------------------------------------------
 .Sh DESCRIPTION
 The
 .Fn wcsrtombs
-converts the nul-terminated wide-character string indirectly pointed
-to by
+function converts the nul-terminated wide-character string indirectly
+pointed to by
 .Fa pwcs
 to the corresponding multibyte character string,
 and stores it in the array pointed to by
@@ -124,10 +127,22 @@ state of
 .Fn wcsrtombs ,
 which is initialized at startup time of the program.
 .El
+.Pp
+The
+.Fn wcsnrtombs
+function behaves identically to
+.Fn wcsrtombs ,
+except that the conversion stops after reading at most
+.Fa nwc
+characters from the buffer pointed to by
+.Fa pwcs .
 .\" ----------------------------------------------------------------------
 .Sh RETURN VALUES
+The
 .Fn wcsrtombs
-returns:
+and
+.Fn wcsnrtombs
+functions return:
 .Bl -tag -width 012345678901
 .It 0 or positive
 Number of bytes stored in the array pointed to by
@@ -154,12 +169,18 @@ to indicate the error.
 .El
 .\" ----------------------------------------------------------------------
 .Sh ERRORS
+The
 .Fn wcsrtombs
-may cause an error in the following case:
+and
+.Fn wcsnrtombs
+functions may fail with the following errors:
 .Bl -tag -width Er
 .It Bq Er EILSEQ
 .Fa pwcs
 points to a string containing an invalid wide character.
+.It Bq Er EINVAL
+.Fa ps
+points to an invalid or uninitialized mbstate_t object.
 .El
 .\" ----------------------------------------------------------------------
 .Sh SEE ALSO
@@ -172,5 +193,12 @@ The
 .Fn wcsrtombs
 function conforms to
 .St -ansiC .
-The restrict qualifier is added at
+The
+.Li restrict
+qualifier was added by
 .St -isoC-99 .
+.Pp
+The
+.Fn wcsnrtombs
+function conforms to
+.St -p1003.1-2008 .

Reply via email to