From: Eric Covener Date: Mon, 12 Jan 2015 13:42:31 +0000 (+0000) Subject: Update conn_rec.id when a new thread begins working on a connection, because X-Git-Tag: 2.5.0-alpha~3543 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8197971bcedac42f1df6f4b2fdb3a0384c8ebf01;p=apache Update conn_rec.id when a new thread begins working on a connection, because the old thread may work on a new connection and assign the same ID in parallel. Submitted By: Michael Thorpe Committed By: covener git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1651088 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index ff89fc8a91..c7795fce4a 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,10 @@ -*- coding: utf-8 -*- Changes with Apache 2.5.0 + *) event: Update the internal "connection id" when requests + move from thread to thread. Reuse can confuse modules like + mod_cgid. PR 57435. [Michael Thorpe ] + *) mod_ssl: Add support for extracting subjectAltName entries of type rfc822Name and dNSName into SSL_{CLIENT,SERVER}_SAN_{Email,DNS}_n environment variables. Also addresses PR 57207. [Kaspar Brand] diff --git a/server/mpm/event/event.c b/server/mpm/event/event.c index ccd8896f5d..b448ed2aff 100644 --- a/server/mpm/event/event.c +++ b/server/mpm/event/event.c @@ -1061,6 +1061,8 @@ static void process_socket(apr_thread_t *thd, apr_pool_t * p, apr_socket_t * soc c->sbh = sbh; notify_resume(cs); c->current_thread = thd; + /* Subsequent request on a conn, and thread number is part of ID */ + c->id = conn_id; } if (c->clogging_input_filters && !c->aborted) {