]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
fuzz-systemctl: limit the size of input
authorYu Watanabe <watanabe.yu+github@gmail.com>
Fri, 2 Dec 2022 05:14:50 +0000 (14:14 +0900)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 2 Dec 2022 13:22:25 +0000 (14:22 +0100)
Fixes [oss-fuzz#53552](https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=53552).
Fixes #25445.

src/systemctl/fuzz-systemctl-parse-argv.c

index 92f6ecaa8d044145b87ae87f91ec71c66e48f7d8..52574ba9968f99409d85a904af47c1ed8a257a66 100644 (file)
@@ -19,6 +19,9 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
         _cleanup_close_ int orig_stdout_fd = -1;
         int r;
 
+        if (size > 4*1024*1024)
+                return 0; /* See the comment below about the limit for strv_length(). */
+
         /* We don't want to fill the logs with messages about parse errors.
          * Disable most logging if not running standalone */
         if (!getenv("SYSTEMD_LOG_LEVEL"))