net.c now depends on select() unconditionally

This commit is contained in:
Manuel Pégourié-Gonnard 2015-05-14 18:58:17 +02:00
parent a63bc94a2d
commit d4f04dba42
6 changed files with 5 additions and 27 deletions

View file

@ -115,7 +115,7 @@ Default behavior changes
Requirement changes Requirement changes
* The minimum MSVC version required is now 2010 (better C99 support). * The minimum MSVC version required is now 2010 (better C99 support).
* The NET layer now unconditionnaly relies on getaddrinfo(). * The NET layer now unconditionnaly relies on getaddrinfo() and select().
* Compiler is required to support C99 types such as long long and uint32_t. * Compiler is required to support C99 types such as long long and uint32_t.
API changes from the 1.4 preview branch API changes from the 1.4 preview branch

View file

@ -126,7 +126,6 @@ int mbedtls_net_set_block( int fd );
*/ */
int mbedtls_net_set_nonblock( int fd ); int mbedtls_net_set_nonblock( int fd );
#if defined(MBEDTLS_HAVE_TIME)
/** /**
* \brief Portable usleep helper * \brief Portable usleep helper
* *
@ -136,7 +135,6 @@ int mbedtls_net_set_nonblock( int fd );
* select()'s timeout granularity (typically, 10ms). * select()'s timeout granularity (typically, 10ms).
*/ */
void mbedtls_net_usleep( unsigned long usec ); void mbedtls_net_usleep( unsigned long usec );
#endif
/** /**
* \brief Read at most 'len' characters. If no error occurs, * \brief Read at most 'len' characters. If no error occurs,
@ -168,7 +166,6 @@ int mbedtls_net_recv( void *ctx, unsigned char *buf, size_t len );
*/ */
int mbedtls_net_send( void *ctx, const unsigned char *buf, size_t len ); int mbedtls_net_send( void *ctx, const unsigned char *buf, size_t len );
#if defined(MBEDTLS_HAVE_TIME)
/** /**
* \brief Read at most 'len' characters, blocking for at most * \brief Read at most 'len' characters, blocking for at most
* 'timeout' seconds. If no error occurs, the actual amount * 'timeout' seconds. If no error occurs, the actual amount
@ -191,7 +188,6 @@ int mbedtls_net_send( void *ctx, const unsigned char *buf, size_t len );
*/ */
int mbedtls_net_recv_timeout( void *ctx, unsigned char *buf, size_t len, int mbedtls_net_recv_timeout( void *ctx, unsigned char *buf, size_t len,
uint32_t timeout ); uint32_t timeout );
#endif /* MBEDTLS_HAVE_TIME */
/** /**
* \brief Gracefully shutdown the connection * \brief Gracefully shutdown the connection

View file

@ -65,9 +65,7 @@ static int wsa_init_done = 0;
#include <sys/socket.h> #include <sys/socket.h>
#include <netinet/in.h> #include <netinet/in.h>
#include <arpa/inet.h> #include <arpa/inet.h>
#if defined(MBEDTLS_HAVE_TIME)
#include <sys/time.h> #include <sys/time.h>
#endif
#include <unistd.h> #include <unistd.h>
#include <signal.h> #include <signal.h>
#include <fcntl.h> #include <fcntl.h>
@ -84,9 +82,7 @@ static int wsa_init_done = 0;
#define snprintf _snprintf #define snprintf _snprintf
#endif #endif
#if defined(MBEDTLS_HAVE_TIME)
#include <time.h> #include <time.h>
#endif
#if defined(_MSC_VER) && !defined(EFIX64) && !defined(EFI32) #if defined(_MSC_VER) && !defined(EFIX64) && !defined(EFI32)
#include <basetsd.h> #include <basetsd.h>
@ -396,7 +392,6 @@ int mbedtls_net_set_nonblock( int fd )
#endif #endif
} }
#if defined(MBEDTLS_HAVE_TIME)
/* /*
* Portable usleep helper * Portable usleep helper
*/ */
@ -412,7 +407,6 @@ void mbedtls_net_usleep( unsigned long usec )
#endif #endif
select( 0, NULL, NULL, NULL, &tv ); select( 0, NULL, NULL, NULL, &tv );
} }
#endif /* MBEDTLS_HAVE_TIME */
/* /*
* Read at most 'len' characters * Read at most 'len' characters
@ -445,7 +439,6 @@ int mbedtls_net_recv( void *ctx, unsigned char *buf, size_t len )
return( ret ); return( ret );
} }
#if defined(MBEDTLS_HAVE_TIME)
/* /*
* Read at most 'len' characters, blocking for at most 'timeout' ms * Read at most 'len' characters, blocking for at most 'timeout' ms
*/ */
@ -486,7 +479,6 @@ int mbedtls_net_recv_timeout( void *ctx, unsigned char *buf, size_t len,
/* This call will not block */ /* This call will not block */
return( mbedtls_net_recv( ctx, buf, len ) ); return( mbedtls_net_recv( ctx, buf, len ) );
} }
#endif /* MBEDTLS_HAVE_TIME */
/* /*
* Write at most 'len' characters * Write at most 'len' characters

View file

@ -352,7 +352,7 @@ int mbedtls_timing_get_delay( void *data )
#if defined(MBEDTLS_SELF_TEST) #if defined(MBEDTLS_SELF_TEST)
/* To test mbedtls_net_usleep against our functions */ /* To test mbedtls_net_usleep against our functions */
#if defined(MBEDTLS_NET_C) && defined(MBEDTLS_HAVE_TIME) #if defined(MBEDTLS_NET_C)
#include "mbedtls/net.h" #include "mbedtls/net.h"
#endif #endif
@ -507,7 +507,7 @@ hard_test:
if( verbose != 0 ) if( verbose != 0 )
mbedtls_printf( "passed\n" ); mbedtls_printf( "passed\n" );
#if defined(MBEDTLS_NET_C) && defined(MBEDTLS_HAVE_TIME) #if defined(MBEDTLS_NET_C)
if( verbose != 0 ) if( verbose != 0 )
mbedtls_printf( " TIMING test #4 (net_usleep/ get_timer): " ); mbedtls_printf( " TIMING test #4 (net_usleep/ get_timer): " );

