diff options
author | Vincent Sanders <vince@kyllikki.org> | 2019-06-13 17:02:08 +0100 |
---|---|---|
committer | Vincent Sanders <vince@kyllikki.org> | 2019-06-13 17:02:08 +0100 |
commit | 8b6f590aaa8d110ef6f62befb792827c16d7e75a (patch) | |
tree | 6346e540c6a1fd118707148088bf9e66d149ee17 | |
parent | 1951c0f8094ab74abd1873e622a8a79f2627c7fc (diff) | |
download | netsurf-8b6f590aaa8d110ef6f62befb792827c16d7e75a.tar.gz netsurf-8b6f590aaa8d110ef6f62befb792827c16d7e75a.tar.bz2 |
prevent out of bounds access when checking IDNA host label
-rw-r--r-- | utils/idna.c | 2 |
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; |