Commit Graph

174 Commits

Author SHA1 Message Date
8bd53fd529 * Check for failure of apr_file_info_get call
Reported By: BOYA SUN <boya.sun case.edu>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@656400 13f79535-47bb-0310-9956-ffa450edef68
2008-05-14 20:08:45 +00:00
cd7f5da7d4 Improve client performance by clearing connection pool instead
of destroying it.

PR 40054
Submitted by: Brad Roberts <braddr puremagic.com>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@655654 13f79535-47bb-0310-9956-ffa450edef68
2008-05-12 21:24:26 +00:00
07bf18059d Don't stop sending a request if EAGAIN is returned, which will only
happen if both the write and subsequent wait are returning EAGAIN,
and count posted bytes correctly when the initial write of a request
is not complete.

PR 10038, 38861, 39679
Submitted by: Patrick McManus <mcmanus datapower.com> (in 2003)
              Stefan Fleiter <stefan.fleiter web.de>  (in 2006)
              and Davanum Srinivas (in 2006).  Committed patch
              contains parts of all three, tweaked by Roy (2008).


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@655637 13f79535-47bb-0310-9956-ffa450edef68
2008-05-12 20:53:13 +00:00
6e834397f2 Overhaul ab.c stats collection and reporting to avoid integer
truncation and time divisions within the test loop, retain
native time resolution until output, remove unused data,
avoid structure copies, consistently round milliseconds, and
generally avoid losing accuracy of calculation due to type casts.

Incidentally fixes output bug on gnuplot (seconds were being
output as microseconds).  It would make more sense to output
gnuplot stats as microseconds after the start of test, but
this change returns us to consistency with pre-apr versions of ab.

PR: 44878, 44931.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@655214 13f79535-47bb-0310-9956-ffa450edef68
2008-05-11 00:36:27 +00:00
9e87e5cabf * Use a 64 bit unsigned int instead of a signed long to count the bytes
transferred to avoid integer overflows.

PR: 44346


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@617890 13f79535-47bb-0310-9956-ffa450edef68
2008-02-02 20:36:18 +00:00
f298644bda * Do not try to read non existing response bodies of HEAD requests.
PR: 34275
Submitted by: Takashi Sato <serai lans-tv.com>
Reviewed by: rpluem


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@612954 13f79535-47bb-0310-9956-ffa450edef68
2008-01-17 20:01:55 +00:00
5b2042993e Kill the compiler emit - casting struct * to char * (as defined
in openssl 0.9.8e).  Easiest is to cast through void *.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@573101 13f79535-47bb-0310-9956-ffa450edef68
2007-09-05 23:19:51 +00:00
fb5c8b941c Explain that POST data should be sent as the correct MIME type.
Submitted by Vincent Bray noodlet at gmail dot com, 
edited and reviewed by sctemme


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@541138 13f79535-47bb-0310-9956-ffa450edef68
2007-05-24 02:19:04 +00:00
dbeb7d82f3 Correct behavior of HTTP request headers sent by ab in presence of -H command-
line overrides.  Previously, ab would concatenate a supplied -H User-Agent: 
header to the existing one, and send duplicate headers if either -H Host: or
-H Accept: were specified on the command line. 

Now, the default headers are not sent if they are overridden using the -H 
command-line flag. 

Submitted by:  Arvind Srinivasan arvind.srinivasan  sun.com
Reviewed by: sctemme
PR: 31268, 26554


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@526872 13f79535-47bb-0310-9956-ffa450edef68
2007-04-09 18:50:28 +00:00
76e68a9686 The apr_port_t type is unsigned, but ab was using a signed format code in
its reports. PR 42070. Submitted by Takashi Sato serai  lans-tv.com, 
reviewed by sctemme.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@526584 13f79535-47bb-0310-9956-ffa450edef68
2007-04-08 17:44:57 +00:00
91cdb74329 ab: Add -r option to continue after socket receive errors.
Submitted by: Filip Hanik <devlist hanik.com>
Reviewed by: trawick



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@516175 13f79535-47bb-0310-9956-ffa450edef68
2007-03-08 21:00:07 +00:00
de659cbed0 update license header text
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@420983 13f79535-47bb-0310-9956-ffa450edef68
2006-07-11 20:33:53 +00:00
825c3efbcc A keepalive response need not neccessarily have included any content-length
header, handle this case properly for 304 responses. PR39789



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@413861 13f79535-47bb-0310-9956-ffa450edef68
2006-06-13 10:51:54 +00:00
e58985dcf9 when compiling statistics, only interate accross requests which occured.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@396300 13f79535-47bb-0310-9956-ffa450edef68
2006-04-23 18:04:17 +00:00
dd95d7c37c Update the copyright year in all .c, .h and .xml files
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@395228 13f79535-47bb-0310-9956-ffa450edef68
2006-04-19 12:11:27 +00:00
b910664e7e Update the copyright notice to reflect that changes have gone in this year
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@394765 13f79535-47bb-0310-9956-ffa450edef68
2006-04-17 20:09:50 +00:00
88a511e32e Correct a dumb typo
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@390519 13f79535-47bb-0310-9956-ffa450edef68
2006-03-31 22:06:14 +00:00
e804af2c37 * Add siege-like behaviour to ApacheBench; output the results, as they have
accrued so far, when the user interrupts with ctrl-c. As the signal handler 
    is non-reentrant, we don't need volatiles, and the operations all look
    signal-safe.

  * Update the base version, since handling a signal differently is an external
    API change of sorts.

  * set the LastChangedRevision svn property, as ab.c has $Rev $ embedded, so
    it really should be.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@390511 13f79535-47bb-0310-9956-ffa450edef68
