]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
message address parser: Fixed potential problems with parsing invalid address groups.
authorTimo Sirainen <tss@iki.fi>
Sun, 4 Apr 2010 21:42:57 +0000 (00:42 +0300)
committerTimo Sirainen <tss@iki.fi>
Sun, 4 Apr 2010 21:42:57 +0000 (00:42 +0300)
--HG--
branch : HEAD

src/lib-mail/message-address.c

index 9c3bf7d1baeb8fab3d5a478ef256188278fe051e..78ef4f82f9de47b64df5ee01d5b1e881ec3529c0 100644 (file)
@@ -245,11 +245,13 @@ static int parse_group(struct message_address_parser_context *ctx)
                        }
                }
        }
-       if (*ctx->parser.data != ';')
-               ret = -1;
-       else {
-               ctx->parser.data++;
-               ret = rfc822_skip_lwsp(&ctx->parser);
+       if (ret >= 0) {
+               if (*ctx->parser.data != ';')
+                       ret = -1;
+               else {
+                       ctx->parser.data++;
+                       ret = rfc822_skip_lwsp(&ctx->parser);
+               }
        }
        if (ret < 0)
                ctx->addr.invalid_syntax = TRUE;