]> Pileus Git - ~andy/fetchmail/commitdiff
IDLE and CYgwin fix patch.
authorEric S. Raymond <esr@thyrsus.com>
Fri, 28 Feb 2003 10:58:25 +0000 (10:58 -0000)
committerEric S. Raymond <esr@thyrsus.com>
Fri, 28 Feb 2003 10:58:25 +0000 (10:58 -0000)
svn path=/trunk/; revision=3793

driver.c
fetchmail-features.html

index 4a4f4d3faee0d118866c2ca8063b307048acaafc..50596490a29b2d17ece680e172126d81249d7e7b 100644 (file)
--- a/driver.c
+++ b/driver.c
@@ -70,9 +70,16 @@ flag peek_capable;   /* can we peek for better error recovery? */
 int mailserver_socket_temp = -1;       /* socket to free if connect timeout */ 
 
 static int timeoutcount;               /* count consecutive timeouts */
+static int idletimeout;                        /* timeout occured in idle stage? */
 
 static jmp_buf restart;
 
+int isidletimeout(void)
+/* last timeout occured in idle stage? */
+{
+    return idletimeout;
+}
+
 void set_timeout(int timeleft)
 /* reset the nonresponse-timeout */
 {
@@ -82,6 +89,8 @@ void set_timeout(int timeleft)
     if (timeleft == 0)
        timeoutcount = 0;
 
+    idletimeout = 1;
+
     ntimeout.it_interval.tv_sec = ntimeout.it_interval.tv_usec = 0;
     ntimeout.it_value.tv_sec  = timeleft;
     ntimeout.it_value.tv_usec = 0;
@@ -92,8 +101,11 @@ void set_timeout(int timeleft)
 static RETSIGTYPE timeout_handler (int signal)
 /* handle SIGALRM signal indicating a server timeout */
 {
-    timeoutcount++;
-    longjmp(restart, THROW_TIMEOUT);
+    if(stage != STAGE_IDLE) {
+       timeoutcount++;
+       longjmp(restart, THROW_TIMEOUT);
+    } else
+       idletimeout = 1;
 }
 
 static RETSIGTYPE sigpipe_handler (int signal)
index 7665a42f4ed6f6f25857575cb124f5e637f83947..76baad07ae9f45a0632bdb0a6f5a410453c32b16 100644 (file)
@@ -18,7 +18,7 @@
 <tr>
 <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a></td>
 <td width="30%" align="center">To <a href="/~esr/sitemap.html">Site Map</a></td>
-<td width="30%" align="right">$Date: 2002/09/09 13:59:55 $</td>
+<td width="30%" align="right">$Date: 2003/02/28 10:58:25 $</td>
 </tr>
 </table>
 
@@ -28,7 +28,7 @@
 <h2>Since 5.0:</h2>
 
 <ul>
-<li>STARTTLS is supportrf in both POP and IMAP. 
+<li>STARTTLS is supported in both POP and IMAP. 
 
 <li>ESMTP AUTH (RFC 2554) is supported.</li>
 
@@ -280,7 +280,7 @@ be unique to fetchmail if I hadn't added it to fetchpop.)</li>
 <tr>
 <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a></td>
 <td width="30%" align="center">To <a href="/~esr/sitemap.html">Site Map</a></td>
-<td width="30%" align="right">$Date: 2002/09/09 13:59:55 $</td>
+<td width="30%" align="right">$Date: 2003/02/28 10:58:25 $</td>
 </tr>
 </table>