summaryrefslogtreecommitdiff
path: root/secure/lib/libcrypto/man/man3/BIO_f_buffer.3
diff options
context:
space:
mode:
Diffstat (limited to 'secure/lib/libcrypto/man/man3/BIO_f_buffer.3')
-rw-r--r--secure/lib/libcrypto/man/man3/BIO_f_buffer.324
1 files changed, 17 insertions, 7 deletions
diff --git a/secure/lib/libcrypto/man/man3/BIO_f_buffer.3 b/secure/lib/libcrypto/man/man3/BIO_f_buffer.3
index cc79eb36244f..0b014cc12c93 100644
--- a/secure/lib/libcrypto/man/man3/BIO_f_buffer.3
+++ b/secure/lib/libcrypto/man/man3/BIO_f_buffer.3
@@ -1,4 +1,4 @@
-.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.39)
+.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.40)
.\"
.\" Standard preamble:
.\" ========================================================================
@@ -133,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "BIO_F_BUFFER 3"
-.TH BIO_F_BUFFER 3 "2019-09-10" "1.1.1d" "OpenSSL"
+.TH BIO_F_BUFFER 3 "2020-03-17" "1.1.1e" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -179,10 +179,20 @@ is expanded.
.IX Header "NOTES"
These functions, other than \fBBIO_f_buffer()\fR, are implemented as macros.
.PP
-Buffering BIOs implement \fBBIO_gets()\fR by using \fBBIO_read_ex()\fR operations on the
-next \s-1BIO\s0 in the chain. By prepending a buffering \s-1BIO\s0 to a chain it is therefore
-possible to provide \fBBIO_gets()\fR functionality if the following BIOs do not
-support it (for example \s-1SSL\s0 BIOs).
+Buffering BIOs implement \fBBIO_read_ex()\fR and \fBBIO_gets()\fR by using
+\&\fBBIO_read_ex()\fR operations on the next \s-1BIO\s0 in the chain and storing the
+result in an internal buffer, from which bytes are given back to the
+caller as appropriate for the call; a \fBBIO_gets()\fR is guaranteed to give
+the caller a whole line, and \fBBIO_read_ex()\fR is guaranteed to give the
+caller the number of bytes it asks for, unless there's an error or end
+of communication is reached in the next \s-1BIO.\s0 By prepending a
+buffering \s-1BIO\s0 to a chain it is therefore possible to provide
+\&\fBBIO_gets()\fR or exact size \fBBIO_read_ex()\fR functionality if the following
+BIOs do not support it.
+.PP
+Do not add more than one \fBBIO_f_buffer()\fR to a \s-1BIO\s0 chain. The result of
+doing so will force a full read of the size of the internal buffer of
+the top \fBBIO_f_buffer()\fR, which is 4 KiB at a minimum.
.PP
Data is only written to the next \s-1BIO\s0 in the chain when the write buffer fills
or when \fBBIO_flush()\fR is called. It is therefore important to call \fBBIO_flush()\fR
@@ -209,7 +219,7 @@ there was an error.
\&\fBBIO_ctrl\fR\|(3).
.SH "COPYRIGHT"
.IX Header "COPYRIGHT"
-Copyright 2000\-2016 The OpenSSL Project Authors. All Rights Reserved.
+Copyright 2000\-2020 The OpenSSL Project Authors. All Rights Reserved.
.PP
Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use
this file except in compliance with the License. You can obtain a copy