[httperf] Bug Fix Patches to Date
tbullock at canada.com
Sun Nov 26 15:20:12 PST 2006
> * I share your concern WRT the fd_setsize patch; it's very useful on
> Linux, but causes problems on other platforms. It would be *very* nice
> if it could be included, but it does need to be rewritten. Another
> option might be to make fd_setsize a ./configure parameter (Squid does
Agreed. We will try to look into this.
> * To allow persistent connections with HTTP/1.0 servers (e.g., Squid),
> Connection: keep-alive needs to be added to requests; e.g.,
> core.c:70 static char http10req = " HTTP/1.0\r\nUser-Agent:
> httperf/"VERSION"\r\nConnection: keep-alive\r\nHost: ";
Is this something that should be added to all the HTTP/1.0 and 1.1
requests or just this specific case? I am unfamiliar with the protocols.
I can see the following lines of code which are very similar:
static char http10req =
" HTTP/1.0\r\nUser-Agent: httperf/"VERSION"\r\nHost: ";
static char http11req =
" HTTP/1.1\r\nUser-Agent: httperf/"VERSION"\r\nHost: ";
static char http10req_nohost =
" HTTP/1.0\r\nUser-Agent: httperf/"VERSION"\r\n";
static char http11req_nohost =
" HTTP/1.1\r\nUser-Agent: httperf/"VERSION"\r\n";
Is this a change that would be useful in all of the above or just the
one you specified? Also, is this something that would be useful if it
were dynamically applied?
> * Not sure if you caught it in (4), but core.c:973 needs to be
> call->req.iov[IE_HOST].iov_base = (caddr_t) conn->fqdname;
> call->req.iov[IE_HOST].iov_len = conn->fqdname_len;
Yes, we caught this one.
More information about the httperf