On Sun, Dec 30, 2001 at 02:58:16PM +0200, Graham Leggett wrote: > Adam Sussman wrote: > > > Mod_proxy truncates the status line returned by the proxied > > server. One character gets snipped off of the end of the > > status line. > > Are you 100% sure the buffer is big enough to do this? If the buffer is > of size "len" the zero will be written past the end of the buffer. >
In the current code, "len" is strlen(buffer) so it can be safely assumed to be one less than the length of the buffer (provided of course that ap_proxy_string_read can be trusted). In any case, the specific setting of a null character in a way that truncates valid data is not appropriate here. Buffer and len must be sized appropriatly. I believe that they are correct. -adam > > Index: modules/proxy/proxy_http.c > > =================================================================== > > RCS file: /home/cvspublic/httpd-2.0/modules/proxy/proxy_http.c,v > > retrieving revision 1.114 > > diff -u -r1.114 proxy_http.c > > --- proxy_http.c 19 Dec 2001 16:32:01 -0000 1.114 > > +++ proxy_http.c 29 Dec 2001 00:12:21 -0000 > > @@ -689,7 +689,7 @@ > > "server: ", buffer, NULL)); > > } > > backasswards = 0; > > - buffer[--len] = '\0'; > > + buffer[len] = '\0'; > > > > buffer[12] = '\0'; > > r->status = atoi(&buffer[9]); > > Regards, > Graham > -- > ----------------------------------------- > [EMAIL PROTECTED] "There's a moon > over Bourbon Street > tonight..." -- "I believe in Kadath in the cold waste, and Ultima Thule. But you cannot prove to me that Harvard Law School actually exists." - Theodora Goss "I'm not like that, I have a cat, I don't need you.. My cat, and about 18 lines of bourne shell code replace you in life." - anonymous Adam Sussman Vidya Media Ventures [EMAIL PROTECTED]