]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
* Correctly sent a 100 Continue status code when sending an interim
authorRuediger Pluem <rpluem@apache.org>
Thu, 9 Dec 2021 08:38:30 +0000 (08:38 +0000)
committerRuediger Pluem <rpluem@apache.org>
Thu, 9 Dec 2021 08:38:30 +0000 (08:38 +0000)
  response as result of an Expect: 100-Continue in the request and not the
  current status code of the request.

PR: 65725

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1895719 13f79535-47bb-0310-9956-ffa450edef68

changes-entries/pr65725.txt [new file with mode: 0644]
modules/http/http_filters.c

diff --git a/changes-entries/pr65725.txt b/changes-entries/pr65725.txt
new file mode 100644 (file)
index 0000000..3e8fee9
--- /dev/null
@@ -0,0 +1,3 @@
+  *) mod_http: Correctly sent a 100 Continue status code when sending an interim
+     response as result of an Expect: 100-Continue in the request and not the
+     current status code of the request. PR 65725 [Ruediger Pluem]
index 289ba49abed1ac0a7ae063bfb6d9222113eb2235..47e4d7d1b90b9a964e82823d879f88efd2eb5e41 100644 (file)
@@ -430,9 +430,12 @@ apr_status_t ap_http_filter(ap_filter_t *f, apr_bucket_brigade *b,
         }
         else if (!ctx->seen_data) {
             int saved_status = f->r->status;
+            const char *saved_status_line = f->r->status_line;
             f->r->status = HTTP_CONTINUE;
+            f->r->status_line = NULL;
             ap_send_interim_response(f->r, 0);
             AP_DEBUG_ASSERT(!f->r->expecting_100);
+            f->r->status_line = saved_status_line;
             f->r->status = saved_status;
         }
         else {