Граф коммитов

336 Коммитов

Автор SHA1 Сообщение Дата
Yang Tse 1e7125ae7b add comment for include paths 2008-07-15 05:46:49 +00:00
Yang Tse 96edebf4d9 improve synchronization between test harness runtests.pl script
and test harness servers to minimize risk of false test failures.

http://curl.haxx.se/mail/lib-2008-04/0392.html
2008-04-23 23:55:34 +00:00
Yang Tse ad1dd08693 fix minor memory leak triggered upon test failure 2008-04-22 13:07:27 +00:00
Yang Tse 95fd093c4a Remove fflush() + fsync() previously introduced accelerated writing of
server input and response request files of the test harness sws server.

Reintroduce, for test # 1001, the <postcheck> small delay. The delay is
needed even with the accelerated writing of server input and response
request files in test harness sws server.

http://curl.haxx.se/mail/lib-2008-04/0385.html
2008-04-22 12:40:05 +00:00
Yang Tse a87c468c5c accelerate the writing of server input and response request files
to disk, trying to defeat file and disk write-behind algorithms
2008-04-20 19:15:08 +00:00
Yang Tse 6c2c281a7e fix log message used when unable to connect to destination port 2008-03-05 18:27:31 +00:00
Yang Tse 18cbb4d7d6 signal handling to properly cleanup on SIGINT and SIGTERM 2008-02-28 10:15:21 +00:00
Yang Tse 22e84d92b7 when terminating do it falling through cleanup code 2008-02-28 10:13:07 +00:00
Yang Tse 3d74649908 avoid inclusion of setup.h in util.h 2008-02-28 09:38:32 +00:00
Yang Tse ed63d9d4de header inclusion cleanup 2008-02-28 00:55:06 +00:00
Yang Tse 8adc7038fe make comment more precise 2008-02-27 14:54:18 +00:00
Gunter Knauf 97a41f3646 trial to fix the HP-UX breakage... 2008-02-26 23:06:15 +00:00
Yang Tse 058e764af8 all reads from stdin and writes to stdout will be retried until the
whole operation completes or an unrecoverable condition is detected
2008-02-26 18:13:59 +00:00
Yang Tse 0d09f342c4 refactor some code out to write_pidfile() in util.c 2008-02-26 15:06:44 +00:00
Yang Tse 1d95109ffa Revert sockfilt.c back to revision 1.42
Changes introduced in revision 1.43 were useless
2008-02-22 09:31:18 +00:00
Yang Tse 064eebeaf1 Avoid timeout restart when signal caught while awaiting socket and stdin events 2008-02-20 17:17:18 +00:00
Yang Tse 9df37b93df juggle() actually returns bool.
Remove redundant and unreachable log message.
2008-02-19 18:51:08 +00:00
Yang Tse c9eb41c056 Reduce to 20 seconds the time allowed to set SO_REUSEADDR option on sockfilt listener socket.
Log some more error descriptions.
2008-02-18 20:13:30 +00:00
Yang Tse 23547fa2a0 sockfilt will quit when orphaned 2008-02-17 04:36:08 +00:00
Yang Tse bad6410d08 Don't try to compare more than strlen chars 2008-02-06 17:35:17 +00:00
Yang Tse fecb67b246 Use a long int data type to handle getpid() result 2008-02-06 16:54:01 +00:00
Yang Tse 2c0956200f Fix buffer size specification.
Improve handling of boundary conditions for huge requests.
2008-02-05 18:37:53 +00:00
Yang Tse acd9d72466 Minor variable type cleanups.
Disable "swsbounce" mode when the received request
isn't for the same test and part number.
2008-02-05 14:43:16 +00:00
Yang Tse cd63a461d7 proper initialization of httprequest, no longer zeroing out twice
the whole 150000+ bytes struct, and also removing an equally big
additional buffer for pipelining treatment.
2008-02-05 02:21:38 +00:00
Yang Tse 69e540dfa6 improve request initialization for test harness HTTP server 2008-01-25 05:08:53 +00:00
Yang Tse 2198869eb1 Dmitry Kurochkin's test harness HTTP server pipelining fix fot test 530 2008-01-25 05:07:04 +00:00
Yang Tse bdb2beb8e4 check availability of poll.h header at configuration time, and include
it when sys/poll.h is unavailable
2008-01-22 14:52:54 +00:00
Yang Tse ed636cbe44 Replace isupper with our uppercase macro version 2007-11-15 13:20:18 +00:00
Yang Tse c960cd41e8 Fix comment 2007-11-08 16:32:31 +00:00
Yang Tse 1d49c04545 Detect, log and avoid storing a request with a negative size. 2007-10-26 00:36:36 +00:00
Patrick Monnerat 0678a51d3b Allow test server to handle binary POSTs.
Tests 35, 544 545 added: binary data POSTs.
2007-10-25 19:40:05 +00:00
Dan Fandrich 65ed696625 Fixed the test TFTP server to support the >10000 test number notation
Added test cases 2002 and 2003 (the latter disabled for now)
2007-10-24 22:48:23 +00:00
Patrick Monnerat c67c54d4b3 Close log/server.input ASAP to avoid lengthy file lock on cygwin 2007-10-24 13:03:08 +00:00
Yang Tse 54bcde0a14 also log error message string 2007-10-09 23:24:28 +00:00
Yang Tse 660c86ce95 logmsg already appends '\n' 2007-10-09 23:21:29 +00:00
Yang Tse 06be8bc389 On error, close "log/server.response" 2007-10-04 02:09:33 +00:00
Yang Tse 0ac5fd354b If TCP_NODELAY is not defined we can't disable the Nagle algorithm 2007-10-03 23:38:07 +00:00
Daniel Stenberg 8d1239c091 Disable the Nagle algorithm and send back responses in small chunks in an
attempt to force smaller bits to get read by clients.
2007-10-02 10:13:37 +00:00
Dan Fandrich 16b95fc773 Enabled a few more gcc warnings with --enable-debug. Renamed a few
variables to avoid shadowing global declarations.
2007-09-27 01:45:22 +00:00
Dan Fandrich 9b11a84e74 Make the ftp server connect to the address given by curl in the PORT/EPRT
instead of hard-coding it to 127.0.0.1
2007-09-17 18:12:11 +00:00
Dan Fandrich 5d4c981e13 Fixed a few compiler warnings. Try to do a slightly better job of
cleaning up after an OOM condition in curl_multi_add_handle
2007-08-30 18:26:19 +00:00
Daniel Stenberg c347db2e0a added a size > buffer size check to make it easier to track this in the
future
2007-08-22 14:09:13 +00:00
Daniel Stenberg 232a4553b8 Upped the buffer size to 17000+ bytes to prepare for the upcoming test 1003
that verfies ridiculously long server response lines. Also changed sprintf
to snprintf in a few places.
2007-08-22 13:57:49 +00:00
Daniel Stenberg a53ba060c8 start the retry delay at 10 ms, double it for every failed attempt which makes
it 10 seconds delay after 11 attempts
2007-07-12 17:03:45 +00:00
Gunter Knauf 72bb5854f7 the timeout was probably too short with max = 1 sec, so lets test with 5 sec. 2007-07-12 10:54:15 +00:00
Gunter Knauf 0878b14f79 added time loop to sockfilt.c in order to wait for SO_REUSEADDR;
added go_sleep() to util.c.
2007-07-12 01:07:49 +00:00
Yang Tse 584f3639e3 update copyright year 2007-04-03 18:25:18 +00:00
Yang Tse 69565afab0 Check for stdbool.h at configuration stage, and include it if available.
Check for lowercase 'bool' type at configuration stage. If not available
provide a suitable replacement with a type definition of 'unsigned char'
in setup_once.h

