summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2020-01-21 10:49:58 +0100
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2020-02-05 17:34:53 +0100
commit9a135baa409deedbb21dd4d5f1d346f55d7e0d29 (patch)
tree640324339ed999e9a6b0c31d4a40f90a34036ce5
parent1ff3972a0fddb0d3259db02a904ef29aedbdff1d (diff)
downloadsystemd-9a135baa409deedbb21dd4d5f1d346f55d7e0d29.tar.gz
journal: don't use startswith() on something that is not a NUL-terminated string
Otherwise we might access memory coming after it that is not valid or allocated. Fixes: #14114 (cherry picked from commit e0567bc8adfe027052b78b40efb57d543924f138) (cherry picked from commit ae59f1666ca62b94355cc6d126e8fcf67f0715ca)
-rw-r--r--src/journal/sd-journal.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/journal/sd-journal.c b/src/journal/sd-journal.c
index 82b180b019..96e3cf33db 100644
--- a/src/journal/sd-journal.c
+++ b/src/journal/sd-journal.c
@@ -162,7 +162,7 @@ static int match_is_valid(const void *data, size_t size) {
if (size < 2)
return false;
- if (startswith(data, "__"))
+ if (((char*) data)[0] == '_' && ((char*) data)[1] == '_')
return false;
b = data;