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
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
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
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
862e3ac124
Improve handling of invalid ranges.
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
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
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
0ee2c3b2bf
Accept \n as line ending when parsing URL.
...
This fixes "HTTP 0.9" requests.
2013-04-28 20:56:04 +10:00
Emil Mikulic
adb6b02603
Print more quotes.
2013-04-28 20:55:57 +10:00
Emil Mikulic
ccbe7cffa7
Don't qsort() NULL.
...
Found by: clang static analyzer
2013-04-28 20:37:08 +10:00
Emil Mikulic
1b7bbcc033
Fix clang nits.
2013-04-28 20:37:08 +10:00
Emil Mikulic
11bb4d8906
Use int over size_t.
2013-04-28 20:37:08 +10:00
Emil Mikulic
014ce0e988
Don't use init decls, they're C99.
2013-04-28 20:37:08 +10:00
Emil Mikulic
f32ffbabd5
Finished style changes.
2013-04-28 20:37:08 +10:00
Emil Mikulic
7343ecf35f
More style changes, fixed most of the compiler warnings.
2013-04-28 20:37:08 +10:00
Emil Mikulic
0442d41dab
More style changes, move a function.
2013-04-28 20:37:08 +10:00
Emil Mikulic
775cd3ad9b
Mostly style changes.
2013-04-28 20:37:01 +10:00
Emil Mikulic
1fa02dc545
Restyle and add printflike.
2013-04-28 20:36:56 +10:00
Emil Mikulic
8d11e14d11
Bump copyright year.
2013-04-28 20:34:03 +10:00
Emil Mikulic
8393796097
More inttype tweaks.
2013-04-28 20:33:20 +10:00
Emil Mikulic
bc692bb5f7
Casts and indents.
2013-04-28 20:33:14 +10:00
Emil Mikulic
7c65160849
Cosmetics.
2013-04-28 20:33:14 +10:00
Emil Mikulic
ec246e2a51
Avoid infinite loop (and quiet gcc warning)
2013-04-28 20:33:14 +10:00
Emil Mikulic
803655dba9
Ranges work now.
2013-04-28 20:33:14 +10:00
Emil Mikulic
41f4ec2d50
Should these be unsigned?
2013-04-28 20:33:13 +10:00
Emil Mikulic
3cc77c31d6
More longlong fixes.
2013-04-28 20:33:07 +10:00
Emil Mikulic
63bdabd79f
Working on large file support.
2011-01-15 14:37:56 +11:00
Emil Mikulic
0ab76c953b
Move trunk/ into base dir, move tests into devel/.
2013-04-28 20:44:06 +10:00