Move definitions of TRUE and FALSE to setup_once.h
2007-02-22 02:51:54 +00:00
Yang Tse f2cd2882a0 Oops missing var 2007-02-19 03:59:41 +00:00
Yang Tse 31e598d2f3 add debug messages for initialization failures 2007-02-19 02:03:58 +00:00
Yang Tse d9bf55570b Move portable error number symbolic name definitions to setup_once.h 2007-02-17 13:51:24 +00:00
Dan Fandrich 3f140a6008 getpart implicitly drags in some networking functions, so it needs to be
linked to the networking libraries.
2007-02-17 08:16:53 +00:00
Dan Fandrich a0a47f2767 Better separate the library dependencies into those required by libcurl
and those required by other components to avoid forcing unneeded
dependencies into the target objects.
2007-02-17 01:29:01 +00:00
Dan Fandrich 213017e9cf Remove C99isms 2007-02-17 01:25:32 +00:00
Yang Tse d46cab4a94 add debug messages for fopen() failures 2007-02-16 19:41:25 +00:00
Yang Tse a1d5983991 use macros ERRNO, SET_ERRNO(), SOCKERRNO and SET_SOCKERRNO() for errno handling 2007-02-16 18:19:35 +00:00
Yang Tse 4894ce16fc use macros ERRNO, SET_ERRNO(), SOCKERRNO and SET_SOCKERRNO() for errno handling 2007-02-16 16:01:19 +00:00
Yang Tse 5a267c4312 compiler warning fix 2007-02-14 13:46:08 +00:00
Yang Tse 7033a1c072 enhance HTTP server request input writing,
retrying upon EINTR errors.
2007-02-14 00:28:01 +00:00
Yang Tse c26ec47e90 compiler warning fix 2007-02-02 17:16:06 +00:00
Dan Fandrich f68323da7d Ignore XML DOCTYPEs and declarations. 2007-01-23 20:24:26 +00:00
Dan Fandrich 33bea767eb Convert (most of) the test data files into genuine XML. A handful still
are not, due mainly to the lack of support for XML character entities
(e.g. & => &amp; ).  This will make it easier to validate test files using
tools like xmllint, as well as edit and view them using XML tools.
2007-01-23 02:25:56 +00:00
Dan Fandrich b0d13fa4cb Leave the TFTPD test server running after a file upload.
Flush the protocol log data so it's immediately available to the test harness.
2007-01-15 21:03:53 +00:00
Daniel Stenberg e61e09f658 prevent compiler warning since we use base64.h from libcurl which now has
function(s) using SessionHandle pointers
2007-01-04 23:04:50 +00:00
Daniel Stenberg da58d03ff7 Venkat Akella found out that libcurl did not like HTTP responses that simply
responded with a single status line and no headers nor body. Starting now, a
HTTP response on a persistent connection (i.e not set to be closed after the
response has been taken care of) must have Content-Length or chunked
encoding set, or libcurl will simply assume that there is no body.

