mirror of
https://git.suyu.dev/suyu/mbedtls.git
synced 2025-12-23 15:55:10 +01:00
- Changed behaviour of net_recv(), ssl_fetch_input() and ssl_read(). net_recv() now returns 0 on EOF instead of POLARSSL_ERR_NET_CONN_RESET. ssl_fetch_input() returns POLARSSL_ERR_SSL_CONN_EOF on an EOF from its f_recv() function. ssl_read() returns 0 if a POLARSSL_ERR_SSL_CONN_EOF is received after the handshake.
- Network functions now return POLARSSL_ERR_NET_WANT_READ or POLARSSL_ERR_NET_WANT_WRITE instead of the ambiguous POLARSSL_ERR_NET_TRY_AGAIN
This commit is contained in:
parent
e471cd14bd
commit
831a755d9e
12 changed files with 59 additions and 35 deletions
|
|
@ -878,6 +878,9 @@ int ssl_fetch_input( ssl_context *ssl, size_t nb_want )
|
|||
ssl->in_left, nb_want ) );
|
||||
SSL_DEBUG_RET( 2, "ssl->f_recv", ret );
|
||||
|
||||
if( ret == 0 )
|
||||
return( POLARSSL_ERR_SSL_CONN_EOF );
|
||||
|
||||
if( ret < 0 )
|
||||
return( ret );
|
||||
|
||||
|
|
@ -2092,6 +2095,9 @@ int ssl_read( ssl_context *ssl, unsigned char *buf, size_t len )
|
|||
{
|
||||
if( ( ret = ssl_read_record( ssl ) ) != 0 )
|
||||
{
|
||||
if( ret == POLARSSL_ERR_SSL_CONN_EOF )
|
||||
return( 0 );
|
||||
|
||||
SSL_DEBUG_RET( 1, "ssl_read_record", ret );
|
||||
return( ret );
|
||||
}
|
||||
|
|
@ -2104,6 +2110,9 @@ int ssl_read( ssl_context *ssl, unsigned char *buf, size_t len )
|
|||
*/
|
||||
if( ( ret = ssl_read_record( ssl ) ) != 0 )
|
||||
{
|
||||
if( ret == POLARSSL_ERR_SSL_CONN_EOF )
|
||||
return( 0 );
|
||||
|
||||
SSL_DEBUG_RET( 1, "ssl_read_record", ret );
|
||||
return( ret );
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue