- Fix segfault on strlen computation on the empty string in vlv case
- If the etag is "", don't set the ETag header to be "" - leave the
header NULL instead.
Andrew's patch would change ap_meets_condition to accept "", but Justin
thinks it would be better just to sidestep it all together and not set
ETag when it would be "".
(Backport of patch applied to httpd-2.0 as original 1.3 code has the
same flaws.)
PR: 12202
Submitted by: Andrew Ho <andrew@tellme.com>
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x@96610
13f79535-47bb-0310-9956-
ffa450edef68
Changes with Apache 1.3.27
+
+ *) Fix FileETags none operation. PR 12202.
+ [Justin Erenkrantz, Andrew Ho <andrew@tellme.com>]
+
*) Win32: Fix one byte buffer overflow in ap_get_win32_interpreter
when a CGI script's #! line does not contain a \r or \n (i.e.
a line feed character) in the first 1023 bytes. The overflow
if (!r->vlist_validator) {
etag = ap_make_etag(r, 0);
+
+ /* If we get a blank etag back, don't set the header. */
+ if (!etag[0]) {
+ return;
+ }
}
else {
/* If we have a variant list validator (vlv) due to the
variant_etag = ap_make_etag(r, vlv_weak);
- /* merge variant_etag and vlv into a structured etag */
+ /* If we get a blank etag back, don't append vlv and stop now. */
+ if (!variant_etag[0]) {
+ return;
+ }
+ /* merge variant_etag and vlv into a structured etag */
variant_etag[strlen(variant_etag) - 1] = '\0';
if (vlv_weak)
vlv += 3;