To my horror I learned that we had no less than 57(!) test cases that did bad
HTTP responses like this, and even the test http server (sws) responded badly
when queried by the test system if it is the test system. So although the
actual fix for the problem was tiny, going through all the newly failing test
cases got really painful and boring.
2006-11-25 13:32:04 +00:00
Daniel Stenberg e264f699d4 Tor Arntsen spotted this mistake 2006-11-13 13:48:55 +00:00
Yang Tse 772a985dc3 Update copyright year, since the file has been modified 2006-10-27 03:47:57 +00:00
Yang Tse 13e60c55a1 Avoid trying to compare more than strlen bytes. 2006-10-23 19:16:19 +00:00
Yang Tse 4ec9316155 Replace is*() macros with our own IS*() ones. 2006-10-23 19:14:54 +00:00
Yang Tse 5df4be1165 Check for USE_WINSOCK instead of WIN32 where the check was done
to verify winsock API availability.
2006-10-18 21:05:40 +00:00
Yang Tse e150150d9f Remove redundant __CYGWIN__ symbol check 2006-10-11 16:01:16 +00:00
Gisle Vanem 56bf97ffc9 'in6addr_any' must be placed in .c-file. Added 'REAL_WIN32' for
all Win32 targets except CygWin. Cleanup.
2006-09-13 13:41:53 +00:00
Yang Tse 5a6c89661a Cygwin preprocessor adjustments 2006-09-12 01:17:16 +00:00
Daniel Stenberg e3c15fc4b9 test 530 is the first ever HTTP pipelining test for libcurl 2006-09-08 11:56:56 +00:00
Yang Tse ee3514ccdc Replace exit() with return() in main() 2006-08-14 17:00:08 +00:00
Yang Tse b33f47804d Allow again proper compilation outside of the source tree 2006-08-07 18:06:37 +00:00
Yang Tse aa791ee5cf Fix compiler warnings. 2006-07-29 09:15:03 +00:00
Yang Tse 2c81bfead5 Replace send() and recv() with swrite() and sread() macros. 2006-07-28 18:01:23 +00:00
Yang Tse ab4256d53a Abort if unable to write pid file, and close socket when aborting. 2006-07-19 15:28:30 +00:00
Yang Tse 46c5e562bf Abort if unable to write pid file. 2006-07-19 15:26:28 +00:00
Yang Tse 42f5a90d09 -Use curl_socket_t instead of int.
-Log errno in message if setsockopt() fails.

