diff --git a/src/lib-managesieve/managesieve-parser.c b/src/lib-managesieve/managesieve-parser.c index d3eb210126db61c044334ba0d7e34de9d58f98e6..f5f9d32320b05eac24a9fd38b65abcec72231042 100644 --- a/src/lib-managesieve/managesieve-parser.c +++ b/src/lib-managesieve/managesieve-parser.c @@ -258,6 +258,11 @@ managesieve_parser_read_string(struct managesieve_parser *parser, break; } + if (data[i] == '\0') { + parser->error = "NULs not allowed in strings"; + return FALSE; + } + if (data[i] == '\\') { if (i+1 == data_size) { /* known data ends with '\' - leave it to