openssl/doc/man3/SSL_stream_conclude.pod
Hugo Landau ff6e3a26f9 QUIC FIN Support: Documentation fixups
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/19897)
2023-01-27 14:19:15 +00:00

67 lines
1.9 KiB
Plaintext

=pod
=head1 NAME
SSL_stream_conclude - conclude the sending part of a QUIC stream
=head1 SYNOPSIS
#include <openssl/ssl.h>
__owur int SSL_stream_conclude(SSL *s, uint64_t flags);
=head1 DESCRIPTION
SSL_stream_conclude() signals the normal end-of-stream condition for the send
part of a QUIC stream. If called on a QUIC connection SSL object, it signals the
end of the single stream to the peer.
Any data already queued for transmission via a call to SSL_write() will still be
written in a reliable manner before the end-of-stream is signalled, assuming the
connection remains healthy. This function can be thought of as appending a
logical end-of-stream marker after any data which has previously been written to
the stream via calls to SSL_write(). Further attempts to call SSL_write() after
calling this function will fail.
When calling this on a stream, the receive part of the stream remains
unaffected, and the peer may continue to send data until it also signals the end
of the stream. Thus, SSL_read() can still be used.
I<flags> is reserved and should be set to 0.
Only the first call to this function has any effect for a given stream;
subsequent calls are no-ops. This is considered a success case.
=begin comment
TODO(QUIC): Once streams are implemented, revise this text
=end comment
This function is not supported on non-QUIC SSL objects.
=head1 RETURN VALUES
Returns 1 on success and 0 on failure.
Returns 0 if called on a non-QUIC SSL object.
=head1 SEE ALSO
L<ssl(7)>, L<SSL_shutdown_ex(3)>
=head1 HISTORY
The SSL_stream_conclude() function was added in OpenSSL 3.2.
=head1 COPYRIGHT
Copyright 2022 The OpenSSL Project Authors. All Rights Reserved.
Licensed under the Apache License 2.0 (the "License"). You may not use
this file except in compliance with the License. You can obtain a copy
in the file LICENSE in the source distribution or at
L<https://www.openssl.org/source/license.html>.
=cut