2006-03-31 21:54:25 +00:00
d0e08c475f Give users the ability to set the window size for apache bench runs. Useful
for benchmarking largefile downloads.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@390504 13f79535-47bb-0310-9956-ffa450edef68
2006-03-31 21:28:36 +00:00
c124e62bc5 * modules/ssl/ssl_scache_dc.c (ssl_scache_dc_retrieve): Fix warning
with OpenSSL 0.9.8a.

* support/ab.c (ssl_print_cb, ssl_print_cert_info): Fix warnings with
OpenSSL 0.9.8a.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@349415 13f79535-47bb-0310-9956-ffa450edef68
2005-11-28 16:16:21 +00:00
5061d9fa92 No functional Change: Removing trailing whitespace. This also
means that "blank" lines consisting of just spaces or
tabs are now really blank lines


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@332306 13f79535-47bb-0310-9956-ffa450edef68
2005-11-10 15:11:44 +00:00
99b60bff39 * support/ab.c (test): Increment count of started requests when a
non-blocking connect completes; avoids case where more requests are
made than intended.

PR: 36966


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@314844 13f79535-47bb-0310-9956-ffa450edef68
2005-10-12 11:04:18 +00:00
8f9c95cb74 * support/ab.c: Rewrite SSL support so that it works reliably, and
enable it by default when the --enable-ssl is passed to configure.
Adds support for -Z and -f arguments to tweak SSL protocol options.

Submitted by: Masaoki Kobayashi <masaoki techfirm.co.jp>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@170612 13f79535-47bb-0310-9956-ffa450edef68
2005-05-17 15:34:43 +00:00
f59e1aac61 * support/ab.c (open_postfile): Use apr_file_read_full, tidy up error
messages, remove redundant variable.s


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@161485 13f79535-47bb-0310-9956-ffa450edef68
2005-04-15 15:22:50 +00:00
5ffd6acf6a * support/ab.c (test): Treat POST data as a binary blob not a C
string.

