net.c now depends on select() unconditionally
diff --git a/ChangeLog b/ChangeLog
index a1b5e8a..e28d166 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -115,7 +115,7 @@
 
 Requirement changes
    * 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.
 
 API changes from the 1.4 preview branch
diff --git a/include/mbedtls/net.h b/include/mbedtls/net.h
index 077fa3d..586ee0b 100644
--- a/include/mbedtls/net.h
+++ b/include/mbedtls/net.h
@@ -126,7 +126,6 @@
  */
 int mbedtls_net_set_nonblock( int fd );
 
-#if defined(MBEDTLS_HAVE_TIME)
 /**
  * \brief          Portable usleep helper
  *
@@ -136,7 +135,6 @@
  *                 select()'s timeout granularity (typically, 10ms).
  */
 void mbedtls_net_usleep( unsigned long usec );
-#endif
 
 /**
  * \brief          Read at most 'len' characters. If no error occurs,
@@ -168,7 +166,6 @@
  */
 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
  *                 'timeout' seconds. If no error occurs, the actual amount
@@ -191,7 +188,6 @@
  */
 int mbedtls_net_recv_timeout( void *ctx, unsigned char *buf, size_t len,
                       uint32_t timeout );
-#endif /* MBEDTLS_HAVE_TIME */
 
 /**
  * \brief          Gracefully shutdown the connection
diff --git a/library/net.c b/library/net.c
index a372134..568a244 100644
--- a/library/net.c
+++ b/library/net.c
@@ -65,9 +65,7 @@
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <arpa/inet.h>
-#if defined(MBEDTLS_HAVE_TIME)
 #include <sys/time.h>
-#endif
 #include <unistd.h>
 #include <signal.h>
 #include <fcntl.h>
@@ -84,9 +82,7 @@
 #define  snprintf  _snprintf
 #endif
 
-#if defined(MBEDTLS_HAVE_TIME)
 #include <time.h>
-#endif
 
 #if defined(_MSC_VER) && !defined(EFIX64) && !defined(EFI32)
 #include <basetsd.h>
@@ -396,7 +392,6 @@
 #endif
 }
 
-#if defined(MBEDTLS_HAVE_TIME)
 /*
  * Portable usleep helper
  */
@@ -412,7 +407,6 @@
 #endif
     select( 0, NULL, NULL, NULL, &tv );
 }
-#endif /* MBEDTLS_HAVE_TIME */
 
 /*
  * Read at most 'len' characters
@@ -445,7 +439,6 @@
     return( ret );
 }
 
-#if defined(MBEDTLS_HAVE_TIME)
 /*
  * Read at most 'len' characters, blocking for at most 'timeout' ms
  */
@@ -486,7 +479,6 @@
     /* This call will not block */
     return( mbedtls_net_recv( ctx, buf, len ) );
 }
-#endif /* MBEDTLS_HAVE_TIME */
 
 /*
  * Write at most 'len' characters
diff --git a/library/timing.c b/library/timing.c
index e83b74e..4ff11e7 100644
--- a/library/timing.c
+++ b/library/timing.c
@@ -352,7 +352,7 @@
 #if defined(MBEDTLS_SELF_TEST)
 
 /* 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"
 #endif
 
@@ -507,7 +507,7 @@
     if( verbose != 0 )
         mbedtls_printf( "passed\n" );
 
-#if defined(MBEDTLS_NET_C) && defined(MBEDTLS_HAVE_TIME)
+#if defined(MBEDTLS_NET_C)
     if( verbose != 0 )
         mbedtls_printf( "  TIMING test #4 (net_usleep/ get_timer): " );
 
diff --git a/programs/ssl/ssl_client2.c b/programs/ssl/ssl_client2.c
index b140263..f5cf746 100644
--- a/programs/ssl/ssl_client2.c
+++ b/programs/ssl/ssl_client2.c
@@ -1183,12 +1183,7 @@
         mbedtls_ssl_set_bio( &ssl, &server_fd, my_send, my_recv, NULL );
     else
         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
-#else
-                             NULL
-#endif
-                );
+                             opt.nbio == 0 ? mbedtls_net_recv_timeout : NULL );
 
 #if defined(MBEDTLS_TIMING_C)
     mbedtls_ssl_set_timer_cb( &ssl, &timer, mbedtls_timing_set_delay,
diff --git a/programs/ssl/ssl_server2.c b/programs/ssl/ssl_server2.c
index 1d2132e..7dbf414 100644
--- a/programs/ssl/ssl_server2.c
+++ b/programs/ssl/ssl_server2.c
@@ -1746,12 +1746,7 @@
         mbedtls_ssl_set_bio( &ssl, &client_fd, my_send, my_recv, NULL );
     else
         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
-#else
-                             NULL
-#endif
-                );
+                             opt.nbio == 0 ? mbedtls_net_recv_timeout : NULL );
 
 #if defined(MBEDTLS_TIMING_C)
     mbedtls_ssl_set_timer_cb( &ssl, &timer, mbedtls_timing_set_delay,