From: Yu Watanabe Date: Mon, 21 Dec 2020 07:33:20 +0000 (+0900) Subject: journal-importer: ignore invalid field at one more place X-Git-Tag: v248-rc1~458 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8786d4bbe43b5f6493982bcb5211e010f99deb57;p=thirdparty%2Fsystemd.git journal-importer: ignore invalid field at one more place Fixes oss-fuzz#28817. https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28817 --- diff --git a/src/shared/journal-importer.c b/src/shared/journal-importer.c index e95b638f4db..b2785f05524 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 00000000000..5b120559563 Binary files /dev/null and b/test/fuzz/fuzz-journal-remote/oss-fuzz-28817 differ