From 586d9436c807f5ee5aa82dab79cc6ee40b28bb3e Mon Sep 17 00:00:00 2001 From: Pauli Date: Mon, 12 Apr 2021 13:52:19 +1000 Subject: [PATCH] bio: note that BIO_sprintf null terminates on insufficient space. Fixes: #14772 Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/14829) --- doc/man3/BIO_printf.pod | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/doc/man3/BIO_printf.pod b/doc/man3/BIO_printf.pod index 2d7c230308c..ce3e6b31ad6 100644 --- a/doc/man3/BIO_printf.pod +++ b/doc/man3/BIO_printf.pod @@ -18,16 +18,16 @@ BIO_printf, BIO_vprintf, BIO_snprintf, BIO_vsnprintf =head1 DESCRIPTION BIO_printf() is similar to the standard C printf() function, except that -the output is sent to the specified BIO, B, rather than standard +the output is sent to the specified BIO, I, rather than standard output. All common format specifiers are supported. BIO_vprintf() is similar to the vprintf() function found on many platforms, -the output is sent to the specified BIO, B, rather than standard +the output is sent to the specified BIO, I, rather than standard output. All common format specifiers are supported. The argument -list B is a stdarg argument list. +list I is a stdarg argument list. BIO_snprintf() is for platforms that do not have the common snprintf() -function. It is like sprintf() except that the size parameter, B, +function. It is like sprintf() except that the size parameter, I, specifies the size of the output buffer. BIO_vsnprintf() is to BIO_snprintf() as BIO_vprintf() is to BIO_printf(). @@ -38,6 +38,12 @@ All functions return the number of bytes written, or -1 on error. For BIO_snprintf() and BIO_vsnprintf() this includes when the output buffer is too small. +=head1 NOTES + +Except when I is 0, both BIO_snprintf() and BIO_vsnprintf() terminate +their output with C<'\0'> even when there is insufficient space to output +the whole string. + =head1 COPYRIGHT Copyright 2017-2020 The OpenSSL Project Authors. All Rights Reserved. -- 2.47.3