summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2019-06-13 17:02:08 +0100
committerVincent Sanders <vince@kyllikki.org>2019-06-13 17:02:08 +0100
commit8b6f590aaa8d110ef6f62befb792827c16d7e75a (patch)
tree6346e540c6a1fd118707148088bf9e66d149ee17
parent1951c0f8094ab74abd1873e622a8a79f2627c7fc (diff)
downloadnetsurf-8b6f590aaa8d110ef6f62befb792827c16d7e75a.tar.gz
netsurf-8b6f590aaa8d110ef6f62befb792827c16d7e75a.tar.bz2
prevent out of bounds access when checking IDNA host label
-rw-r--r--utils/idna.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/utils/idna.c b/utils/idna.c
index 70d321db5..d657f90e2 100644
--- a/utils/idna.c
+++ b/utils/idna.c
@@ -437,7 +437,7 @@ static bool idna__is_valid(int32_t *label, size_t len)
*/
/* 2. Check characters 3 and 4 are not '--'. */
- if ((label[2] == 0x002d) && (label[3] == 0x002d)) {
+ if ((len >= 4) && (label[2] == 0x002d) && (label[3] == 0x002d)) {
NSLOG(netsurf, INFO,
"Check failed: characters 2 and 3 are '--'");
return false;