PR: 12981
Submitted by: Matthew H. Gerlach <mgerlach@lightsurf.com>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@161483 13f79535-47bb-0310-9956-ffa450edef68
2005-04-15 15:20:28 +00:00
4800ec9ba7 Fix and prevent some segfaults in ab:
* support/ab.c (main): Fail if given concurrency level greater than
number of requests, to prevent segfaults later.
(ssl_print_cert_info): Use the correct buffer size.
(ssl_start_connect): SSL_get_peer_cert_chain doesn't bump refcounts,
so don't free the cert chain here.
(test): Use both calloc parameters (unrelated cleanup).


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@161437 13f79535-47bb-0310-9956-ffa450edef68
2005-04-15 10:51:44 +00:00
905cdf9f0b Update copyright year to 2005 and standardize on current copyright owner line.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@151408 13f79535-47bb-0310-9956-ffa450edef68
2005-02-04 20:28:49 +00:00
1db8f31359 Update copyright notice to new format to show what needs
to be done for all of trunk.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@123918 13f79535-47bb-0310-9956-ffa450edef68
2005-01-03 00:38:24 +00:00
7dbfadb1b1 Small fix on ab's use of sprintf().
PR: 28204
Submitted by: Erik Weide <erik.weidel mplus-technologies.de>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104217 13f79535-47bb-0310-9956-ffa450edef68
2004-07-10 07:18:50 +00:00
a22426c699 Use standardized names for ISO-8859-1, see http://www.iana.org/assignments/character-sets
(Using the name iso8859-1 may still work, because it is aliased in apr-iconv/ccs/charset.aliases)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104078 13f79535-47bb-0310-9956-ffa450edef68
2004-06-29 13:33:24 +00:00
8409d24f0d replaced tabs with spaces and aligned indentation within brackets
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103697 13f79535-47bb-0310-9956-ffa450edef68
2004-05-18 19:21:35 +00:00
b3661da07c ab mixing mean and median values, also wrong time values for start and connect when doing keep alive
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103135 13f79535-47bb-0310-9956-ffa450edef68
2004-03-25 00:05:00 +00:00
ec3144682b Using ap_max() to ensure no negative values are stored in data structure.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103035 13f79535-47bb-0310-9956-ffa450edef68
2004-03-19 15:39:45 +00:00
8915b61c79 Add Missing parenthesis !
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103015 13f79535-47bb-0310-9956-ffa450edef68
2004-03-17 23:16:33 +00:00
87d5e2ed2b Limit the concurrency to MAX_CONCURRENCY.
Otherwise, ab may dump core (calloc fails) when a arbitrarily huge value
is used.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103011 13f79535-47bb-0310-9956-ffa450edef68
2004-03-17 18:22:35 +00:00
a6aee15e59 using build in err function, thanks Jeff for pointing that.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103000 13f79535-47bb-0310-9956-ffa450edef68
2004-03-17 00:06:44 +00:00
9cc9ba0aca added check on apr_pollset_create() return value to exit ab it case it fails.
On NetWare using a concurrency higher than 64 is segfaulting because of FD_SETSIZE as a value of 64.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102990 13f79535-47bb-0310-9956-ffa450edef68
2004-03-16 16:57:02 +00:00
eeb57c17ad fix name of The Apache Software Foundation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102619 13f79535-47bb-0310-9956-ffa450edef68
2004-02-09 20:40:53 +00:00
c0dcb76491 fix copyright dates according the first cehck in
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102592 13f79535-47bb-0310-9956-ffa450edef68
2004-02-08 14:14:53 +00:00
4f02cb1e18 apply Apache License, Version 2.0
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102525 13f79535-47bb-0310-9956-ffa450edef68
2004-02-06 22:58:42 +00:00
7a06ef17b2 * support/ab.c (write_request): Fix gcc warning at -O2 in USE_SSL
build.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102155 13f79535-47bb-0310-9956-ffa450edef68
2004-01-03 15:58:19 +00:00
fb07607180 update license to 2004.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102135 13f79535-47bb-0310-9956-ffa450edef68
2004-01-01 13:26:26 +00:00
e0360b3575 Fix ab's SSL support a little:
* support/ab.c (ssl_*): Fix function prototypes througout.
(test): Use correct connection structure when using SSL.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102014 13f79535-47bb-0310-9956-ffa450edef68
2003-12-10 16:08:44 +00:00
aa21671e13 switch to APR 1.0 API (which is still in flux)
because of the changes to the argument lists of apr_mmap_dup and apr_socket_create,
2.1-dev won't build with apr and apr-util's 0.9 branch anymore


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101154 13f79535-47bb-0310-9956-ffa450edef68
2003-09-03 19:27:12 +00:00
92286bea45 distinguish between these two states:
. just issued connect(), polling for writability to find out when connect()
  completed
. already connected, waiting for data from the server so polling for
  readability

by only polling for writability during the first state, we avoid some
logic in test() which inappropriately writes multiple requests to the
server

btw, the most basic SSL test segfaulted before and after this commit


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100889 13f79535-47bb-0310-9956-ffa450edef68
2003-08-01 10:41:46 +00:00
5f94c42bd6 restore a check for write failures which was lost for non-SSL builds
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100888 13f79535-47bb-0310-9956-ffa450edef68
2003-08-01 08:57:43 +00:00
548da410d3 ab: Work over non-loopback on Unix again.
(Broken as of 2.0.47 due to dependence on an APR bug which was fixed
in 2.0.47.)

PR:   21495


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100846 13f79535-47bb-0310-9956-ffa450edef68
2003-07-29 18:25:15 +00:00
6d5e39b8f7 reject overlong credentials from the commandline
Acked by: Cliff Woolley


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100718 13f79535-47bb-0310-9956-ffa450edef68
2003-07-21 11:41:01 +00:00
32bc13995e Pick up getpid() prototype.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100539 13f79535-47bb-0310-9956-ffa450edef68
2003-07-10 19:16:35 +00:00
140f805d92 catch out of memory condition (ID 29 of reasoning report)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100447 13f79535-47bb-0310-9956-ffa450edef68
2003-07-03 16:07:21 +00:00