From unknown Mon Aug 18 02:07:15 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#68707 <68707@debbugs.gnu.org> To: bug#68707 <68707@debbugs.gnu.org> Subject: Status: [PATCH] env,kill: Handle unnamed signals Reply-To: bug#68707 <68707@debbugs.gnu.org> Date: Mon, 18 Aug 2025 09:07:15 +0000 retitle 68707 [PATCH] env,kill: Handle unnamed signals reassign 68707 coreutils submitter 68707 Grisha Levit severity 68707 normal tag 68707 notabug patch thanks From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 24 23:34:31 2024 Received: (at submit) by debbugs.gnu.org; 25 Jan 2024 04:34:31 +0000 Received: from localhost ([127.0.0.1]:47020 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rSrRe-0002Az-Ft for submit@debbugs.gnu.org; Wed, 24 Jan 2024 23:34:31 -0500 Received: from lists.gnu.org ([2001:470:142::17]:36224) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rSj1f-0001Tj-Qj for submit@debbugs.gnu.org; Wed, 24 Jan 2024 14:35:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rSj1U-0005CI-FT for bug-coreutils@gnu.org; Wed, 24 Jan 2024 14:34:56 -0500 Received: from mail-qt1-x836.google.com ([2607:f8b0:4864:20::836]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rSj1P-00087Q-K5 for bug-coreutils@gnu.org; Wed, 24 Jan 2024 14:34:55 -0500 Received: by mail-qt1-x836.google.com with SMTP id d75a77b69052e-429fc7a1eacso50668471cf.2 for ; Wed, 24 Jan 2024 11:34:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706124889; x=1706729689; darn=gnu.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=cceOZePh18/rEn2/ooVFduiL3tQ64KqHfvpeRf0/FAU=; b=KTdHZHE3BdpjAdzrR/E9G7yqidCCprmlAukWhb5AdKL5taG9VoYElhnXV30JxYcbrJ Q0RudP8xLtPyCP350xf2EmshUbOulTpIXThu/PPjaFBJBrkKVLPl0KPwYOHFKkrxxvNE v7s8QkhB3nu0Dd9GQNpBBZVVznYyKQmU4PdEArZ7GRLYUa+CW/99QTwmkrD+13uJzJqK jdjncm0GRHJjXgzh5pznv4cWatBVlW8/+AceUGVuBl1d8EXMWpkop6d0r7fW/bKifGEs +PcGviu/rYDCwoz6cs6nTwNThSUSXZD7dhl+8+zx65HIoSfAw4w5TqNoRiwoFA+KosKE H4IA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706124889; x=1706729689; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=cceOZePh18/rEn2/ooVFduiL3tQ64KqHfvpeRf0/FAU=; b=nhvwd8P+QWd0+Udd/YK2R7oKuIg+KOpdS74HSKZD09WqStjAAgQxU3cQ1tSWdpVkFn aQmjAtiLINIjYW9HLDG1GBMXepp78KolhLv3veiV8/huBYRGMc4Fy6ogAVXc4t/V8bJj dUPgEpc6zFAiT1iyrPjpyJTqzuJW5kcxHJT+b5OGcGJSMofllmuFdIci6Oul+Nh2zGO3 mL34MO4JVR620IOEwQE+rbaFpb56GTxlAvhwX8KwC0g9SDj4PkSqmttG2kCut3D5hr/e tS+PATCvza0ws9O3pqBWPkMxvE0mfRNrrTcr3amDJ1SWbPL0MhW2h+kRV+s+qO3M3hCP oUSg== X-Gm-Message-State: AOJu0YwvG7GdfGEXSYCrliH+y6HhlXvHSYdBBqSZWq0ylNQ3GyUq8yqF vw4QTkM0MVA6AWXrGad+wQ7s2HysS9pr7+AZnb26V4qHoArYnDxg8agf/Jy3CiI= X-Google-Smtp-Source: AGHT+IHH12ZJ2kR2mU3Wme4nI6kSo12szPut88l7vjLLyK+0V1PAu7JuXO4YtVxPVYMUEn8BDYwgew== X-Received: by 2002:a05:622a:195:b0:42a:27d5:59ce with SMTP id s21-20020a05622a019500b0042a27d559cemr3048869qtw.65.1706124888731; Wed, 24 Jan 2024 11:34:48 -0800 (PST) Received: from localhost ([70.18.203.251]) by smtp.gmail.com with UTF8SMTPSA id ka18-20020a05622a441200b0042994016b68sm4617050qtb.71.2024.01.24.11.34.47 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 24 Jan 2024 11:34:48 -0800 (PST) From: Grisha Levit To: bug-coreutils@gnu.org Subject: [PATCH] env,kill: Handle unnamed signals Date: Wed, 24 Jan 2024 14:32:48 -0500 Message-ID: <20240124193426.17073-1-grishalevit@gmail.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=2607:f8b0:4864:20::836; envelope-from=grishalevit@gmail.com; helo=mail-qt1-x836.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Wed, 24 Jan 2024 23:34:29 -0500 Cc: Grisha Levit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Android reserves [1] some realtime signals and redefines [2] SIGRTMIN, leaving a gap between the signals that have SIG* constants defined in signal.h and SIGRTMIN. When passed such a signal number, gnulib sig2str returns -1 and leaves its signame argument unchanged. The signal listing in env ends up reusing the name of the last printed valid signal: $ env --list-signal-handling true HUP ( 1): IGNORE HUP (32): BLOCK HUP (38): IGNORE ..and the corresponding signal numbers are rejected as operands for the env, kill, and timeout commands. This patch removes the requirement that sig2str returns 0 for a signal number associated with an operand, and allows unnamed signals to be in the sets `env' attempts to manipulate when a --*-signal option is used with no argument. This does leave the possibility of numbers lower than SIGNUM_BOUND that are not valid signals, but I'm not sure that's really a problem for the existing code paths (if it is, adding checks for sigset_t manipulations would probably be enough). To be on the safe side, added a check to report kill(3) EINVAL as a bad signo (rather than always blaming the pid). This does not change the default list printed with `kill -l'. When a name is to be printed, the signal number associated with an unnamed signal is used. [1]: https://cs.android.com/android/platform/superproject/main/+/main:bionic/libc/platform/bionic/reserved_signals.h [2]: https://cs.android.com/android/platform/superproject/main/+/main:bionic/libc/include/signal.h;l=51 * src/operand2sig.c (operand2sig): Drop signame argument, accept all signal numbers <= SIGNUM_BOUND. All callers updated. * src/env.c (parse_signal_action_params, reset_signal_handlers) (parse_block_signal_params, set_signal_proc_mask) (list_signal_handling): Accept all signal numbers <= SIGNUM_BOUND, use signal number for printing if necessary. * src/kill.c (list_signals, main): Likewise. (send_signals): Check errno from kill(3) for bad signo. * src/timeout.c (main): Update operand2sig call. * tests/misc/kill.sh: Test listing all signal numbers. --- src/env.c | 18 +++++++++--------- src/kill.c | 29 ++++++++++++++++------------- src/operand2sig.c | 8 ++++---- src/operand2sig.h | 2 +- src/timeout.c | 3 +-- tests/misc/kill.sh | 8 ++++++++ 6 files changed, 39 insertions(+), 29 deletions(-) diff --git a/src/env.c b/src/env.c index ffe896039..e40767610 100644 --- a/src/env.c +++ b/src/env.c @@ -538,7 +538,6 @@ parse_split_string (char const *str, int *orig_optind, static void parse_signal_action_params (char const *optarg, bool set_default) { - char signame[SIG2STR_MAX]; char *opt_sig; char *optarg_writable; @@ -548,8 +547,7 @@ parse_signal_action_params (char const *optarg, bool set_default) Some signals cannot be set to ignore or default (e.g., SIGKILL, SIGSTOP on most OSes, and SIGCONT on AIX.) - so ignore errors. */ for (int i = 1 ; i <= SIGNUM_BOUND; i++) - if (sig2str (i, signame) == 0) - signals[i] = set_default ? DEFAULT_NOERR : IGNORE_NOERR; + signals[i] = set_default ? DEFAULT_NOERR : IGNORE_NOERR; return; } @@ -558,7 +556,7 @@ parse_signal_action_params (char const *optarg, bool set_default) opt_sig = strtok (optarg_writable, ","); while (opt_sig) { - int signum = operand2sig (opt_sig, signame); + int signum = operand2sig (opt_sig); /* operand2sig accepts signal 0 (EXIT) - but we reject it. */ if (signum == 0) error (0, 0, _("%s: invalid signal"), quote (opt_sig)); @@ -607,7 +605,8 @@ reset_signal_handlers (void) if (dev_debug) { char signame[SIG2STR_MAX]; - sig2str (i, signame); + if (sig2str (i, signame) != 0) + snprintf (signame, sizeof signame, "%d", i); devmsg ("Reset signal %s (%d) to %s%s\n", signame, i, set_to_default ? "DEFAULT" : "IGNORE", @@ -620,7 +619,6 @@ reset_signal_handlers (void) static void parse_block_signal_params (char const *optarg, bool block) { - char signame[SIG2STR_MAX]; char *opt_sig; char *optarg_writable; @@ -647,7 +645,7 @@ parse_block_signal_params (char const *optarg, bool block) opt_sig = strtok (optarg_writable, ","); while (opt_sig) { - int signum = operand2sig (opt_sig, signame); + int signum = operand2sig (opt_sig); /* operand2sig accepts signal 0 (EXIT) - but we reject it. */ if (signum == 0) error (0, 0, _("%s: invalid signal"), quote (opt_sig)); @@ -695,7 +693,8 @@ set_signal_proc_mask (void) if (dev_debug && debug_act) { char signame[SIG2STR_MAX]; - sig2str (i, signame); + if (sig2str (i, signame) != 0) + snprintf (signame, sizeof signame, "%d", i); devmsg ("signal %s (%d) mask set to %s\n", signame, i, debug_act); } @@ -728,7 +727,8 @@ list_signal_handling (void) if (! *ignored && ! *blocked) continue; - sig2str (i, signame); + if (sig2str (i, signame) != 0) + snprintf (signame, sizeof signame, "%d", i); fprintf (stderr, "%-10s (%2d): %s%s%s\n", signame, i, blocked, connect, ignored); } diff --git a/src/kill.c b/src/kill.c index 9c8b6c191..f386c9cbc 100644 --- a/src/kill.c +++ b/src/kill.c @@ -131,11 +131,15 @@ list_signals (bool table, char *const *argv) if (argv) for (; *argv; argv++) { - signum = operand2sig (*argv, signame); + signum = operand2sig (*argv); if (signum < 0) status = EXIT_FAILURE; else - print_table_row (num_width, signum, name_width, signame); + { + if (sig2str (signum, signame) != 0) + snprintf (signame, sizeof signame, "%d", signum); + print_table_row (num_width, signum, name_width, signame); + } } else for (signum = 1; signum <= SIGNUM_BOUND; signum++) @@ -147,16 +151,13 @@ list_signals (bool table, char *const *argv) if (argv) for (; *argv; argv++) { - signum = operand2sig (*argv, signame); + signum = operand2sig (*argv); if (signum < 0) status = EXIT_FAILURE; + else if (ISDIGIT (**argv) && sig2str (signum, signame) == 0) + puts (signame); else - { - if (ISDIGIT (**argv)) - puts (signame); - else - printf ("%d\n", signum); - } + printf ("%d\n", signum); } else for (signum = 1; signum <= SIGNUM_BOUND; signum++) @@ -188,9 +189,12 @@ send_signals (int signum, char *const *argv) error (0, 0, _("%s: invalid process id"), quote (arg)); status = EXIT_FAILURE; } - else if (kill (pid, signum) != 0) + else if (errno = 0, kill (pid, signum) != 0) { - error (0, errno, "%s", quote (arg)); + if (errno == EINVAL) + error (0, errno, "%d", signum); + else + error (0, errno, "%s", quote (arg)); status = EXIT_FAILURE; } } @@ -206,7 +210,6 @@ main (int argc, char **argv) bool list = false; bool table = false; int signum = -1; - char signame[SIG2STR_MAX]; initialize_main (&argc, &argv); set_program_name (argv[0]); @@ -251,7 +254,7 @@ main (int argc, char **argv) error (0, 0, _("%s: multiple signals specified"), quote (optarg)); usage (EXIT_FAILURE); } - signum = operand2sig (optarg, signame); + signum = operand2sig (optarg); if (signum < 0) usage (EXIT_FAILURE); break; diff --git a/src/operand2sig.c b/src/operand2sig.c index 2a2563c62..b46cb1bed 100644 --- a/src/operand2sig.c +++ b/src/operand2sig.c @@ -18,8 +18,8 @@ FIXME: Move this to gnulib/str2sig.c */ -/* Convert OPERAND to a signal number with printable representation SIGNAME. - Return the signal number, or -1 if unsuccessful. */ +/* Convert OPERAND to a signal number. Return the signal number, or -1 if + unsuccessful. */ #include #include @@ -32,7 +32,7 @@ #include "operand2sig.h" extern int -operand2sig (char const *operand, char *signame) +operand2sig (char const *operand) { int signum; @@ -82,7 +82,7 @@ operand2sig (char const *operand, char *signame) free (upcased); } - if (signum < 0 || sig2str (signum, signame) != 0) + if (0 > signum || signum > SIGNUM_BOUND) { error (0, 0, _("%s: invalid signal"), quote (operand)); return -1; diff --git a/src/operand2sig.h b/src/operand2sig.h index e46689e7b..3bc551051 100644 --- a/src/operand2sig.h +++ b/src/operand2sig.h @@ -15,5 +15,5 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -extern int operand2sig (char const *operand, char *signame) +extern int operand2sig (char const *operand) _GL_ATTRIBUTE_NONNULL (); diff --git a/src/timeout.c b/src/timeout.c index 85d97c0b5..7d1ea7da6 100644 --- a/src/timeout.c +++ b/src/timeout.c @@ -462,7 +462,6 @@ int main (int argc, char **argv) { double timeout; - char signame[SIG2STR_MAX]; int c; initialize_main (&argc, &argv); @@ -483,7 +482,7 @@ main (int argc, char **argv) break; case 's': - term_signal = operand2sig (optarg, signame); + term_signal = operand2sig (optarg); if (term_signal == -1) usage (EXIT_CANCELED); break; diff --git a/tests/misc/kill.sh b/tests/misc/kill.sh index 69679e5a6..79a93de5f 100755 --- a/tests/misc/kill.sh +++ b/tests/misc/kill.sh @@ -60,4 +60,12 @@ returns_ 1 env kill -l -1 || fail=1 returns_ 1 env kill -l -1 0 || fail=1 returns_ 1 env kill -l INVALID TERM || fail=1 +# Verify all signal numbers can be listed +SIG_LAST_STR=$(env kill -l | tail -n1) || framework_failure_ +SIG_LAST_NUM=$(env kill -l -- "$SIG_LAST_STR") || framework_failure_ +SIG_SEQ=$(env seq -- 0 "$SIG_LAST_NUM") || framework_failure_ +test -n "$SIG_SEQ" || framework_failure_ +env kill -l -- $SIG_SEQ || fail=1 +env kill -t -- $SIG_SEQ || fail=1 + Exit $fail -- 2.43.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Jan 25 09:50:58 2024 Received: (at control) by debbugs.gnu.org; 25 Jan 2024 14:50:58 +0000 Received: from localhost ([127.0.0.1]:47697 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rT14E-00028s-9K for submit@debbugs.gnu.org; Thu, 25 Jan 2024 09:50:58 -0500 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]:50464) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rT14B-00028e-DM for control@debbugs.gnu.org; Thu, 25 Jan 2024 09:50:56 -0500 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-40eb2f392f0so37937425e9.1 for ; Thu, 25 Jan 2024 06:50:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706194243; x=1706799043; darn=debbugs.gnu.org; h=content-transfer-encoding:from:to:content-language:user-agent :mime-version:date:message-id:sender:from:to:cc:subject:date :message-id:reply-to; bh=SU/Fj7vkzF4qt7V13R6D6WU6rd7HN90PoiaI37PSMqE=; b=EkwLaopArSMAzyaP9b3cqF2GeXduJkpZYyIy1RWJIMfsE5sAvO+NVR2FeGrNa0AnoX 4LFiy4rFW/5S9uGyjNwDe4ue3QJqXV2sxEbdGgTRfUf0Jx76Qw7TMyNFQ/TdLXaiR6I2 K3n9tSj8uG4N7pkFXXtbkv86+y3wB8L4Z2NErGsioaYrOYAHxyaqW/3eqw1eCmsCeE45 efkmOuB0DK0MEgY5qC/8c6gilMvK5feq3mtwqldeecFe9TN3RCrJ/fk87715QUFzNvuC sraOULGOXc0yXKO+p30bZJ4rsGtTs5IiUp/UbKjwPEGLa5a+/rg47RPmsj1BezOxHFYE uD2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706194243; x=1706799043; h=content-transfer-encoding:from:to:content-language:user-agent :mime-version:date:message-id:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SU/Fj7vkzF4qt7V13R6D6WU6rd7HN90PoiaI37PSMqE=; b=MpjHGqmCNPN0ixd20ZwwT8l0udzRMUGLaQ9YRGjj52yZ+keakVOBcXwe609BCbwMUK eJZbpy3Lf5g5oPBBd88igr/zyI8ZUoFnaR/Kgr8lD4BrTvxJck3TxNDMG2SAAMbmI+dW Jcrj769nlpdys3mcRqpx43qf7oQxgFJsvXQq2kQ3uzliisjkiIvGmLRZ2sMnXn5FaYEY K+BIvdergHp2mZZ7l5lTz/f17BTfAitEkZjarmgjObRVBpoRVAsmbuK71Mx3oZapg/Zh xpe8BIKV7qYUBtxPalmvB4sZC8Ko6AiynLAdtT9sv60BCDdx5QlwQbERgckqd8oqihWX 7w/Q== X-Gm-Message-State: AOJu0YxkOiGHmFQO+Zjbf1+aXZHYxjggSIoZeO7Bpms5OJbtS9t/hbnC WPT12bIwg2hWrZNVS5SSf/5MajOReCTw9mgyN1TTYXvyhp4lQMHJqMdVTRlr X-Google-Smtp-Source: AGHT+IE0L6KQm02v3j9HlzgoD9AHd/FJHwlKbq3DcCO7R/yRHJtfsM1LeNGe/0EvBuK0qy9hIow3Eg== X-Received: by 2002:a1c:741a:0:b0:40e:81e4:2735 with SMTP id p26-20020a1c741a000000b0040e81e42735mr572828wmc.61.1706194243429; Thu, 25 Jan 2024 06:50:43 -0800 (PST) Received: from [192.168.1.20] (86-40-129-3-dynamic.agg2.lod.rsl-rtd.eircom.net. [86.40.129.3]) by smtp.googlemail.com with ESMTPSA id bg42-20020a05600c3caa00b0040e54f15d3dsm2871778wmb.31.2024.01.25.06.50.42 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 25 Jan 2024 06:50:43 -0800 (PST) Message-ID: <35a72870-ab9f-25b0-f91f-63bd6567cfad@draigBrady.com> Date: Thu, 25 Jan 2024 14:50:42 +0000 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: GNU bug tracker automated control server From: =?UTF-8?Q?P=C3=A1draig_Brady?= Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 2.5 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: tag 68707 notabug close 68707 stop Content analysis details: (2.5 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record 0.2 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (pixelbeat[at]gmail.com) -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:329 listed in] [list.dnswl.org] -0.0 T_SCC_BODY_TEXT_LINE No description available. 0.2 FREEMAIL_FORGED_FROMDOMAIN 2nd level domains in From and EnvelopeFrom freemail headers are different 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.5 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: tag 68707 notabug close 68707 stop Content analysis details: (1.5 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:329 listed in] [list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.2 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (pixelbeat[at]gmail.com) -0.0 T_SCC_BODY_TEXT_LINE No description available. 0.2 FREEMAIL_FORGED_FROMDOMAIN 2nd level domains in From and EnvelopeFrom freemail headers are different 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager tag 68707 notabug close 68707 stop From unknown Mon Aug 18 02:07:15 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 23 Feb 2024 12:24:08 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator