commit bccb8fb35c697c583abdee892a15b971dcb79b1b from: Martijn van Duren date: Sun Mar 27 08:14:46 2022 UTC Shrink unknown key tag parsing, similar to what happened in unknown sig tag commit - 4e2dd90f1001dd3bf2b8e342bbd73d01231bb065 commit + bccb8fb35c697c583abdee892a15b971dcb79b1b blob - 1292720beba141660a45ac4b9c01d2aa1b99b57a blob + 4325ae5be33d0c181464c92c90d79467bfa0f1f9 --- main.c +++ main.c @@ -1199,18 +1199,10 @@ dkim_key_text_parse(struct signature *sig, const char key = osmtpd_ltok_skip_fws(key, 1); end = osmtpd_ltok_skip_tag_name(key, 0); - if ((size_t)(end - key) != 1) { - key = osmtpd_ltok_skip_fws(end, 1); - /* '=' */ - key++; - key = osmtpd_ltok_skip_fws(key, 1); - key = osmtpd_ltok_skip_tag_value(key, 0); - key = osmtpd_ltok_skip_fws(key, 1); - if (key[0] == ';') - key++; - continue; - } - tagname = key[0]; + if ((size_t)(end - key) != 1) + tagname = '\0'; + else + tagname = key[0]; key = osmtpd_ltok_skip_fws(end, 1); /* '=' */ key++;