فهرست منبع

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 سال پیش
والد
کامیت
dfa8c16f27
1فایلهای تغییر یافته به همراه3 افزوده شده و 2 حذف شده
  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 );