]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-mail: message_address_parse_path() - Fix one byte overread
authorPhilippe Antoine <contact@catenacyber.fr>
Thu, 2 Apr 2020 15:28:58 +0000 (17:28 +0200)
committertimo.sirainen <timo.sirainen@open-xchange.com>
Wed, 8 Apr 2020 07:59:02 +0000 (07:59 +0000)
src/lib-mail/message-address.c

index b1d2a14d1abfd2afeb2be954d2b3b7353b14118d..fb06afae7b757829b793e065a1b370c178a68147 100644 (file)
@@ -177,7 +177,7 @@ static int parse_angle_addr(struct message_address_parser_context *ctx,
        if (*ctx->parser.data == '@') {
                if (parse_domain_list(ctx) > 0 && *ctx->parser.data == ':') {
                        ctx->parser.data++;
-               } else if (parsing_path && *ctx->parser.data != ':') {
+               } else if (parsing_path && (ctx->parser.data >= ctx->parser.end || *ctx->parser.data != ':')) {
                        return -1;
                } else {
                        if (ctx->fill_missing)