提交 59d8a338 编写于 作者: J James Muir 提交者: Matt Caswell

quic: documentation and demo nits

The code for the quic demos (from the openssl guide) is presented as
modifications of tls-client-block.c.  Make it so that the quic code
better matches the tls code (drop unneeded assignments to "ret", use
the same comment on SSL_connect(), add the same printf() statement).

Also fix some minor typos.
Reviewed-by: NPaul Dale <pauli@openssl.org>
Reviewed-by: NTomas Mraz <tomas@openssl.org>
Reviewed-by: NHugo Landau <hlandau@openssl.org>
Reviewed-by: NMatt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22483)
上级 687326ce
...@@ -210,8 +210,9 @@ int main(void) ...@@ -210,8 +210,9 @@ int main(void)
goto end; goto end;
} }
/* Connect to the server and perform the TLS handshake */ /* Do the handshake with the server */
if ((ret = SSL_connect(ssl)) < 1) { if (SSL_connect(ssl) < 1) {
printf("Failed to connect to the server\n");
/* /*
* If the failure is due to a verification error we can get more * If the failure is due to a verification error we can get more
* information about it from SSL_get_verify_result(). * information about it from SSL_get_verify_result().
......
...@@ -47,7 +47,7 @@ static BIO *create_socket_bio(const char *hostname, const char *port, ...@@ -47,7 +47,7 @@ static BIO *create_socket_bio(const char *hostname, const char *port,
*/ */
for (ai = res; ai != NULL; ai = BIO_ADDRINFO_next(ai)) { for (ai = res; ai != NULL; ai = BIO_ADDRINFO_next(ai)) {
/* /*
* Create a TCP socket. We could equally use non-OpenSSL calls such * Create a UDP socket. We could equally use non-OpenSSL calls such
* as "socket" here for this and the subsequent connect and close * as "socket" here for this and the subsequent connect and close
* functions. But for portability reasons and also so that we get * functions. But for portability reasons and also so that we get
* errors on the OpenSSL stack in the event of a failure we use * errors on the OpenSSL stack in the event of a failure we use
...@@ -82,7 +82,6 @@ static BIO *create_socket_bio(const char *hostname, const char *port, ...@@ -82,7 +82,6 @@ static BIO *create_socket_bio(const char *hostname, const char *port,
} }
} }
/* Free the address information resources we allocated earlier */ /* Free the address information resources we allocated earlier */
BIO_ADDRINFO_free(res); BIO_ADDRINFO_free(res);
...@@ -96,6 +95,7 @@ static BIO *create_socket_bio(const char *hostname, const char *port, ...@@ -96,6 +95,7 @@ static BIO *create_socket_bio(const char *hostname, const char *port,
BIO_closesocket(sock); BIO_closesocket(sock);
return NULL; return NULL;
} }
/* /*
* Associate the newly created BIO with the underlying socket. By * Associate the newly created BIO with the underlying socket. By
* passing BIO_CLOSE here the socket will be automatically closed when * passing BIO_CLOSE here the socket will be automatically closed when
...@@ -222,8 +222,9 @@ int main(void) ...@@ -222,8 +222,9 @@ int main(void)
goto end; goto end;
} }
/* Connect to the server and perform the TLS handshake */ /* Do the handshake with the server */
if ((ret = SSL_connect(ssl)) < 1) { if (SSL_connect(ssl) < 1) {
printf("Failed to connect to the server\n");
/* /*
* If the failure is due to a verification error we can get more * If the failure is due to a verification error we can get more
* information about it from SSL_get_verify_result(). * information about it from SSL_get_verify_result().
......
...@@ -74,7 +74,7 @@ static BIO *create_socket_bio(const char *hostname, const char *port) ...@@ -74,7 +74,7 @@ static BIO *create_socket_bio(const char *hostname, const char *port)
if (sock == -1) if (sock == -1)
return NULL; return NULL;
/* Create a BIO to wrap the socket*/ /* Create a BIO to wrap the socket */
bio = BIO_new(BIO_s_socket()); bio = BIO_new(BIO_s_socket());
if (bio == NULL) { if (bio == NULL) {
BIO_closesocket(sock); BIO_closesocket(sock);
......
...@@ -62,7 +62,7 @@ passes the connection B<SSL> object as a parameter. ...@@ -62,7 +62,7 @@ passes the connection B<SSL> object as a parameter.
If a client application calls L<SSL_write_ex(3)> or L<SSL_write(3)> first then If a client application calls L<SSL_write_ex(3)> or L<SSL_write(3)> first then
(by default) the default stream will be a client-initiated bi-directional (by default) the default stream will be a client-initiated bi-directional
stream. If the client applications call L<SSL_read_ex(3)> or L<SSL_read(3)> stream. If a client application calls L<SSL_read_ex(3)> or L<SSL_read(3)>
first then the first stream initiated by the server will be used as the default first then the first stream initiated by the server will be used as the default
stream (whether it is bi-directional or uni-directional). stream (whether it is bi-directional or uni-directional).
...@@ -285,7 +285,7 @@ these different cases. ...@@ -285,7 +285,7 @@ these different cases.
* QUIC terms this means that the peer has sent FIN on the stream to * QUIC terms this means that the peer has sent FIN on the stream to
* indicate that no further data will be sent. * indicate that no further data will be sent.
*/ */
switch (SSL_get_error(ssl, 0)) { switch (SSL_get_error(stream1, 0)) {
case SSL_ERROR_ZERO_RETURN: case SSL_ERROR_ZERO_RETURN:
/* Normal completion of the stream */ /* Normal completion of the stream */
break; break;
...@@ -295,7 +295,7 @@ these different cases. ...@@ -295,7 +295,7 @@ these different cases.
* Some stream fatal error occurred. This could be because of a stream * Some stream fatal error occurred. This could be because of a stream
* reset - or some failure occurred on the underlying connection. * reset - or some failure occurred on the underlying connection.
*/ */
switch (SSL_get_stream_read_state(ssl)) { switch (SSL_get_stream_read_state(stream1)) {
case SSL_STREAM_STATE_RESET_REMOTE: case SSL_STREAM_STATE_RESET_REMOTE:
printf("Stream reset occurred\n"); printf("Stream reset occurred\n");
/* The stream has been reset but the connection is still healthy. */ /* The stream has been reset but the connection is still healthy. */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册