+ char *len_end; + c->len = ap_strtol(content_length, *len_end, 10); - if (c->len < 0) { - ap_kill_timeout(r); - return ap_proxyerror(r, HTTP_BAD_GATEWAY, ap_pstrcat(r->pool, - "Invalid Content-Length from remote server", - NULL)); + if ((c->len < 0) || *len_end) {
Oops... Should be: c->len = ap_strtol(content_length, &len_end, 10); and if ((c->len < 0) || (len_end && *len_end)) I think.. :)