Georg Hopp
bf6a341b4c
changed header hashing to use btree (GNU only). @TODO : make this conditional for other systems. Removed the qsort calls on server->fds making O(2nlogn) to O(n)
14 years ago
Georg Hopp
3d0057d4c3
daemonize testserver now
14 years ago
Georg Hopp
983c933908
fix seaks and hangs after adding response object (mostly not related with the response object but how i integated it into serverRun
14 years ago
Georg Hopp
f82c178b5b
started a response handler and changed serverRun to use it for its response
14 years ago
Georg Hopp
9198f7e7aa
fixed bug at server destructor
14 years ago
Georg Hopp
cb50f09adc
reset keep_live flag on connection close
14 years ago
Georg Hopp
3d735c7fc7
made a first cruel handling for keep-alive and non keep-alive requests. @TODO : this MUST BE cleaned
14 years ago
Georg Hopp
6c888a8c07
now only use keep-alive....
14 years ago
Georg Hopp
a4d09213ba
moved request_parser.h and request_queue.h in separeate request subfolder
14 years ago
Georg Hopp
6aef05cf7f
fix rather nasty reentrance bug
as i first wrote the parser i used static valiables to hold the
state of the currently parsed request.
If a request would spread of multiple reads this would lead
to one reqeust messing up the state of another.
not those states are part of the parser object itself where
they belong.
14 years ago
Georg Hopp
4a075de846
fix bug that arose in rewrite of header get and results in an ugly memory leak, as well as no headers would be found any more
14 years ago
Georg Hopp
3dac803c41
fix memory leak created while changing things
14 years ago
Georg Hopp
459ecc5d14
updated docs
14 years ago
Georg Hopp
cb75a749e9
start split of request parser
14 years ago
Georg Hopp
8e4e3dae1e
no more request body debig output
14 years ago
Georg Hopp
1c5d6099f5
add missing header_get to repo and build header hash only from lowercase letters now as it seems header identifier should be case insensitive
14 years ago
Georg Hopp
f678adcae4
access to headers via hash, read body (actually only with content-length header should also look for content-encoding)
14 years ago
Georg Hopp
ca023b994f
fix handling of remote close - i should have another eye on this...there still seems to be something wrong.
14 years ago
Georg Hopp
05a7a386fa
fixed some warnings
14 years ago
Georg Hopp
d2d1229ed3
changed documentation
14 years ago
Georg Hopp
c0a281cedb
added first generated documentation
14 years ago
Georg Hopp
98488d5588
oops commit...forgot to add request_queue.c
14 years ago
Georg Hopp
de7e390c78
found the file handle lost...made a first workaround and added an todo.
14 years ago
Georg Hopp
228b1d0d29
changed request handling. @TODO : I still seem to have the problem that the file handles are not closed and freed correctly as the service refuses connections after about a 1000.
14 years ago
Georg Hopp
68e9682380
now stuff seems to work correct even if read does not provide a complete request (tested with telnet)
14 years ago
Georg Hopp
90df11c014
now each HttpRequestParser initializes its own request queue and enqueus completed requests there. The server now gets the queue and prints completed requests.
14 years ago
Georg Hopp
0a9bca482e
started filling out a request object with the parser
14 years ago
Georg Hopp
81d98966a4
porformance improvement in parsing process (no longer do alloc and free on each line)
14 years ago
Georg Hopp
f1bf7c49f7
basic request parsing (line by line) implemented
14 years ago
Georg Hopp
19724f0d11
split server implementation for readability
14 years ago
Georg Hopp
0aae86589f
free reader (HttpRequestParser) when connection is closed
14 years ago
Georg Hopp
90476e07d8
add StreamReader interface, modify HttpRequestParser and Server to use it
14 years ago
Georg Hopp
382fd0bece
add missing include to stdarg.h
14 years ago
Georg Hopp
bb650bda47
implement clone selector
14 years ago
Georg Hopp
d1fecbf951
add ability to call interface methods with return value
14 years ago
Georg Hopp
e0e05bf832
make build system work again
14 years ago
Georg Hopp
18204a6030
remove inline stuff for now ... add carefully again later perhaps
14 years ago
Georg Hopp
05fcd37f64
and also mod conigure.ac
14 years ago
Georg Hopp
cb7561eb10
makefile modification for new class stuff
14 years ago
Georg Hopp
2d6305c3d6
changed class tool. Now multiple interface per class are supported as well as simple inheritence.
14 years ago
Georg Hopp
2dcc288a40
some latest work
14 years ago
Georg Hopp
96cd69141e
added some documentation
14 years ago
Georg Hopp
1884143dbf
changes related to server code
14 years ago
Georg Hopp
eaeb098323
added some valueable thought about cclass and how this structure might evolve to a real class
14 years ago
Georg Hopp
f366c0b865
add testserver and did some fixes not shown by my incomplete tests
14 years ago
Georg Hopp
b4b1c4f137
more notes
14 years ago
Georg Hopp
12adecf6b4
add some thought
14 years ago
Georg Hopp
c33578329c
changed from select(UNIX) to poll(POSIX)
14 years ago
Georg Hopp
fb0dd8ad89
work on server_run
14 years ago
Georg Hopp
e4b03cab1f
move test under docs dir
14 years ago