From 8786d4bbe43b5f6493982bcb5211e010f99deb57 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Mon, 21 Dec 2020 16:33:20 +0900 Subject: [PATCH] journal-importer: ignore invalid field at one more place Fixes oss-fuzz#28817. https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28817 --- src/shared/journal-importer.c | 10 ++++++++++ test/fuzz/fuzz-journal-remote/oss-fuzz-28817 | Bin 0 -> 256 bytes 2 files changed, 10 insertions(+) create mode 100644 test/fuzz/fuzz-journal-remote/oss-fuzz-28817 diff --git a/src/shared/journal-importer.c b/src/shared/journal-importer.c index e95b638f4d..b2785f0552 100644 --- a/src/shared/journal-importer.c +++ b/src/shared/journal-importer.c @@ -334,6 +334,16 @@ int journal_importer_process_data(JournalImporter *imp) { if (r < 0) return r; } else { + if (!journal_field_valid(line, n - 1, true)) { + char buf[64], *t; + + t = strndupa(line, n - 1); + log_debug("Ignoring invalid field: \"%s\"", + cellescape(buf, sizeof buf, t)); + + return 0; + } + /* replace \n with = */ line[n-1] = '='; diff --git a/test/fuzz/fuzz-journal-remote/oss-fuzz-28817 b/test/fuzz/fuzz-journal-remote/oss-fuzz-28817 new file mode 100644 index 0000000000000000000000000000000000000000..5b1205595637013e87a25d027deb19f6ba50ac2f GIT binary patch literal 256 zcma!NVPIgewMgTNj}LNn^a=6wb&UrR!6A;m0k(!*T)wut##~&67Ph_&DduJt|NsB@ z^l`OS00AzbvS3GdC{Mwbi_6KWh>HtoAP8^;`8t7wz}U$aOgq_PSYgJ6sU;V?Q4q5n JG1XIG1pt|WF-`yg literal 0 HcmV?d00001