Selaa lähdekoodia

don't timeout while uploading big messages

we did already set up the timeout when starting to send commands, but so
far we did not reset it when succeeding to send out data. rectify that.

REFFAIL: 87sgy92we3.fsf@jnanam.net
Oswald Buddenhagen 5 vuotta sitten
vanhempi
sitoutus
dfa8c16f27
1 muutettua tiedostoa jossa 3 lisäystä ja 2 poistoa
  1. 3 2
      src/socket.c

+ 3 - 2
src/socket.c

@@ -680,8 +680,6 @@ do_read( conn_t *sock, char *buf, int len )
 	int n;
 
 	assert( sock->fd >= 0 );
-	if (pending_wakeup( &sock->fd_timeout ))
-		conf_wakeup( &sock->fd_timeout, sock->conf->timeout );
 #ifdef HAVE_LIBSSL
 	if (sock->ssl) {
 		if ((n = ssl_return( "read from", sock, SSL_read( sock->ssl, buf, len ) )) <= 0)
@@ -1055,6 +1053,9 @@ socket_fd_cb( int events, void *aux )
 	if (events & POLLOUT)
 		conf_notifier( &conn->notify, POLLIN, 0 );
 
+	if (pending_wakeup( &conn->fd_timeout ))
+		conf_wakeup( &conn->fd_timeout, conn->conf->timeout );
+
 #ifdef HAVE_LIBSSL
 	if (conn->state == SCK_STARTTLS) {
 		start_tls_p2( conn );