oracular (3) SSL_stream_conclude.3ssl.gz

Provided by: libssl-doc_3.3.1-2ubuntu2.1_all bug

NAME

       SSL_stream_conclude - conclude the sending part of a QUIC stream

SYNOPSIS

        #include <openssl/ssl.h>

        __owur int SSL_stream_conclude(SSL *s, uint64_t flags);

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 with an associated default stream, 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.

       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.

       This function is not supported on an object other than a QUIC stream SSL object.

RETURN VALUES

       Returns 1 on success and 0 on failure.

       Returns 0 if called on an SSL object not representing a QUIC stream.

SEE ALSO

       openssl-quic(7), ssl(7), SSL_shutdown_ex(3)

HISTORY

       The SSL_stream_conclude() function was added in OpenSSL 3.2.

       Copyright 2022-2023 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
       <https://www.openssl.org/source/license.html>.