Commit Diff


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++;