View file

@ -1183,12 +1183,7 @@ int main( int argc, char *argv[] )
mbedtls_ssl_set_bio( &ssl, &server_fd, my_send, my_recv, NULL ); mbedtls_ssl_set_bio( &ssl, &server_fd, my_send, my_recv, NULL );
else else
mbedtls_ssl_set_bio( &ssl, &server_fd, mbedtls_net_send, mbedtls_net_recv, mbedtls_ssl_set_bio( &ssl, &server_fd, mbedtls_net_send, mbedtls_net_recv,
#if defined(MBEDTLS_HAVE_TIME) opt.nbio == 0 ? mbedtls_net_recv_timeout : NULL );
opt.nbio == 0 ? mbedtls_net_recv_timeout : NULL
#else
NULL
#endif
);
#if defined(MBEDTLS_TIMING_C) #if defined(MBEDTLS_TIMING_C)
mbedtls_ssl_set_timer_cb( &ssl, &timer, mbedtls_timing_set_delay, mbedtls_ssl_set_timer_cb( &ssl, &timer, mbedtls_timing_set_delay,

View file

@ -1746,12 +1746,7 @@ int main( int argc, char *argv[] )
mbedtls_ssl_set_bio( &ssl, &client_fd, my_send, my_recv, NULL ); mbedtls_ssl_set_bio( &ssl, &client_fd, my_send, my_recv, NULL );
else else
mbedtls_ssl_set_bio( &ssl, &client_fd, mbedtls_net_send, mbedtls_net_recv, mbedtls_ssl_set_bio( &ssl, &client_fd, mbedtls_net_send, mbedtls_net_recv,
#if defined(MBEDTLS_HAVE_TIME) opt.nbio == 0 ? mbedtls_net_recv_timeout : NULL );
opt.nbio == 0 ? mbedtls_net_recv_timeout : NULL
#else
NULL
#endif
);
#if defined(MBEDTLS_TIMING_C) #if defined(MBEDTLS_TIMING_C)
mbedtls_ssl_set_timer_cb( &ssl, &timer, mbedtls_timing_set_delay, mbedtls_ssl_set_timer_cb( &ssl, &timer, mbedtls_timing_set_delay,