From: Stefan Eissing Date: Wed, 25 May 2022 11:45:05 +0000 (+0000) Subject: Merge /httpd/httpd/trunk:r1901230 X-Git-Tag: 2.4.54-rc1-candidate~42 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=293123d6f5015d4a2c1af823557e8bd8a2c81f15;p=thirdparty%2Fapache%2Fhttpd.git Merge /httpd/httpd/trunk:r1901230 *) mod_md: a logic bug in sending long OCSP HTTP request bodies was fixed. This did not happen in normal use as request sizes for OSCP queries never exceed that length. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1901231 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/changes-entries/md_ocsp_query.txt b/changes-entries/md_ocsp_query.txt new file mode 100644 index 00000000000..f07a2ed9467 --- /dev/null +++ b/changes-entries/md_ocsp_query.txt @@ -0,0 +1,4 @@ + *) mod_md: a logic bug in sending long OCSP HTTP request bodies was fixed. + This did not happen in normal use as request sizes for OSCP queries + never exceed that length. + [Stefan Eissing, Ronald Crane (Zippenhop LLC)] \ No newline at end of file diff --git a/modules/md/md_curl.c b/modules/md/md_curl.c index 3a69ad4d98d..0a399f9a50a 100644 --- a/modules/md/md_curl.c +++ b/modules/md/md_curl.c @@ -64,6 +64,7 @@ static size_t req_data_cb(void *data, size_t len, size_t nmemb, void *baton) apr_bucket_brigade *body = baton; size_t blen, read_len = 0, max_len = len * nmemb; const char *bdata; + char *rdata = data; apr_bucket *b; apr_status_t rv; @@ -81,9 +82,10 @@ static size_t req_data_cb(void *data, size_t len, size_t nmemb, void *baton) apr_bucket_split(b, max_len); blen = max_len; } - memcpy(data, bdata, blen); + memcpy(rdata, bdata, blen); read_len += blen; max_len -= blen; + rdata += blen; } else { body = NULL;