Commit Graph

409 Commits

Author SHA1 Message Date
Emil Mikulic
7551090ac5 Tests: add pointer to cover script which runs them. 2013-06-10 18:52:38 +10:00
Emil Mikulic
5d1bdd1fd3 [ darkhttpd-1.9 release ]
Add release script.
2013-04-29 01:47:24 +10:00
Egor Ivanov
049e842399 Optimization for case when no web forward is configured. 2013-04-29 01:47:15 +10:00
Emil Mikulic
5a0291f47e Implement --no-server-id
Suggested by: T.Ramirez
2013-04-29 00:55:08 +10:00
Emil Mikulic
ccf0dbd809 Add test for --forward 2013-04-29 00:32:22 +10:00
Emil Mikulic
e6e17fa0f3 Change web_forward_record from a hand-rolled linked list to an array.
Free it before exiting.
2013-04-28 23:48:16 +10:00
Egor Ivanov
ab7af194e6 Implement --forward.
A web forward feature that performs 301 redirects for some requests
(in addition normal web content serving)

The "Host:" request header (HTTP/1.1 only) is compared with a list of
hosts, defined by the "--forward host url" option. If a match is found,
the request is redirected to url+path. Otherwise, it is served as a
request to the local file system.
2013-04-28 22:58:40 +10:00
Emil Mikulic
1b10a57f39 Make devel/cover clean up after itself. 2013-04-28 21:45:14 +10:00
Emil Mikulic
ffbb4c9f7c Fix memory leak when diropen() fails.
Found by: clang static analyzer.
2013-04-28 21:39:43 +10:00
Emil Mikulic
a20e840c97 Make sure malloc and realloc can't be called with size 0.
Make pool size double instead of increment in make_sorted_dirlist().

Prompted by: clang static analyzer.
2013-04-28 21:37:31 +10:00
Emil Mikulic
efe37364eb Fix warnings found by clang r180088. 2013-04-28 21:24:33 +10:00
Emil Mikulic
f29b75fb1d Clean up and improve the devel/ scripts. 2013-04-28 21:16:40 +10:00
Emil Mikulic
c7db17bcec Put project page and contact address into comments. 2013-04-28 21:03:29 +10:00
Emil Mikulic
d26a2956bf Make keep_alive() a tiny function instead of a macro. 2013-04-28 21:01:31 +10:00
Emil Mikulic
a9a2aff851 Implement --no-keepalive.
Requested by: Devin LaSalle
2013-04-28 20:59:13 +10:00
Vlatko Kosturjak
9ca7ed4795 Fix for when MAXNAMLEN is not found (Android) 2013-04-28 20:59:13 +10:00
Emil Mikulic
a8176d0ed0 [ darkhttpd-1.8 release ]
printf format fixes from FreeBSD 8.2 (gcc version 4.2.1)
2013-04-28 20:59:05 +10:00
Emil Mikulic
8cdcad43c2 Add guard around __printflike 2013-04-28 20:57:09 +10:00
Emil Mikulic
bfd58235c5 Test large (>2G, >4G) files. 2013-04-28 20:57:09 +10:00
Emil Mikulic
34ad70cc45 Run usage, not really a test. 2013-04-28 20:57:09 +10:00
Emil Mikulic
c0c9692799 Check dependencies in devel/cover 2013-04-28 20:56:56 +10:00
Emil Mikulic
07be6a2f1b Bring preprocessor directives in line. 2013-04-28 20:56:56 +10:00
Emil Mikulic
a3b31af2be Don't catch SIGQUIT.
I'm okay with this being more fatal.
2013-04-28 20:56:56 +10:00
Emil Mikulic
e8c3e92aa9 Re-arrange usage(). 2013-04-28 20:56:46 +10:00
Emil Mikulic
910298566f Single byte corner cases. 2013-04-28 20:56:46 +10:00
Emil Mikulic
22b4dac09b Test directory redirect. 2013-04-28 20:56:46 +10:00
Emil Mikulic
862e3ac124 Improve handling of invalid ranges. 2013-04-28 20:56:46 +10:00
Emil Mikulic
e8ec37109b Still more range test fiddling. 2013-04-28 20:56:46 +10:00
Emil Mikulic
e4ab741461 Add test for backwards range. 2013-04-28 20:56:46 +10:00
Emil Mikulic
e94a18b4e2 Passing bad-end range test. 2013-04-28 20:56:46 +10:00
Emil Mikulic
62f547da9d Test range requests, including one failing test. 2013-04-28 20:56:46 +10:00
Emil Mikulic
aa0ec26397 Advertise that we accept ranges. 2013-04-28 20:56:46 +10:00
Emil Mikulic
a0c87d39a2 Remove unnecessary headers from 304 reply. 2013-04-28 20:56:46 +10:00
Emil Mikulic
a2eb59e928 Failing test for If-Modified-Since 2013-04-28 20:56:46 +10:00
Emil Mikulic
c7b65d1123 Test for HEAD method. 2013-04-28 20:56:46 +10:00
Emil Mikulic
d916f760b8 Implement straightforward GET test. 2013-04-28 20:56:37 +10:00
Emil Mikulic
449b78efaa Use setUp and tearDown to manage test file. 2013-04-28 20:56:14 +10:00
Emil Mikulic
0b5d1d881c Re-arrange tests, no functional change. 2013-04-28 20:56:14 +10:00
Emil Mikulic
b6df049c49 Improve "caught Terminated" output. 2013-04-28 20:56:14 +10:00
Emil Mikulic
7faf2787e4 parse_field() was looking for \r instead of [\r\n] 2013-04-28 20:56:14 +10:00
Emil Mikulic
36f22757f3 When logging, escape strings.
While I'm here, rename urlencode[_filename]() and improve it.
2013-04-28 20:56:04 +10:00
Emil Mikulic
77e050b4f4 Oops, wrong kind of line ending.
Also, enforce Connection:close since the test harness doesn't
handle keep-alive.
2013-04-28 20:56:04 +10:00
Emil Mikulic
897e85a46e Test URL escaping in directory listing. 2013-04-28 20:56:04 +10:00
Emil Mikulic
b7038c8329 Don't log to stdout when testing. 2013-04-28 20:56:04 +10:00
Emil Mikulic
5ebb93d253 Log to stdout by default. 2013-04-28 20:56:04 +10:00
Emil Mikulic
4ce6e87748 Print "listening on" as a URL. 2013-04-28 20:56:04 +10:00
Emil Mikulic
58dca3d6b1 Default to --port 8080, or 80 if running as root. 2013-04-28 20:56:04 +10:00
Emil Mikulic
010d194180 uri -> url 2013-04-28 20:56:04 +10:00
Emil Mikulic
597c81d3f1 Update AUTHORS. 2013-04-28 20:56:04 +10:00
Emil Mikulic
0ee2c3b2bf Accept \n as line ending when parsing URL.
This fixes "HTTP 0.9" requests.
2013-04-28 20:56:04 +10:00