File CVE-2025-58098.patch of Package apache2.42012

From ecc1b8f3817e3dcab9c1f24f905752d3c0a279af Mon Sep 17 00:00:00 2001
From: Eric Covener <covener@apache.org>
Date: Mon, 1 Dec 2025 12:00:14 +0000
Subject: [PATCH] don't pass args for SSI request

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1930161 13f79535-47bb-0310-9956-ffa450edef68
---
 modules/generators/mod_cgid.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

Index: httpd-2.4.51/modules/generators/mod_cgid.c
===================================================================
--- httpd-2.4.51.orig/modules/generators/mod_cgid.c
+++ httpd-2.4.51/modules/generators/mod_cgid.c
@@ -236,7 +236,7 @@ static char **create_argv(apr_pool_t *p,
     char *w;
     int idx = 0;
 
-    if (!(*args) || ap_strchr_c(args, '=')) {
+    if (!args || !(*args) || ap_strchr_c(args, '=')) {
         numwords = 0;
     }
     else {
@@ -803,7 +803,10 @@ static int cgid_server(void *data)
         else {
             apr_pool_userdata_set(r, ERRFN_USERDATA_KEY, apr_pool_cleanup_null, ptrans);
 
-            argv = (const char * const *)create_argv(r->pool, NULL, NULL, NULL, argv0, r->args);
+            /* Do not pass args in case of SSI requests */
+            argv = (const char * const *)create_argv(r->pool, NULL, NULL, NULL,
+                                                     argv0,
+                                                     cgid_req.req_type == SSI_REQ ? NULL : r->args);
 
            /* We want to close sd2 for the new CGI process too.
             * If it is left open it'll make ap_pass_brigade() block
openSUSE Build Service is sponsored by