]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
coredump: get rid of a bogus assertion
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 26 May 2025 13:24:04 +0000 (15:24 +0200)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Thu, 29 May 2025 14:49:36 +0000 (16:49 +0200)
The check looks plausible, but when I started checking whether it needs
to be lowered for the recent changes, I realized that it doesn't make
much sense.

context_parse_iovw() is called from a few places, e.g.:
- process_socket(), where the other side controls the contents of the
  message. We already do other checks on the correctness of the message
  and this assert is not needed.
- gather_pid_metadata_from_argv(), which is called after
  inserting MESSAGE_ID= and PRIORITY= into the array, so there is no
  direct relation between _META_ARGV_MAX and the number of args in the
  iovw.
- gather_pid_metadata_from_procfs(), where we insert a bazillion fields,
  but without any relation to _META_ARGV_MAX.

Since we already separately check if the required stuff was set, drop this
misleading check.

(cherry picked from commit 13902e025321242b1d95c6d8b4e482b37f58cdef)
(cherry picked from commit 4c424072b3cc6a68265345cef2d29a6903081dcf)

src/coredump/coredump.c

index 21555ccd28581fa26993ad9bf926b2fe37e26609..6c4dac706786b9888ea8ecbd7599b0cbe5bd937d 100644 (file)
@@ -960,7 +960,6 @@ static int save_context(Context *context, const struct iovec_wrapper *iovw) {
 
         assert(context);
         assert(iovw);
-        assert(iovw->count >= _META_ARGV_MAX);
 
         /* The context does not allocate any memory on its own */