imap: Fixed untagged response detection when no data after command
authorSteve Holme <steve_holme@hotmail.com>
Fri, 18 Apr 2014 14:01:57 +0000 (15:01 +0100)
committerSteve Holme <steve_holme@hotmail.com>
Fri, 18 Apr 2014 14:01:57 +0000 (15:01 +0100)
Should a command return untagged responses that contained no data then
the imap_matchresp() function would not detect them as valid responses,
as it wasn't taking the CRLF characters into account at the end of each
line.

lib/imap.c

index a3dd499..3881d61 100644 (file)
@@ -258,7 +258,7 @@ static bool imap_matchresp(const char *line, size_t len, const char *cmd)
   /* Does the command name match and is it followed by a space character or at
      the end of line? */
   if(line + cmd_len <= end && Curl_raw_nequal(line, cmd, cmd_len) &&
-     (line[cmd_len] == ' ' || line + cmd_len == end))
+     (line[cmd_len] == ' ' || line + cmd_len + 2 == end))
     return TRUE;
 
   return FALSE;