From: Ruediger Pluem Date: Fri, 6 Jun 2008 21:56:13 +0000 (+0000) Subject: * Don't send 100-Continue when there was no Expect: 100-continue in the X-Git-Tag: 2.3.0~537 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d9c0b7e0704e0f32d0c20ed0761bc3ab9264109b;p=apache * Don't send 100-Continue when there was no Expect: 100-continue in the request headers. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@664150 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/server/protocol.c b/server/protocol.c index 74dad061b2..8fc5c7f0c0 100644 --- a/server/protocol.c +++ b/server/protocol.c @@ -1648,6 +1648,14 @@ AP_DECLARE(void) ap_send_interim_response(request_rec *r, int send_headers) "Status is %d - not sending interim response", r->status); return; } + if ((r->status == HTTP_CONTINUE) && !r->expecting_100) { + /* + * Don't send 100-Continue when there was no Expect: 100-continue + * in the request headers. For origin servers this is a SHOULD NOT + * for proxies it is a MUST NOT according to RFC 2616 8.2.3 + */ + return; + } x.f = r->connection->output_filters; x.bb = apr_brigade_create(r->pool, r->connection->bucket_alloc);