diff options
author | Allen Winter <allen.winter@kdab.com> | 2019-05-12 11:20:02 -0400 |
---|---|---|
committer | Allen Winter <allen.winter@kdab.com> | 2019-05-12 11:21:41 -0400 |
commit | 81554e81f2422b6d7902c15d9deff49fb6fe787b (patch) | |
tree | 86cea6ac4151107ef07b246aa5500c64c70ec164 | |
parent | 981f3dc6cdef0f140c048cb5de15c61a60a0cc6e (diff) | |
download | libical-git-81554e81f2422b6d7902c15d9deff49fb6fe787b.tar.gz |
src/libical/icalparser.c - include <string.h>
for strnlen()
-rwxr-xr-x | scripts/buildtests.sh | 1 | ||||
-rw-r--r-- | src/libical/icalparser.c | 5 |
2 files changed, 4 insertions, 2 deletions
diff --git a/scripts/buildtests.sh b/scripts/buildtests.sh index d3de5d9f..8a7b328a 100755 --- a/scripts/buildtests.sh +++ b/scripts/buildtests.sh @@ -329,6 +329,7 @@ SPLINT() { -D"strdup"="" \ -D"strcasecmp"="strcmp" \ -D"strncasecmp"="strncmp" \ + -D"strnlen"="" \ -D"putenv"="" \ -D"unsetenv"="" \ -D"tzset()"=";" \ diff --git a/src/libical/icalparser.c b/src/libical/icalparser.c index 91996b1b..d1533dc1 100644 --- a/src/libical/icalparser.c +++ b/src/libical/icalparser.c @@ -43,6 +43,7 @@ #include <ctype.h> #include <stddef.h> /* for ptrdiff_t */ #include <stdlib.h> +#include <string.h> /* strnlen() */ #define TMP_BUF_SIZE 80 #define MAX_LINE_LENGTH 8192 /* the maximum number of chars per parser line */ @@ -645,8 +646,8 @@ icalcomponent *icalparser_parse(icalparser *parser, if (line != 0 && strnlen(line, MAX_LINE_LENGTH) >= MAX_LINE_LENGTH) { // Encountered a line that is longer than is reasonable // RFC 5545 Section 3.1 says lines should not be more than 75 octets - // A large maximum length allows for lenient parsing but also prevents unbounded memory usage - // when parsing intentionally malformed data + // A large maximum length allows for lenient parsing but also prevents + // unbounded memory usage when parsing intentionally malformed data icalerror_set_errno(ICAL_MALFORMEDDATA_ERROR); icalmemory_free_buffer(line); line = 0; |