httpd/backport-Report-invalid-Options-argument-when-parsing-AllowOverride-directives.patch

60 lines
1.9 KiB
Diff
Raw Permalink Normal View History

2025-04-16 03:32:16 +00:00
From 8486d22d82e484e2e027db30722a9b74e6c99ab9 Mon Sep 17 00:00:00 2001
From: Joe Orton <jorton@apache.org>
Date: Fri, 14 Feb 2025 09:16:23 +0000
Subject: [PATCH] Merge r1917017, r1923218 from trunk:
* server/core.c (set_override): Catch errors returned by
set_allow_opts() for a parsing fail in an Options= argument.
Submitted by: Zhou Qingyang <zhou1615 umn.edu>
Github: closes #310
Add a Changes entry related to r1917017
While at it, fix a small style issue (tab vs spaces)
Submitted by: jorton, jailletc36
Reviewed by: rjung (reduce code drift), jorton, jailletc36
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1923804 13f79535-47bb-0310-9956-ffa450edef68
Conflict:NA
Reference:https://github.com/apache/httpd/commit/8486d22d82e484e2e027db30722a9b74e6c99ab9
---
changes-entries/github 310.txt | 3 +++
server/core.c | 6 ++++--
2 files changed, 7 insertions(+), 2 deletions(-)
create mode 100644 changes-entries/github 310.txt
diff --git a/changes-entries/github 310.txt b/changes-entries/github 310.txt
new file mode 100644
index 0000000..2d966cd
--- /dev/null
+++ b/changes-entries/github 310.txt
@@ -0,0 +1,3 @@
+ *) core: Report invalid Options= argument when parsing AllowOverride
+ directives.
+ Github #310 [Zhou Qingyang <zhou1615 umn.edu>]
diff --git a/server/core.c b/server/core.c
index e8ef728..1401863 100644
--- a/server/core.c
+++ b/server/core.c
@@ -1831,8 +1831,10 @@ static const char *set_override(cmd_parms *cmd, void *d_, const char *l)
}
else if (!ap_cstr_casecmp(k, "Options")) {
d->override |= OR_OPTIONS;
- if (v)
- set_allow_opts(cmd, &(d->override_opts), v);
+ if (v) {
+ if ((err = set_allow_opts(cmd, &(d->override_opts), v)) != NULL)
+ return err;
+ }
else
d->override_opts = OPT_ALL;
}
--
2.33.0