A NOTE has been added to this issue. 
====================================================================== 
http://www.dbmail.org/mantis/view.php?id=533 
====================================================================== 
Reported By:                idk
Assigned To:                
====================================================================== 
Project:                    DBMail
Issue ID:                   533
Category:                   IMAP daemon
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
target:                      
====================================================================== 
Date Submitted:             13-Mar-07 17:17 CET
Last Modified:              17-Mar-07 00:57 CET
====================================================================== 
Summary:                    Socket connection drops down after trying to fetch
of nonexistent message body part
Description: 
Message with two parts (see additional information for example):

a uid fetch 540962 body[1]
* 92 FETCH (UID 540962 BODY[1] NIL )
a OK UID FETCH completed

a uid fetch 540962 body[2]
* 92 FETCH (UID 540962 BODY[2] {218}
JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFIvRmlsdGVyIC9GbGF0ZURlY29k
U2l6ZSAyOSAvUm9vdCAxIDAgUiAvSW5mbyAyIDAgUgovSUQgWyjTdpjn/EkhpgW6t5bht6urKSjT
dpjn/EkhpgW6t5bht6urKV0KPj4Kc3RhcnR4cmVmCjI2MzU5CiUlRU9GCg==
)
a OK UID FETCH completed

a uid fetch 540962 body[3]
* 92 FETCH (UID 540962

After this (UID number) connection drops down and into dbmail.err is
logged:

(process:22110): gmime-CRITICAL **: g_mime_object_get_content_type:
assertion `GMIME_IS_OBJECT (object)' failed
dbmail-imapd: misc.c:2293: imap_get_partspec: Assertion `object' failed.

On first fetch server replies "(UID 540962 BODY[1] NIL )", is that
correct? On this message SquirrelMail fails (expect {length} instead of
NIL): if (ereg('\\{([^\\}]*)\\}', $topline, $regs)) ... else ... echo
"Body retrieval error. The reason for this is most probably that the
message is malformed." (I don't know IMAP specification well).
====================================================================== 

---------------------------------------------------------------------- 
 aaron - 17-Mar-07 00:41  
---------------------------------------------------------------------- 
misc.c, imap_get_partspec doesn't look like it handles all of its error
cases. 

I think the assertions are invalid because they are not restricted to the
results of strictly internally generated data. With user-specified data,
we should be gracefully handling error conditions.

What IMAP response should we give to a request for a nonexistent bodypart?
NIL with OK or just plain BAD? 

---------------------------------------------------------------------- 
 aaron - 17-Mar-07 00:57  
---------------------------------------------------------------------- 
Please test SVN 2471 and post logs! I want to see some of the new
imap_get_partspec info messages :-) 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
13-Mar-07 17:17 idk            New Issue                                    
17-Mar-07 00:41 aaron          Note Added: 0001914                          
17-Mar-07 00:57 aaron          Note Added: 0001915                          
======================================================================

_______________________________________________
Dbmail-dev mailing list
Dbmail-dev@dbmail.org
http://twister.fastxs.net/mailman/listinfo/dbmail-dev

Reply via email to