mirror of
https://github.com/openssl/openssl.git
synced 2024-11-21 01:15:20 +08:00
Change "a SSL" to "an SSL"
Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com> (Merged from https://github.com/openssl/openssl/pull/25868)
This commit is contained in:
parent
837f05fc30
commit
ef39dd058b
10
CHANGES.md
10
CHANGES.md
@ -8606,7 +8606,7 @@ OpenSSL 1.0.1
|
|||||||
*Matt Caswell*
|
*Matt Caswell*
|
||||||
|
|
||||||
* Fix issue where no-ssl3 configuration sets method to NULL. When openssl is
|
* Fix issue where no-ssl3 configuration sets method to NULL. When openssl is
|
||||||
built with the no-ssl3 option and a SSL v3 ClientHello is received the ssl
|
built with the no-ssl3 option and an SSL v3 ClientHello is received the ssl
|
||||||
method would be set to NULL which could later result in a NULL pointer
|
method would be set to NULL which could later result in a NULL pointer
|
||||||
dereference. Thanks to Frank Schmirler for reporting this issue.
|
dereference. Thanks to Frank Schmirler for reporting this issue.
|
||||||
([CVE-2014-3569])
|
([CVE-2014-3569])
|
||||||
@ -9671,7 +9671,7 @@ OpenSSL 1.0.0
|
|||||||
*Matt Caswell*
|
*Matt Caswell*
|
||||||
|
|
||||||
* Fix issue where no-ssl3 configuration sets method to NULL. When openssl is
|
* Fix issue where no-ssl3 configuration sets method to NULL. When openssl is
|
||||||
built with the no-ssl3 option and a SSL v3 ClientHello is received the ssl
|
built with the no-ssl3 option and an SSL v3 ClientHello is received the ssl
|
||||||
method would be set to NULL which could later result in a NULL pointer
|
method would be set to NULL which could later result in a NULL pointer
|
||||||
dereference. Thanks to Frank Schmirler for reporting this issue.
|
dereference. Thanks to Frank Schmirler for reporting this issue.
|
||||||
([CVE-2014-3569])
|
([CVE-2014-3569])
|
||||||
@ -15802,7 +15802,7 @@ s-cbc 3624.96k 5258.21k 5530.91k 5624.30k 5628.26k
|
|||||||
|
|
||||||
*stefank@valicert.com via Richard Levitte*
|
*stefank@valicert.com via Richard Levitte*
|
||||||
|
|
||||||
* Add a SSL_SESS_CACHE_NO_INTERNAL_STORE flag to take over half
|
* Add an SSL_SESS_CACHE_NO_INTERNAL_STORE flag to take over half
|
||||||
the job SSL_SESS_CACHE_NO_INTERNAL_LOOKUP was inconsistently
|
the job SSL_SESS_CACHE_NO_INTERNAL_LOOKUP was inconsistently
|
||||||
doing, define a new flag (SSL_SESS_CACHE_NO_INTERNAL) to be
|
doing, define a new flag (SSL_SESS_CACHE_NO_INTERNAL) to be
|
||||||
the bitwise-OR of the two for use by the majority of applications
|
the bitwise-OR of the two for use by the majority of applications
|
||||||
@ -16351,7 +16351,7 @@ s-cbc 3624.96k 5258.21k 5530.91k 5624.30k 5628.26k
|
|||||||
### Changes between 0.9.6a and 0.9.6b [9 Jul 2001]
|
### Changes between 0.9.6a and 0.9.6b [9 Jul 2001]
|
||||||
|
|
||||||
* Change ssleay_rand_bytes (crypto/rand/md_rand.c)
|
* Change ssleay_rand_bytes (crypto/rand/md_rand.c)
|
||||||
to avoid a SSLeay/OpenSSL PRNG weakness pointed out by
|
to avoid an SSLeay/OpenSSL PRNG weakness pointed out by
|
||||||
Markku-Juhani O. Saarinen <markku-juhani.saarinen@nokia.com>:
|
Markku-Juhani O. Saarinen <markku-juhani.saarinen@nokia.com>:
|
||||||
PRNG state recovery was possible based on the output of
|
PRNG state recovery was possible based on the output of
|
||||||
one PRNG request appropriately sized to gain knowledge on
|
one PRNG request appropriately sized to gain knowledge on
|
||||||
@ -18952,7 +18952,7 @@ s-cbc 3624.96k 5258.21k 5530.91k 5624.30k 5628.26k
|
|||||||
|
|
||||||
* Bugfix: ssl23_get_client_hello did not work properly when called in
|
* Bugfix: ssl23_get_client_hello did not work properly when called in
|
||||||
state SSL23_ST_SR_CLNT_HELLO_B, i.e. when the first 7 bytes of
|
state SSL23_ST_SR_CLNT_HELLO_B, i.e. when the first 7 bytes of
|
||||||
a SSLv2-compatible client hello for SSLv3 or TLSv1 could be read,
|
an SSLv2-compatible client hello for SSLv3 or TLSv1 could be read,
|
||||||
but a retry condition occurred while trying to read the rest.
|
but a retry condition occurred while trying to read the rest.
|
||||||
|
|
||||||
*Bodo Moeller*
|
*Bodo Moeller*
|
||||||
|
@ -59,7 +59,7 @@ int main(int argc, char *argv[])
|
|||||||
if (!SSL_CTX_load_verify_locations(ssl_ctx, CAfile, NULL))
|
if (!SSL_CTX_load_verify_locations(ssl_ctx, CAfile, NULL))
|
||||||
goto err;
|
goto err;
|
||||||
|
|
||||||
/* Lets make a SSL structure */
|
/* Let's make an SSL structure */
|
||||||
ssl = SSL_new(ssl_ctx);
|
ssl = SSL_new(ssl_ctx);
|
||||||
SSL_set_connect_state(ssl);
|
SSL_set_connect_state(ssl);
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ OSSL_DEMO_H3_CONN *OSSL_DEMO_H3_CONN_new_for_conn(BIO *qconn_bio,
|
|||||||
* underlying QUIC connection SSL object is owned by the OSSL_DEMO_H3_CONN and
|
* underlying QUIC connection SSL object is owned by the OSSL_DEMO_H3_CONN and
|
||||||
* can be subsequently retrieved using OSSL_DEMO_H3_CONN_get0_connection.
|
* can be subsequently retrieved using OSSL_DEMO_H3_CONN_get0_connection.
|
||||||
*
|
*
|
||||||
* Returns NULL on failure. ctx must be a SSL_CTX using a QUIC client
|
* Returns NULL on failure. ctx must be an SSL_CTX using a QUIC client
|
||||||
* SSL_METHOD.
|
* SSL_METHOD.
|
||||||
*/
|
*/
|
||||||
OSSL_DEMO_H3_CONN *OSSL_DEMO_H3_CONN_new_for_addr(SSL_CTX *ctx,
|
OSSL_DEMO_H3_CONN *OSSL_DEMO_H3_CONN_new_for_addr(SSL_CTX *ctx,
|
||||||
|
@ -122,7 +122,7 @@ The following additional changes needed to be made:
|
|||||||
The following changes were foreseen to be necessary, but turned out to actually
|
The following changes were foreseen to be necessary, but turned out to actually
|
||||||
not be necessary:
|
not be necessary:
|
||||||
|
|
||||||
- The need to change code which pushes a `BIO_f_buffer()` after a SSL BIO
|
- The need to change code which pushes a `BIO_f_buffer()` after an SSL BIO
|
||||||
was foreseen as use of buffering on the network side is unworkable with
|
was foreseen as use of buffering on the network side is unworkable with
|
||||||
QUIC. This turned out not to be necessary since we can just reject the
|
QUIC. This turned out not to be necessary since we can just reject the
|
||||||
BIO_push() call. The buffer should still be freed eventually when the
|
BIO_push() call. The buffer should still be freed eventually when the
|
||||||
|
@ -75,7 +75,7 @@ for errors happening in the internal assistance thread. When a permanent error
|
|||||||
is detected the error stack entries are moved to this error stack in
|
is detected the error stack entries are moved to this error stack in
|
||||||
QUIC_CHANNEL.
|
QUIC_CHANNEL.
|
||||||
|
|
||||||
When returning to an application from a SSL_read()/SSL_write() call with
|
When returning to an application from an SSL_read()/SSL_write() call with
|
||||||
a permanent connection error, entries from the QUIC_CHANNEL error stack
|
a permanent connection error, entries from the QUIC_CHANNEL error stack
|
||||||
are copied to the thread local error stack. They are always kept on
|
are copied to the thread local error stack. They are always kept on
|
||||||
the QUIC_CHANNEL error stack as well for possible further calls from
|
the QUIC_CHANNEL error stack as well for possible further calls from
|
||||||
|
@ -151,7 +151,7 @@ Initial packets. It is only used temporarily.
|
|||||||
`SSL_new` using a QUIC method.
|
`SSL_new` using a QUIC method.
|
||||||
|
|
||||||
**QCTX**: QUIC Context. This is a utility object defined within the QUIC APL
|
**QCTX**: QUIC Context. This is a utility object defined within the QUIC APL
|
||||||
which helps to unwrap a SSL object pointer (a QCSO or QSSO) into the relevant
|
which helps to unwrap an SSL object pointer (a QCSO or QSSO) into the relevant
|
||||||
structure pointers such as `QUIC_CONNECTION` or `QUIC_XSO`.
|
structure pointers such as `QUIC_CONNECTION` or `QUIC_XSO`.
|
||||||
|
|
||||||
**QRL:** QUIC record layer. Refers collectively to the QRX and QTX.
|
**QRL:** QUIC record layer. Refers collectively to the QRX and QTX.
|
||||||
|
@ -929,7 +929,7 @@ TODO: new_session_ticket doesn't need modifying as such, but ticket machinery
|
|||||||
|
|
||||||
### What should `SSL_pending` and `SSL_has_pending` do?
|
### What should `SSL_pending` and `SSL_has_pending` do?
|
||||||
|
|
||||||
`SSL_pending` traditionally yields the number of bytes buffered inside a SSL
|
`SSL_pending` traditionally yields the number of bytes buffered inside an SSL
|
||||||
object available for immediate reading. For QUIC, we can just make this report
|
object available for immediate reading. For QUIC, we can just make this report
|
||||||
the current size of the receive stream buffer.
|
the current size of the receive stream buffer.
|
||||||
|
|
||||||
|
@ -563,7 +563,7 @@ int SSL_shutdown_ex(SSL *ssl,
|
|||||||
are read only on the first call to `SSL_shutdown_ex` for a given SSL object and
|
are read only on the first call to `SSL_shutdown_ex` for a given SSL object and
|
||||||
subsequent calls to `SSL_shutdown_ex` ignore the `args` argument. `args_len`
|
subsequent calls to `SSL_shutdown_ex` ignore the `args` argument. `args_len`
|
||||||
should be set to `sizeof(*args)`. This function is idempotent; once the shutdown
|
should be set to `sizeof(*args)`. This function is idempotent; once the shutdown
|
||||||
process for a SSL object is complete, further calls are a no-op and return 1.
|
process for an SSL object is complete, further calls are a no-op and return 1.
|
||||||
|
|
||||||
Calling `SSL_shutdown_ex` on a QUIC connection SSL object causes the immediate
|
Calling `SSL_shutdown_ex` on a QUIC connection SSL object causes the immediate
|
||||||
close of the QUIC connection. “Immediate close” is as defined by RFC 9000.
|
close of the QUIC connection. “Immediate close” is as defined by RFC 9000.
|
||||||
@ -744,7 +744,7 @@ no-ops. This is considered a success case.
|
|||||||
*
|
*
|
||||||
* For SSL_get_stream_read_state, this means that there is no more data to read,
|
* For SSL_get_stream_read_state, this means that there is no more data to read,
|
||||||
* and that any future SSL_read calls will return any residual data waiting to
|
* and that any future SSL_read calls will return any residual data waiting to
|
||||||
* be read followed by a SSL_ERROR_ZERO_RETURN condition.
|
* be read followed by an SSL_ERROR_ZERO_RETURN condition.
|
||||||
*
|
*
|
||||||
* For SSL_get_stream_write_state, this means that the local application has
|
* For SSL_get_stream_write_state, this means that the local application has
|
||||||
* already indicated the end of the stream by calling SSL_stream_conclude,
|
* already indicated the end of the stream by calling SSL_stream_conclude,
|
||||||
@ -949,7 +949,7 @@ int SSL_is_connection(SSL *ssl);
|
|||||||
|
|
||||||
```c
|
```c
|
||||||
/*
|
/*
|
||||||
* If the object represents a stream, returns a SSL_STREAM_TYPE value
|
* If the object represents a stream, returns an SSL_STREAM_TYPE value
|
||||||
* designating whether the stream can be used for transmission, reception,
|
* designating whether the stream can be used for transmission, reception,
|
||||||
* or both.
|
* or both.
|
||||||
*
|
*
|
||||||
|
@ -59,7 +59,7 @@ affected if the parent SSL_CTX store pointer is set to a new value.
|
|||||||
|
|
||||||
The verification store is used to verify the certificate chain sent by the
|
The verification store is used to verify the certificate chain sent by the
|
||||||
peer: that is an SSL/TLS client will use the verification store to verify
|
peer: that is an SSL/TLS client will use the verification store to verify
|
||||||
the server's certificate chain and a SSL/TLS server will use it to verify
|
the server's certificate chain and an SSL/TLS server will use it to verify
|
||||||
any client certificate chain.
|
any client certificate chain.
|
||||||
|
|
||||||
The chain store is used to build the certificate chain.
|
The chain store is used to build the certificate chain.
|
||||||
|
@ -20,7 +20,7 @@ the time when L<SSL_new(3)> is called.
|
|||||||
|
|
||||||
=head1 NOTES
|
=head1 NOTES
|
||||||
|
|
||||||
When a peer certificate has been received during a SSL/TLS handshake,
|
When a peer certificate has been received during an SSL/TLS handshake,
|
||||||
a verification function is called regardless of the verification mode.
|
a verification function is called regardless of the verification mode.
|
||||||
If the application does not explicitly specify a verification callback function,
|
If the application does not explicitly specify a verification callback function,
|
||||||
the built-in verification function is used.
|
the built-in verification function is used.
|
||||||
|
@ -55,7 +55,7 @@ than the default, as the buffer is handled dynamically and only uses the
|
|||||||
memory actually required by the data sent by the peer.
|
memory actually required by the data sent by the peer.
|
||||||
|
|
||||||
If the maximum certificate chain size allowed is exceeded, the handshake will
|
If the maximum certificate chain size allowed is exceeded, the handshake will
|
||||||
fail with a SSL_R_EXCESSIVE_MESSAGE_SIZE error.
|
fail with an SSL_R_EXCESSIVE_MESSAGE_SIZE error.
|
||||||
|
|
||||||
=head1 RETURN VALUES
|
=head1 RETURN VALUES
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ CSP 3.x.
|
|||||||
|
|
||||||
=item SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS
|
=item SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS
|
||||||
|
|
||||||
Disables a countermeasure against a SSL 3.0/TLS 1.0 protocol
|
Disables a countermeasure against an SSL 3.0/TLS 1.0 protocol
|
||||||
vulnerability affecting CBC ciphers, which cannot be handled by some
|
vulnerability affecting CBC ciphers, which cannot be handled by some
|
||||||
broken SSL implementations. This option has no effect for connections
|
broken SSL implementations. This option has no effect for connections
|
||||||
using other ciphers.
|
using other ciphers.
|
||||||
@ -357,7 +357,7 @@ Disable version rollback attack detection.
|
|||||||
During the client key exchange, the client must send the same information
|
During the client key exchange, the client must send the same information
|
||||||
about acceptable SSL/TLS protocol levels as during the first hello. Some
|
about acceptable SSL/TLS protocol levels as during the first hello. Some
|
||||||
clients violate this rule by adapting to the server's answer. (Example:
|
clients violate this rule by adapting to the server's answer. (Example:
|
||||||
the client sends a SSLv2 hello and accepts up to SSLv3.1=TLSv1, the server
|
the client sends an SSLv2 hello and accepts up to SSLv3.1=TLSv1, the server
|
||||||
only understands up to SSLv3. In this case the client must still use the
|
only understands up to SSLv3. In this case the client must still use the
|
||||||
same SSLv3.1=TLSv1 announcement. Some clients step down to SSLv3 with respect
|
same SSLv3.1=TLSv1 announcement. Some clients step down to SSLv3 with respect
|
||||||
to the server's answer and violate the version rollback protection.)
|
to the server's answer and violate the version rollback protection.)
|
||||||
|
@ -36,7 +36,7 @@ has no effect if called on a QUIC SSL object.
|
|||||||
|
|
||||||
=head1 NOTES
|
=head1 NOTES
|
||||||
|
|
||||||
Normally when a SSL connection is finished, the parties must send out
|
Normally when an SSL connection is finished, the parties must send out
|
||||||
close_notify alert messages using L<SSL_shutdown(3)>
|
close_notify alert messages using L<SSL_shutdown(3)>
|
||||||
for a clean shutdown.
|
for a clean shutdown.
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ the SSL_SESSION objects are internally referenced by the SSL_CTX and
|
|||||||
linked into its session cache. SSL objects may be using the SSL_SESSION object;
|
linked into its session cache. SSL objects may be using the SSL_SESSION object;
|
||||||
as a session may be reused, several SSL objects may be using one SSL_SESSION
|
as a session may be reused, several SSL objects may be using one SSL_SESSION
|
||||||
object at the same time. It is therefore crucial to keep the reference
|
object at the same time. It is therefore crucial to keep the reference
|
||||||
count (usage information) correct and not delete a SSL_SESSION object
|
count (usage information) correct and not delete an SSL_SESSION object
|
||||||
that is still used, as this may lead to program failures due to
|
that is still used, as this may lead to program failures due to
|
||||||
dangling pointers. These failures may also appear delayed, e.g.
|
dangling pointers. These failures may also appear delayed, e.g.
|
||||||
when an SSL_SESSION object was completely freed as the reference count
|
when an SSL_SESSION object was completely freed as the reference count
|
||||||
|
@ -52,11 +52,11 @@ functionality.
|
|||||||
|
|
||||||
SSL_accept_stream() returns a newly allocated QUIC stream SSL object, or NULL if
|
SSL_accept_stream() returns a newly allocated QUIC stream SSL object, or NULL if
|
||||||
no new incoming streams are available, or if the connection has been terminated,
|
no new incoming streams are available, or if the connection has been terminated,
|
||||||
or if called on a SSL object other than a QUIC connection SSL object.
|
or if called on an SSL object other than a QUIC connection SSL object.
|
||||||
L<SSL_get_error(3)> can be used to obtain further information in this case.
|
L<SSL_get_error(3)> can be used to obtain further information in this case.
|
||||||
|
|
||||||
SSL_get_accept_stream_queue_len() returns the number of incoming streams
|
SSL_get_accept_stream_queue_len() returns the number of incoming streams
|
||||||
currently waiting in the accept queue, or 0 if called on a SSL object other than
|
currently waiting in the accept queue, or 0 if called on an SSL object other than
|
||||||
a QUIC connection SSL object.
|
a QUIC connection SSL object.
|
||||||
|
|
||||||
=head1 SEE ALSO
|
=head1 SEE ALSO
|
||||||
|
@ -28,8 +28,8 @@ set the SSL_SENT_SHUTDOWN state.
|
|||||||
If a session was closed cleanly, the session object will be kept and all
|
If a session was closed cleanly, the session object will be kept and all
|
||||||
settings corresponding. This explicitly means, that e.g. the special method
|
settings corresponding. This explicitly means, that e.g. the special method
|
||||||
used during the session will be kept for the next handshake. So if the
|
used during the session will be kept for the next handshake. So if the
|
||||||
session was a TLSv1 session, a SSL client object will use a TLSv1 client
|
session was a TLSv1 session, an SSL client object will use a TLSv1 client
|
||||||
method for the next handshake and a SSL server object will use a TLSv1
|
method for the next handshake and an SSL server object will use a TLSv1
|
||||||
server method, even if TLS_*_methods were chosen on startup. This
|
server method, even if TLS_*_methods were chosen on startup. This
|
||||||
will might lead to connection failures (see L<SSL_new(3)>)
|
will might lead to connection failures (see L<SSL_new(3)>)
|
||||||
for a description of the method's properties.
|
for a description of the method's properties.
|
||||||
|
@ -12,7 +12,7 @@ SSL_do_handshake - perform a TLS/SSL handshake
|
|||||||
|
|
||||||
=head1 DESCRIPTION
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
SSL_do_handshake() will wait for a SSL/TLS handshake to take place. If the
|
SSL_do_handshake() will wait for an SSL/TLS handshake to take place. If the
|
||||||
connection is in client mode, the handshake will be started. The handshake
|
connection is in client mode, the handshake will be started. The handshake
|
||||||
routines may have to be explicitly set in advance using either
|
routines may have to be explicitly set in advance using either
|
||||||
L<SSL_set_connect_state(3)> or
|
L<SSL_set_connect_state(3)> or
|
||||||
|
@ -24,7 +24,7 @@ SSL_VALUE_STREAM_WRITE_BUF_USED,
|
|||||||
SSL_get_stream_write_buf_used,
|
SSL_get_stream_write_buf_used,
|
||||||
SSL_VALUE_STREAM_WRITE_BUF_AVAIL,
|
SSL_VALUE_STREAM_WRITE_BUF_AVAIL,
|
||||||
SSL_get_stream_write_buf_avail -
|
SSL_get_stream_write_buf_avail -
|
||||||
manage negotiable features and configuration values for a SSL object
|
manage negotiable features and configuration values for an SSL object
|
||||||
|
|
||||||
=head1 SYNOPSIS
|
=head1 SYNOPSIS
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ SSL_handle_events - advance asynchronous state machine and perform network I/O
|
|||||||
|
|
||||||
=head1 DESCRIPTION
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
SSL_handle_events() performs any internal processing which is due on a SSL object. The
|
SSL_handle_events() performs any internal processing which is due on an SSL object. The
|
||||||
exact operations performed by SSL_handle_events() vary depending on what kind of protocol
|
exact operations performed by SSL_handle_events() vary depending on what kind of protocol
|
||||||
is being used with the given SSL object. For example, SSL_handle_events() may handle
|
is being used with the given SSL object. For example, SSL_handle_events() may handle
|
||||||
timeout events which have become due, or may attempt, to the extent currently
|
timeout events which have become due, or may attempt, to the extent currently
|
||||||
|
@ -33,7 +33,7 @@ given addresses.
|
|||||||
=head1 RETURN VALUES
|
=head1 RETURN VALUES
|
||||||
|
|
||||||
Returns 1 on success or 0 on failure. This function always fails if called
|
Returns 1 on success or 0 on failure. This function always fails if called
|
||||||
on a SSL object which is not a QUIC connection SSL object.
|
on an SSL object which is not a QUIC connection SSL object.
|
||||||
|
|
||||||
=head1 SEE ALSO
|
=head1 SEE ALSO
|
||||||
|
|
||||||
|
@ -91,7 +91,7 @@ The fields of B<SSL_POLL_ITEM> are as follows:
|
|||||||
|
|
||||||
The resource being polled for readiness, as represented by a
|
The resource being polled for readiness, as represented by a
|
||||||
B<BIO_POLL_DESCRIPTOR>. Currently, this must be a poll descriptor of type
|
B<BIO_POLL_DESCRIPTOR>. Currently, this must be a poll descriptor of type
|
||||||
B<BIO_POLL_DESCRIPTOR_TYPE_SSL>, representing a SSL object pointer, and the SSL
|
B<BIO_POLL_DESCRIPTOR_TYPE_SSL>, representing an SSL object pointer, and the SSL
|
||||||
object must be a QUIC connection SSL object or QUIC stream SSL object.
|
object must be a QUIC connection SSL object or QUIC stream SSL object.
|
||||||
|
|
||||||
If a B<SSL_POLL_ITEM> has a poll descriptor type of
|
If a B<SSL_POLL_ITEM> has a poll descriptor type of
|
||||||
|
@ -47,7 +47,7 @@ which can support blocking mode and explicitly call SSL_set_blocking_mode().
|
|||||||
=head1 RETURN VALUES
|
=head1 RETURN VALUES
|
||||||
|
|
||||||
SSL_set_blocking_mode() returns 1 on success and 0 on failure. The function
|
SSL_set_blocking_mode() returns 1 on success and 0 on failure. The function
|
||||||
fails if called on a SSL object which does not represent a QUIC connection,
|
fails if called on an SSL object which does not represent a QUIC connection,
|
||||||
or if blocking mode cannot be used for the given connection.
|
or if blocking mode cannot be used for the given connection.
|
||||||
|
|
||||||
SSL_get_blocking_mode() returns 1 if blocking is currently enabled. It returns
|
SSL_get_blocking_mode() returns 1 if blocking is currently enabled. It returns
|
||||||
|
@ -69,7 +69,7 @@ shutdown process was first initiated by the local application or by the peer.
|
|||||||
|
|
||||||
=head2 Locally-Initiated Shutdown
|
=head2 Locally-Initiated Shutdown
|
||||||
|
|
||||||
Calling SSL_shutdown() on a SSL/TLS or DTLS SSL object initiates the shutdown
|
Calling SSL_shutdown() on an SSL/TLS or DTLS SSL object initiates the shutdown
|
||||||
process and causes OpenSSL to try to send a close_notify shutdown alert to the
|
process and causes OpenSSL to try to send a close_notify shutdown alert to the
|
||||||
peer. The shutdown process will then be considered completed once the peer
|
peer. The shutdown process will then be considered completed once the peer
|
||||||
responds in turn with a close_notify shutdown alert message.
|
responds in turn with a close_notify shutdown alert message.
|
||||||
@ -204,7 +204,7 @@ which indicates unambiguously when all data has been sent.
|
|||||||
|
|
||||||
=head2 Session Ticket Handling
|
=head2 Session Ticket Handling
|
||||||
|
|
||||||
If a client application only writes to a SSL/TLS or DTLS connection and never
|
If a client application only writes to an SSL/TLS or DTLS connection and never
|
||||||
reads, OpenSSL may never process new SSL/TLS session tickets sent by the server.
|
reads, OpenSSL may never process new SSL/TLS session tickets sent by the server.
|
||||||
This is because OpenSSL ordinarily processes handshake messages received from a
|
This is because OpenSSL ordinarily processes handshake messages received from a
|
||||||
peer during calls to L<SSL_read(3)> by the application.
|
peer during calls to L<SSL_read(3)> by the application.
|
||||||
|
@ -598,7 +598,7 @@ Gets the QUIC connection SSL object from a QUIC stream SSL object.
|
|||||||
|
|
||||||
=item L<SSL_is_connection(3)>
|
=item L<SSL_is_connection(3)>
|
||||||
|
|
||||||
Returns 1 if a SSL object is not a QUIC stream SSL object.
|
Returns 1 if an SSL object is not a QUIC stream SSL object.
|
||||||
|
|
||||||
=item L<SSL_get_stream_type(3)>
|
=item L<SSL_get_stream_type(3)>
|
||||||
|
|
||||||
|
@ -386,7 +386,7 @@ typedef int (*SSL_async_callback_fn)(SSL *s, void *arg);
|
|||||||
*/
|
*/
|
||||||
# define SSL_OP_CIPHER_SERVER_PREFERENCE SSL_OP_BIT(22)
|
# define SSL_OP_CIPHER_SERVER_PREFERENCE SSL_OP_BIT(22)
|
||||||
/*
|
/*
|
||||||
* If set, a server will allow a client to issue a SSLv3.0 version
|
* If set, a server will allow a client to issue an SSLv3.0 version
|
||||||
* number as latest version supported in the premaster secret, even when
|
* number as latest version supported in the premaster secret, even when
|
||||||
* TLSv1.0 (version 3.1) was announced in the client hello. Normally
|
* TLSv1.0 (version 3.1) was announced in the client hello. Normally
|
||||||
* this is forbidden to prevent version rollback attacks.
|
* this is forbidden to prevent version rollback attacks.
|
||||||
|
@ -174,7 +174,7 @@ static void dtls_unbuffer_record(SSL_CONNECTION *s)
|
|||||||
* - SSL3_RT_APPLICATION_DATA (when ssl3_read calls us)
|
* - SSL3_RT_APPLICATION_DATA (when ssl3_read calls us)
|
||||||
* - 0 (during a shutdown, no data has to be returned)
|
* - 0 (during a shutdown, no data has to be returned)
|
||||||
*
|
*
|
||||||
* If we don't have stored data to work from, read a SSL/TLS record first
|
* If we don't have stored data to work from, read an SSL/TLS record first
|
||||||
* (possibly multiple records if we still don't have anything to return).
|
* (possibly multiple records if we still don't have anything to return).
|
||||||
*
|
*
|
||||||
* This function must handle any surprises the peer may have for us, such as
|
* This function must handle any surprises the peer may have for us, such as
|
||||||
|
@ -590,7 +590,7 @@ int ssl_release_record(SSL_CONNECTION *s, TLS_RECORD *rr, size_t length)
|
|||||||
* - SSL3_RT_APPLICATION_DATA (when ssl3_read calls us)
|
* - SSL3_RT_APPLICATION_DATA (when ssl3_read calls us)
|
||||||
* - 0 (during a shutdown, no data has to be returned)
|
* - 0 (during a shutdown, no data has to be returned)
|
||||||
*
|
*
|
||||||
* If we don't have stored data to work from, read a SSL/TLS record first
|
* If we don't have stored data to work from, read an SSL/TLS record first
|
||||||
* (possibly multiple records if we still don't have anything to return).
|
* (possibly multiple records if we still don't have anything to return).
|
||||||
*
|
*
|
||||||
* This function must handle any surprises the peer may have for us, such as
|
* This function must handle any surprises the peer may have for us, such as
|
||||||
|
@ -5040,7 +5040,7 @@ SSL *SSL_dup(SSL *s)
|
|||||||
{
|
{
|
||||||
SSL *ret;
|
SSL *ret;
|
||||||
int i;
|
int i;
|
||||||
/* TODO(QUIC FUTURE): Add a SSL_METHOD function for duplication */
|
/* TODO(QUIC FUTURE): Add an SSL_METHOD function for duplication */
|
||||||
SSL_CONNECTION *retsc;
|
SSL_CONNECTION *retsc;
|
||||||
SSL_CONNECTION *sc = SSL_CONNECTION_FROM_SSL_ONLY(s);
|
SSL_CONNECTION *sc = SSL_CONNECTION_FROM_SSL_ONLY(s);
|
||||||
|
|
||||||
|
@ -820,7 +820,7 @@ struct ssl_ctx_st {
|
|||||||
/*
|
/*
|
||||||
* If this callback is not null, it will be called each time a session id
|
* If this callback is not null, it will be called each time a session id
|
||||||
* is added to the cache. If this function returns 1, it means that the
|
* is added to the cache. If this function returns 1, it means that the
|
||||||
* callback will do a SSL_SESSION_free() when it has finished using it.
|
* callback will do an SSL_SESSION_free() when it has finished using it.
|
||||||
* Otherwise, on 0, it means the callback has finished with it. If
|
* Otherwise, on 0, it means the callback has finished with it. If
|
||||||
* remove_session_cb is not null, it will be called when a session-id is
|
* remove_session_cb is not null, it will be called when a session-id is
|
||||||
* removed from the cache. After the call, OpenSSL will
|
* removed from the cache. After the call, OpenSSL will
|
||||||
|
@ -1532,7 +1532,7 @@ MSG_PROCESS_RETURN tls_process_client_hello(SSL_CONNECTION *s, PACKET *pkt)
|
|||||||
|| mt != SSL2_MT_CLIENT_HELLO) {
|
|| mt != SSL2_MT_CLIENT_HELLO) {
|
||||||
/*
|
/*
|
||||||
* Should never happen. We should have tested this in the record
|
* Should never happen. We should have tested this in the record
|
||||||
* layer in order to have determined that this is a SSLv2 record
|
* layer in order to have determined that this is an SSLv2 record
|
||||||
* in the first place
|
* in the first place
|
||||||
*/
|
*/
|
||||||
SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR);
|
SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR);
|
||||||
|
Loading…
Reference in New Issue
Block a user