commit | 793982a5816f8781c89220fca6f9cc668b53d602 | [log] [tgz] |
---|---|---|
author | Lev Walkin <vlm@lionet.info> | Mon Oct 02 14:12:51 2017 -0700 |
committer | Lev Walkin <vlm@lionet.info> | Mon Oct 02 14:12:51 2017 -0700 |
tree | a7568ca72f6583518493358ee9e701316e014abe | |
parent | f5e333e92dce96d82eeef338b49a087c53c70b04 [diff] [blame] |
fix XER decoder crash on maliciously constructed ENUMERATED input
diff --git a/skeletons/INTEGER.c b/skeletons/INTEGER.c index d8cbca2..d2d8048 100644 --- a/skeletons/INTEGER.c +++ b/skeletons/INTEGER.c
@@ -238,7 +238,7 @@ /* Compare strings */ for(ptr = key->start, end = key->stop, name = el->enum_name; ptr < end; ptr++, name++) { - if(*ptr != *name) + if(*ptr != *name || !*name) return *(const unsigned char *)ptr - *(const unsigned char *)name; }