5b21f0
From c8391790c96d4c8a2c10f9ab1460fda83b509fc2 Mon Sep 17 00:00:00 2001
5b21f0
From: Willem Toorop <willem@nlnetlabs.nl>
5b21f0
Date: Thu, 27 Apr 2017 00:14:58 +0200
5b21f0
Subject: [PATCH] Check parse limit before t increment
5b21f0
5b21f0
Thanks Stephan Zeisberg
5b21f0
---
5b21f0
 parse.c | 4 ++++
5b21f0
 1 file changed, 4 insertions(+)
5b21f0
5b21f0
diff --git a/parse.c b/parse.c
5b21f0
index e68627c..947dbb8 100644
5b21f0
--- a/parse.c
5b21f0
+++ b/parse.c
5b21f0
@@ -118,6 +118,10 @@ ldns_fget_token_l(FILE *f, char *token, const char *delim, size_t limit, int *li
5b21f0
 			if (line_nr) {
5b21f0
 				*line_nr = *line_nr + 1;
5b21f0
 			}
5b21f0
+			if (limit > 0 && (i >= limit || (size_t)(t-token) >= limit)) {
5b21f0
+				*t = '\0';
5b21f0
+				return -1;
5b21f0
+			}
5b21f0
 			*t++ = ' ';
5b21f0
 			prev_c = c;
5b21f0
 			continue;
5b21f0
-- 
5b21f0
2.9.5
5b21f0