-Close listener socket on major errors.
2006-07-17 22:44:40 +00:00
Yang Tse 2aa4710745 Minor cleanup 2006-07-17 03:38:13 +00:00
Yang Tse ccfce89423 Null terminate string in buffer before feeding it to strtol() 2006-07-14 06:31:41 +00:00
Yang Tse 498aad8587 Change to meaningful var names and take care of a compiler warning on IRIX 6.5.22 MIPSPro C 7.3 64bit 2006-07-13 18:50:51 +00:00
Yang Tse f0694c582e Remove var not used. 2006-07-12 10:41:07 +00:00
Yang Tse f90f0c98d9 Log a message if not all data is sent. 2006-07-12 09:39:35 +00:00
Yang Tse 95aecc5dbb Fix compiler warning: comparison between signed and unsigned 2006-07-12 09:03:48 +00:00
Yang Tse 8272874704 Place parenthesis surrounding macro parameters so that the use of sread and swrite is more intuitive. 2006-07-12 06:52:40 +00:00
Yang Tse 86f4cead16 sread now returns ssize_t 2006-07-12 06:14:49 +00:00
Yang Tse 88a1a10e6f Pay attention when typecasting an operation 2006-07-12 06:09:53 +00:00
Yang Tse 624e657210 sread now returns ssize_t 2006-07-12 05:54:06 +00:00
Yang Tse 58176d1484 Use platform's native types for recv() and send() arguments. 2006-07-12 05:19:00 +00:00
Daniel Stenberg f689d06ca9 make sure we pass a time_t * to localtime(), and the timeval struct members
are not always time_t ones
2006-05-24 21:39:52 +00:00
Daniel Stenberg 4a8dfb3461 based on Tor Arntsen's fix, this should correct test case 271 to again run
fine
2006-05-24 15:22:03 +00:00
Daniel Stenberg 00312e95fe removed variable declarations shadowing previously declared variables 2006-05-10 09:53:52 +00:00
Daniel Stenberg e5babd086d if configure found a fork(), sws supports --fork which is *NOT* used by the
ordinary test suite. Also removed the perror() calls and instead made the
logging output the errno code to ease error tracking using logs.
2006-04-10 13:11:52 +00:00
Gisle Vanem f592ea6c30 Fix typo. 2006-02-25 18:57:20 +00:00
Daniel Stenberg 10beb36b1c Ulf Hrnhammar fixed a format string (printf style) problem in the Negotiate
code. It should however not be the cause of any troubles. He also fixed a
few similar problems in the HTTP test server code.
2006-02-18 22:27:01 +00:00
Daniel Stenberg bda1e9aeab Made the copyright year match the latest modification's year. 2006-01-09 13:17:14 +00:00
Daniel Stenberg 8a0ca3066e modified output to prevent the autobuild system to trap on the 'FAILED' output
mistaking it for an actual failed test case
2006-01-04 23:02:40 +00:00
Daniel Stenberg 81b9793807 Added remake of the arpa/tftp.h file to make the TFTP server build on systems
without the real header file.
2006-01-03 22:47:07 +00:00
Daniel Stenberg 7278f17e8f killed trailing whitespace 2006-01-03 22:44:58 +00:00
Daniel Stenberg 66c7427df0 Andres Garcia made the TFTP test server build with mingw ("I also had to copy
the 'tftp.h' file from a linux box, since it doesn't come with mingw.")
2006-01-03 22:19:15 +00:00
Daniel Stenberg 687cf0235e modified to hush compiler warnings 2006-01-03 12:18:22 +00:00
Daniel Stenberg 74a299fd08 1. sws now supports two new "commands" and 2. if built with
CURL_SWS_FORK_ENABLED defined it forks for each new connection and thus can
support any amount of connection clients (used for hiper tests and not for the
standard plain curl test suite)
2006-01-02 12:19:12 +00:00
Dan Fandrich 178afd81a9 Fixed lcc compiler warnings. 2005-12-19 19:47:14 +00:00
Yang Tse d6c5d24af3 Cleanup windows header includes. Where aplicable, inclusion of
windows.h winsock.h winsock2.h ws2tcpip.h is done in setup.h
2005-12-18 15:36:14 +00:00
Dan Fandrich e2df946eee Fixed some compiler warnings on lcc. 2005-12-13 18:54:31 +00:00
Yang Tse b1fece74e3 Fix compiler warning 2005-12-08 16:43:32 +00:00
Daniel Stenberg 59b6cb9e91 Yang Tse: fixed compiler warning 2005-12-06 07:47:37 +00:00
Daniel Stenberg 272231fb09 Another Yang Tse warning cleanup raid! 2005-12-05 14:10:48 +00:00
Daniel Stenberg f5ae149338 seems to work for test 271 on Linux now! 2005-09-19 22:03:16 +00:00
Daniel Stenberg 90559bed53 renamed sendfile() since some systems have a system call named like this -
now the functions are named sendtftp() and recvtftp() instead.
2005-09-16 10:52:38 +00:00
Daniel Stenberg 973a18cf03 In the Solaris 7 header files for tftp, the th_stuff struct member is an
unsigned short. Trying a typecast here to fix.
2005-09-16 10:50:43 +00:00
Daniel Stenberg 3c666ce57a prevent warnings on re-defining MIN 2005-09-16 07:19:54 +00:00
Daniel Stenberg da3ecc91f8 use int "subscripts" to prevent warnings from picky compilers 2005-09-16 06:14:30 +00:00
Daniel Stenberg 09c8f558f7 use internal *printf() clones 2005-09-16 05:49:53 +00:00
Daniel Stenberg 528a149def ifdef for includes, added checking for two not previously checked files (one
being necessary for solaris builds)
2005-09-15 21:50:50 +00:00
Daniel Stenberg 0e39543d35 ignore this too 2005-09-15 20:36:58 +00:00
Daniel Stenberg 0de20d8ee6 build tftpd too! 2005-09-15 20:36:28 +00:00
Daniel Stenberg cd5de5c0e5 First version of the TFTP server. Basic functionality is there. 2005-09-15 20:32:59 +00:00
Daniel Stenberg 9542dfdcdc moved test2file() to util.c 2005-09-15 20:22:43 +00:00
Daniel Stenberg b9c8de598b Thanks to Scott Davis' detailed reports, I found this premature detection
of the end of a chunked-encoded POST request.
2005-09-07 10:51:37 +00:00
Daniel Stenberg e22ac39da4 detabify 2005-08-18 08:47:56 +00:00
Daniel Stenberg 50e9522a06 silense a warning 2005-05-25 22:12:57 +00:00
Daniel Stenberg 3e79693e3b utilize the whole usec in the log and don't output to stderr if the logfile
can't be opened
2005-05-25 12:04:52 +00:00
Daniel Stenberg d55d3c2fd0 nicer raw logging and put code into (nicer) functions 2005-05-25 12:04:24 +00:00
Daniel Stenberg b749910e6c include ctype.h for isdigit() 2005-05-19 09:55:53 +00:00
Daniel Stenberg 6ff092f140 removed duplicate 2005-05-19 07:12:16 +00:00
Daniel Stenberg 4a091bbd8a Bug report #1204435 identified a problem with malformed URLs like
"http://somehost?data" as it added a slash too much in the request ("GET
/?data/"...). Added test case 260 to verify.
2005-05-18 20:01:01 +00:00
Daniel Stenberg 45bce1062a ignore resolve too 2005-05-18 10:05:38 +00:00
Daniel Stenberg 8cb344bf3c use less code and prevent compiler warning 2005-05-18 10:01:46 +00:00
Daniel Stenberg 1f878aee69 Made test case 241 precheck that the given name resolves to an ipv6 address,
or the test is skipped. Ideally, we should let this test case go over a few
frequently used IPv6 localhost aliases...
2005-05-17 10:27:11 +00:00
Daniel Stenberg 84fd4686e2 Moved more generic functions to util.[ch]
Added resolve.c to simply resolve a given host name
2005-05-17 10:22:22 +00:00
Daniel Stenberg 315a9c95d5 prevent 64bit warnings 2005-05-10 11:21:57 +00:00
Daniel Stenberg ef5eea689a Added an active disconnected state, to make the code clearer. 2005-05-07 13:52:07 +00:00
Daniel Stenberg fd191deb49 removed unnecessary logging to ease REAL debuggin 2005-05-07 08:55:37 +00:00
Daniel Stenberg 366b62af2d always use the libcurl-provided *printf() functions 2005-05-01 12:56:09 +00:00
Daniel Stenberg a6955aa486 util.h added as "source" to make it get added in dist archives 2005-05-01 12:51:27 +00:00
Daniel Stenberg ad30341fa2 logfile name is const 2005-04-30 23:35:51 +00:00
Daniel Stenberg 23da55a9f1 Moved common code to util.[ch] instead of having it duplicated in sws.c
and sockfilt.c. For good-to-have functions for the servers written in C.
2005-04-30 23:30:55 +00:00
Daniel Stenberg e5472bbd21 AF_INET6 for ipv6 addresses! 2005-04-28 14:31:25 +00:00
Daniel Stenberg 8465a367a4 listen(..., 1) as 0 doesn't work on Tru64! 2005-04-27 12:28:04 +00:00
Daniel Stenberg 3bcfe678ab display listening port in log 2005-04-27 12:27:23 +00:00
Daniel Stenberg e8e43f06af copyright this year 2005-04-22 20:47:21 +00:00
Daniel Stenberg 4382204e1b better fix for the socket -1 case 2005-04-18 08:59:46 +00:00
Daniel Stenberg 6d3114efe2 ignore sockfilt 2005-04-18 08:51:04 +00:00
Daniel Stenberg b62baaed95 safety measure to avoid using -1 as socket 2005-04-18 08:49:46 +00:00
Daniel Stenberg 14424f7058 Modified the FTP server to use the new 'sockfilt' program to do all the socket
level stuff. The FTP server communicates with sockfilt using perl's open2().
This enables easier IPv6 support and hopefully FTP-SSL support in the future.
Added four test cases for FTP-ipv6.
2005-04-18 06:57:44 +00:00
Daniel Stenberg ab4086bc24 Updated the copyright year since changes have been this year. 2005-03-31 07:02:02 +00:00