46 lines
1.1 KiB
Plaintext
46 lines
1.1 KiB
Plaintext
|
=pod
|
||
|
|
||
|
=head1 NAME
|
||
|
|
||
|
SSL_pending - obtain number of readable bytes buffered in an SSL object
|
||
|
|
||
|
=head1 SYNOPSIS
|
||
|
|
||
|
#include <openssl/ssl.h>
|
||
|
|
||
|
int SSL_pending(const SSL *ssl);
|
||
|
|
||
|
=head1 DESCRIPTION
|
||
|
|
||
|
SSL_pending() returns the number of bytes which are available inside
|
||
|
B<ssl> for immediate read.
|
||
|
|
||
|
=head1 NOTES
|
||
|
|
||
|
Data are received in blocks from the peer. Therefore data can be buffered
|
||
|
inside B<ssl> and are ready for immediate retrieval with
|
||
|
L<SSL_read(3)|SSL_read(3)>.
|
||
|
|
||
|
=head1 RETURN VALUES
|
||
|
|
||
|
The number of bytes pending is returned.
|
||
|
|
||
|
=head1 BUGS
|
||
|
|
||
|
SSL_pending() takes into account only bytes from the TLS/SSL record
|
||
|
that is currently being processed (if any). If the B<SSL> object's
|
||
|
I<read_ahead> flag is set (see
|
||
|
L<SSL_CTX_set_read_ahead(3)|SSL_CTX_set_read_ahead(3)>), additional protocol
|
||
|
bytes may have been read containing more TLS/SSL records; these are ignored by
|
||
|
SSL_pending().
|
||
|
|
||
|
Up to OpenSSL 0.9.6, SSL_pending() does not check if the record type
|
||
|
of pending data is application data.
|
||
|
|
||
|
=head1 SEE ALSO
|
||
|
|
||
|
L<SSL_read(3)|SSL_read(3)>,
|
||
|
L<SSL_CTX_set_read_ahead(3)|SSL_CTX_set_read_ahead(3)>, L<ssl(3)|ssl(3)>
|
||
|
|
||
|
=cut
|