Blame SOURCES/CVE-2022-2929.patch

0b4c43
diff --git a/common/options.c b/common/options.c
0b4c43
index 40238f7..11b1961 100644
0b4c43
--- a/common/options.c
0b4c43
+++ b/common/options.c
0b4c43
@@ -454,16 +454,16 @@ int fqdn_universe_decode (struct option_state *options,
0b4c43
 		while (s < &bp -> data[0] + length + 2) {
0b4c43
 			len = *s;
0b4c43
 			if (len > 63) {
0b4c43
-				log_info ("fancy bits in fqdn option");
0b4c43
-				return 0;
0b4c43
+				log_info ("label length exceeds 63 in fqdn option");
0b4c43
+				goto bad;
0b4c43
 			}
0b4c43
 			if (len == 0) {
0b4c43
 				terminated = 1;
0b4c43
 				break;
0b4c43
 			}
0b4c43
 			if (s + len > &bp -> data [0] + length + 3) {
0b4c43
-				log_info ("fqdn tag longer than buffer");
0b4c43
-				return 0;
0b4c43
+				log_info ("fqdn label longer than buffer");
0b4c43
+				goto bad;
0b4c43
 			}
0b4c43
 
0b4c43
 			if (first_len == 0) {