diff options
author | Matthias Andree <matthias.andree@gmx.de> | 2009-04-23 14:39:48 +0000 |
---|---|---|
committer | Matthias Andree <matthias.andree@gmx.de> | 2009-04-23 14:39:48 +0000 |
commit | e848a4738e70d14a4625b18085f2b3865633c914 (patch) | |
tree | fab8696dab94d3a59fc744cd9cd6ae0dba1e10e8 | |
parent | 567ef0281ed372396f72dd03be100423694f944b (diff) | |
download | fetchmail-e848a4738e70d14a4625b18085f2b3865633c914.tar.gz fetchmail-e848a4738e70d14a4625b18085f2b3865633c914.tar.bz2 fetchmail-e848a4738e70d14a4625b18085f2b3865633c914.zip |
Support NIL as body length (Exchange). Fixes Berlios Bug #11980.
svn path=/branches/BRANCH_6-3/; revision=5269
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | imap.c | 7 |
2 files changed, 9 insertions, 0 deletions
@@ -62,6 +62,8 @@ fetchmail 6.3.10 (not yet released): Courtesy of Nico Golde, Debian. * When a pre- or post-connect command fails, now report the exit status or termination signal properly through sys/wait.h macros. +* When acquiring a body, understand NIL ("no such data item"), as returned by + some MS Exchange versions. Fixes BerliOS Bug #11980 by KB Sriram. # CHANGES * Make the comparison of the SSL fingerprints case insensitive, to @@ -1153,6 +1153,13 @@ static int imap_fetch_body(int sock, struct query *ctl, int number, int *lenp) if (num != number) return(PS_ERROR); + /* Understand "NIL" as length => no body present + * (MS Exchange, BerliOS Bug #11980) */ + if (strstr(buf+10, "NIL)")) { + *lenp = 0; + return PS_SUCCESS; + } + /* * Try to extract a length from the FETCH response. RFC2060 requires * it to be present, but at least one IMAP server (Novell GroupWise) |