Thanks Paul. This should help avoid any potential issues when the next release comes out with IDLE support.

-Jon

Paul J Stevens wrote:
Patch applied. Thanks.

Jonathan Feally wrote:
The attached patch fixes an issue I was having with my system.
Apparently the g_strncasecmp call was broken with glib 2.12.9. The call
seemed to think that an empty buffer still matched "DONE". That caused
all my connection to go into a bogus state.

Upgrading to glib 2.12.12 (current version available with an updated
ports) resolves the issue with the code as is, but some systems with
2.12.11 (I tried this verision - but was still broken) and earlier (mine
was 2.12.9 to start) will have trouble with this. Perhaps adding the
strlen check will work around the glib bug, but I didn't try that before
my system was up to 2.12.12.

This patch uses the standard strncmp call and also puts in a check to
make sure the buffer has at least 5 bytes to look at (DONE[+CR]+LF). I'm
not sure what the differences are on the 2 calls - but if nothing else
the strlen check can't hurt.

-Jon


------------------------------------------------------------------------

Index: dbmail-imapsession.c
===================================================================
--- dbmail-imapsession.c        (revision 2684)
+++ dbmail-imapsession.c        (working copy)
@@ -2007,7 +2007,7 @@
                fgets(buffer, IDLE_BUFFER, ci->rx);
                alarm(0);
- if (g_strncasecmp(buffer,"DONE",4)==0)
+               if (strlen(buffer) > 4 && strncmp(buffer,"DONE",4)==0)
                        break;
                else if (strlen(buffer) > 0) {
                        dbmail_imap_session_printf(self,"%s BAD Expecting 
DONE\r\n", self->tag);



------------------------------------------------------------------------

_______________________________________________
Dbmail-dev mailing list
[email protected]
http://twister.fastxs.net/mailman/listinfo/dbmail-dev





_______________________________________________
Dbmail-dev mailing list
[email protected]
http://twister.fastxs.net/mailman/listinfo/dbmail-dev

Reply via email to