imap/2244: Copying mail message from local mailbox to remote imaps server hangs when message contains NUL chars
>Number: 2244
>Notify-List:
>Category: imap
>Synopsis: Copying mail message from local mailbox to remote imaps server
>hangs when message contains NUL chars
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: mutt-dev
>State: open
>Keywords:
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri May 19 19:49:37 +0200 2006
>Originator: Patrice Levesque
>Release: mutt-1.4.2.1
>Organization:
>Environment:
Mandrake GNU/Linux 10
>Description:
Some badly-formed spam contain NUL characters (\000). When messages containing
NULL characters are moved between local mailboxes, no problem arise. When
moved from local mailboxes to remote IMAP servers, mutt hangs. Tried with
remote cyrus-imapd, courier-imap and dovecot.
Seems worthy to mention this bugreport will be duplicated in muttng's tracker
because muttng has the same hanging behavior.
Here attached is a mail that provokes that bug.
>How-To-Repeat:
Open the attached mail file with mutt, try to "s"ave in a distant IMAP folder.
>Fix:
Options are open!
>Add-To-Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="mail_with_nul"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="mail_with_nul"
UmVjZWl2ZWQ6IGZyb20gbG9jYWxob3N0IGJ5IHB0YWZmLnRlY2hub2xvZ2llcy5vcmcKCXdpdGgg
U3BhbUFzc2Fzc2luICh2ZXJzaW9uIDMuMC40KTsKCU1vbiwgMDggTWF5IDIwMDYgMDM6MDA6NDYg
LTA0MDAKRnJvbTogUnV0aCBQYXJrZXIgPDM5MGNvbGxlZW5AYWJzb2x1dGVtb3Rpb24uY29tPgpU
bzogZGNhdC53YXluZUBwdGFmZi5jYQpTdWJqZWN0OiBHZXQgYSBkaXBsb21hIQpEYXRlOiBNb24s
IDA4IE1heSAyMDA2IDIyOjQxOjA3ICswMzAwCk1lc3NhZ2UtSWQ6IDw3ODFmMDFjNjcyZDckOWQ4
NWY1MzQkODE1ZDQ2MTBAYWJzb2x1dGVtb3Rpb24uY29tPgpYLVNwYW0tRmxhZzogWUVTClgtU3Bh
bS1DaGVja2VyLVZlcnNpb246IFNwYW1Bc3Nhc3NpbiAzLjAuNCAoMjAwNS0wNi0wNSkgb24gCglw
dGFmZi50ZWNobm9sb2dpZXMub3JnClgtU3BhbS1MZXZlbDogUlJSUlJSUlJSUlIKWC1TcGFtLVN0
YXR1czogWWVzLCBzY29yZT0xMS4yIHJlcXVpcmVkPTUuMCB0ZXN0cz1CQVlFU185OSwKCURBVEVf
SU5fRlVUVVJFXzEyXzI0LFBSRVNUX05PTl9BQ0NSRURJVEVELFJDVkRfTlVNRVJJQ19IRUxPIAoJ
YXV0b2xlYXJuPW5vIHZlcnNpb249My4wLjQKTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBl
OiBtdWx0aXBhcnQvbWl4ZWQ7IGJvdW5kYXJ5PSItLS0tLS0tLS0tPV80NDVFRUM5RS44OUI4OUVF
NCIKQ29udGVudC1MZW5ndGg6IDMyMzYKClRoaXMgaXMgYSBtdWx0aS1wYXJ0IG1lc3NhZ2UgaW4g
TUlNRSBmb3JtYXQuCgotLS0tLS0tLS0tLS09XzQ0NUVFQzlFLjg5Qjg5RUU0CkNvbnRlbnQtVHlw
ZTogdGV4dC9wbGFpbgpDb250ZW50LURpc3Bvc2l0aW9uOiBpbmxpbmUKQ29udGVudC1UcmFuc2Zl
ci1FbmNvZGluZzogOGJpdAoKU3BhbSBkZXRlY3Rpb24gc29mdHdhcmUsIHJ1bm5pbmcgb24gdGhl
IHN5c3RlbSAicHRhZmYudGVjaG5vbG9naWVzLm9yZyIsIGhhcwppZGVudGlmaWVkIHRoaXMgaW5j
b21pbmcgZW1haWwgYXMgcG9zc2libGUgc3BhbS4gIFRoZSBvcmlnaW5hbCBtZXNzYWdlCmhhcyBi
ZWVuIGF0dGFjaGVkIHRvIHRoaXMgc28geW91IGNhbiB2aWV3IGl0IChpZiBpdCBpc24ndCBzcGFt
KSBvciBsYWJlbApzaW1pbGFyIGZ1dHVyZSBlbWFpbC4gIElmIHlvdSBoYXZlIGFueSBxdWVzdGlv
bnMsIHNlZQp0aGUgYWRtaW5pc3RyYXRvciBvZiB0aGF0IHN5c3RlbSBmb3IgZGV0YWlscy4KCkNv
bnRlbnQgcHJldmlldzogIFUgTiBJIFYgRSBSIFMgSSBUIFkgRCBJIFAgTCBPIE0gQSBTIFdlIGNh
biBhc3Npc3Qgd2l0aAogIERpcGxvbWFzIGZyb20gcHJlc3RpZ2lvdXMgbm9uLWFjY3JlZGl0ZWQg
dW5pdmVyc2l0aWVzIGJhc2VkIG9uIHlvdXIKICBwcmVzZW50IGtub3dsZWRnZSBhbmQgbGlmZSBl
eHBlcmllbmNlLiBObyByZXF1aXJlZCB0ZXN0cywgY2xhc3NlcywKICBib29rcywgb3IgaW50ZXJ2
aWV3cy4gQmFjaGVsb3JzLCBtYXN0ZXJzLCBNQkEsIGFuZCBkb2N0b3JhdGUgKFBoRCkKICBkaXBs
b21hcyBhdmFpbGFibGUgaW4gdGhlIGZpZWxkIG9mIHlvdXIgY2hvaWNlLiBBdmFpbGFibGUgaW4g
YW55IGZpZWxkCiAgb2YgeW91ciBjaG9pY2UuIEV2ZXJ5b25lIGlzIGFwcHJvdmVkLiBOZXZlciBp
cyBhbnlvbmUgdHVybmVkIGRvd24uCiAgVG90YWwgQ29uZmlkZW50aWFsaXR5IGFzc3VyZWQuIFsu
Li5dIAoKQ29udGVudCBhbmFseXNpcyBkZXRhaWxzOiAgICgxMS4yIHBvaW50cywgNS4wIHJlcXVp
cmVkKQoKIHB0cyBydWxlIG5hbWUgICAgICAgICAgICAgIGRlc2NyaXB0aW9uCi0tLS0gLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQogMy4wIERBVEVfSU5fRlVUVVJFXzEyXzI0ICAgRGF0ZTogaXMgMTIgdG8gMjQg
aG91cnMgYWZ0ZXIgUmVjZWl2ZWQ6IGRhdGUKIDEuMiBSQ1ZEX05VTUVSSUNfSEVMTyAgICAgIFJl
Y2VpdmVkOiBjb250YWlucyBhbiBJUCBhZGRyZXNzIHVzZWQgZm9yIEhFTE8KIDEuOSBQUkVTVF9O
T05fQUNDUkVESVRFRCAgIEJPRFk6ICdQcmVzdGlnaW91cyBOb24tQWNjcmVkaXRlZCBVbml2ZXJz
aXRpZXMnCiA1LjAgQkFZRVNfOTkgICAgICAgICAgICAgICBCT0RZOiBCYXllc2lhbiBzcGFtIHBy
b2JhYmlsaXR5IGlzIDk5IHRvIDEwMCUKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY29y
ZTogMS4wMDAwXQoKCgotLS0tLS0tLS0tLS09XzQ0NUVFQzlFLjg5Qjg5RUU0CkNvbnRlbnQtVHlw
ZTogbWVzc2FnZS9yZmM4MjI7IHgtc3BhbS10eXBlPW9yaWdpbmFsCkNvbnRlbnQtRGVzY3JpcHRp
b246IG9yaWdpbmFsIG1lc3NhZ2UgYmVmb3JlIFNwYW1Bc3Nhc3NpbgpDb250ZW50LURpc3Bvc2l0
aW9uOiBpbmxpbmUKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAoKUmV0dXJuLVBhdGg6
IDwzOTBjb2xsZWVuQGFic29sdXRlbW90aW9uLmNvbT4KWC1PcmlnaW5hbC1UbzogZGNhdC53YXlu
ZUBwdGFmZi5jYQpEZWxpdmVyZWQtVG86IHB0YWZmQHB0YWZmLmNhClJlY2VpdmVkOiBmcm9tIGdo
b3VsLjQwbWh6Lm5ldCAoNjktMjgtMjI4LTIyNy5kc2wudGVrc2F2dnkuY29tIFs2OS4yOC4yMjgu
MjI3XSkKCWJ5IHB0YWZmLmNhIChQb3N0Zml4KSB3aXRoIFNNVFAgaWQgMDZDRjgzQjZFREYKCWZv
ciA8ZGNhdC53YXluZUBwdGFmZi5jYT47IE1vbiwgIDggTWF5IDIwMDYgMDM6MDA6NDQgLTA0MDAg
KEVEVCkKUmVjZWl2ZWQ6IChxbWFpbCAyNjM5MSBpbnZva2VkIGZyb20gbmV0d29yayk7IDggTWF5
IDIwMDYgMDc6MDA6NDMgLTAwMDAKUmVjZWl2ZWQ6IGZyb20gdW5rbm93biAoSEVMTyAyMjEuMTk1
LjEyOS43OSkgKDIyMS4xOTUuMTI5Ljc5KQogIGJ5IDY5LTI4LTIyOC0yMjcuZHNsLnRla3NhdnZ5
LmNvbSB3aXRoIFNNVFA7IDggTWF5IDIwMDYgMDc6MDA6NDMgLTAwMDAKTWVzc2FnZS1JRDogPDc4
MWYwMWM2NzJkNyQ5ZDg1ZjUzNCQ4MTVkNDYxMEBhYnNvbHV0ZW1vdGlvbi5jb20+CkZyb206IFJ1
dGggUGFya2VyIDwzOTBjb2xsZWVuQGFic29sdXRlbW90aW9uLmNvbT4KVG86IGRjYXQud2F5bmVA
cHRhZmYuY2EKU3ViamVjdDogR2V0IGEgZGlwbG9tYSEKRGF0ZTogTW9uLCAwOCBNYXkgMjAwNiAy
Mjo0MTowNyArMDMwMApNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47
CiAgICBmb3JtYXQ9Zmxvd2VkOwogICAgY2hhcnNldD0iaXNvLTg4NTktMSI7CiAgICByZXBseS10
eXBlPW9yaWdpbmFsCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDdiaXQKWC1Qcmlvcml0eTog
MwpYLU1TTWFpbC1Qcmlvcml0eTogTm9ybWFsClgtTWFpbGVyOiBNaWNyb3NvZnQgT3V0bG9vayBF
eHByZXNzIFY2LjAwLjI5MDAuMjE4MApYLU1pbWVPTEU6IFByb2R1Y2VkIEJ5IE1pY3Jvc29mdCBN
aW1lT0xFIFY2LjAwLjI5MDAuMjE4MAoKVSBOIEkgViBFIFIgUyBJIFQgWSAgIEQgSSBQIEwgTyBN
IEEgUwoKV2UgY2FuIGFzc2lzdCB3aXRoIERpcGxvbWFzIGZyb20gcHJlc3RpZ2lvdXMgbm9uLWFj
Y3JlZGl0ZWQgdW5pdmVyc2l0aWVzIGJhc2VkIG9uIHlvdXIgcHJlc2VudCBrbm93bGVkZ2UgYW5k
IGxpZmUgZXhwZXJpZW5jZS4KCk5vIHJlcXVpcmVkIHRlc3RzLCBjbGFzc2VzLCBib29rcywgb3Ig
aW50ZXJ2aWV3cy4KQmFjaGVsb3JzLCBtYXN0ZXJzLCBNQkEsIGFuZCBkb2N0b3JhdGUgKFBoRCkg
ZGlwbG9tYXMgYXZhaWxhYmxlIGluIHRoZSBmaWVsZCBvZiB5b3VyIGNob2ljZS4KQXZhaWxhYmxl
IGluIGFueSBmaWVsZCBvZiB5b3VyIGNob2ljZS4KRXZlcnlvbmUgaXMgYXBwcm92ZWQuIE5ldmVy
IGlzIGFueW9uZSB0dXJuZWQgZG93bi4KVG90YWwgQ29uZmlkZW50aWFsaXR5IGFzc3VyZWQuIAoK
Q2FsbCBUb2RheSAxLTIwNi0zNTAtNjQwNCBnZXQgYSBESVBMT01BIHdpdGhpbiBkYXlzISEhIAoK
MjQgaG91cnMgYSBkYXkgNyBkYXlzIGEgd2VlayEKAAoKCi0tLS0tLS0tLS0tLT1fNDQ1RUVDOUUu
ODlCODlFRTQtLQoK