From 304e6ccd30a1f17a0594482cd85b736080377523 Mon Sep 17 00:00:00 2001
From: Karel Slany <karel.slany@nic.cz>
Date: Mon, 25 Jul 2016 11:20:27 +0200
Subject: [PATCH] Added tests for cookie length.

---
 lib/cookies/helper.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/lib/cookies/helper.c b/lib/cookies/helper.c
index 019b863dd..a1eb5130b 100644
--- a/lib/cookies/helper.c
+++ b/lib/cookies/helper.c
@@ -98,6 +98,9 @@ static int opt_rr_put_cookie_opt(knot_rrset_t *opt_rr, uint8_t *option, knot_mm_
 
 	uint16_t opt_len = knot_edns_opt_get_length(option);
 	uint8_t *opt_data = knot_edns_opt_get_data(option);
+	if (!opt_data || opt_len == 0) {
+		return kr_error(EINVAL);
+	}
 
 	return opt_rr_put_cookie(opt_rr, opt_data, opt_len, mm);
 }
@@ -264,7 +267,9 @@ int kr_parse_cookie_opt(uint8_t *cookie_opt, struct knot_dns_cookies *cookies)
 
 	const uint8_t *cookie_data = knot_edns_opt_get_data(cookie_opt);
 	uint16_t cookie_len = knot_edns_opt_get_length(cookie_opt);
-	assert(cookie_data && cookie_len);
+	if (!cookie_data || cookie_len == 0) {
+		return kr_error(EINVAL);
+	}
 
 	int ret =  knot_edns_opt_cookie_parse(cookie_data, cookie_len,
 	                                      &cookies->cc, &cookies->cc_len,
-- 
GitLab