You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
348 lines
9.4 KiB
348 lines
9.4 KiB
2012-02-19 18:28:30 +0100 Georg Hopp
|
|
|
|
* increase writebuffer size a lot. (HEAD, master)
|
|
|
|
2012-02-19 18:15:55 +0100 Georg Hopp
|
|
|
|
* fixed the non keep-alive performance issue as well as i lower memory usage by using a single read and write circular buffer for every connection. @TODO: i noticed a server hang while getting large data (my image) with non keep-alive connections. Additionally an incomplete keep-alive request might stop the server now as the lock on the read buffer will not be released. (origin/master, origin/HEAD)
|
|
|
|
2012-02-19 15:41:48 +0100 Georg Hopp
|
|
|
|
* another try with the shmen trick...this time use MAP_ANONYMOUS ... as GNU extension.
|
|
|
|
2012-02-19 14:33:42 +0100 Georg Hopp
|
|
|
|
* Merge remote branch 'origin/master'
|
|
|
|
2012-02-19 12:13:52 +0100 Georg Hopp
|
|
|
|
* added missing header file to repo
|
|
|
|
2012-02-19 11:35:15 +0100 Georg Hopp
|
|
|
|
* another try with a shared memory based ringbuffer...this performs well for keep-alive sessions but is much slower without. actually i am not sure why but most likely the shared memory setup is quite expensive. @TODO: make a profiling.
|
|
|
|
2012-02-18 21:08:32 +0100 Georg Hopp
|
|
|
|
* fix inf loop. @TODO: This whole handling has to be cleaned.
|
|
|
|
2012-02-18 20:50:01 +0100 Georg Hopp
|
|
|
|
* this change hopefully makes the shm trick work on amd64
|
|
|
|
2012-02-18 20:12:27 +0100 Georg Hopp
|
|
|
|
* lots of changes but primarily change the request parser to use a ringbuffer. The ringbuffer is implemented using the shared memory trick.
|
|
|
|
2012-02-15 12:30:33 +0100 Georg Hopp
|
|
|
|
* some more cleanups in the server code. Removing not needed header includes
|
|
|
|
2012-02-15 12:17:39 +0100 Georg Hopp
|
|
|
|
* Merge branch 'master' of 192.168.100.2:/var/lib/git/server
|
|
|
|
2012-02-15 12:17:00 +0100 Georg Hopp
|
|
|
|
* now the separated http worker works. Changed some size_t to ssize_t as i use -1 and -2 es error indicator in my server and fixed caculation of remainig buffer size in reader
|
|
|
|
2012-02-15 09:38:32 +0100 Georg Hopp
|
|
|
|
* separated the server completely from the http processing
|
|
|
|
2012-02-15 06:19:52 +0100 Georg Hopp
|
|
|
|
* add subject/observer interface
|
|
|
|
2012-02-15 06:19:52 +0100 Georg Hopp
|
|
|
|
* add subject/observer interface
|
|
|
|
2012-02-15 04:55:46 +0100 Georg Hopp
|
|
|
|
* fix infinite busy loop in run
|
|
|
|
2012-02-15 04:44:38 +0100 Georg Hopp
|
|
|
|
* dynamically get and free buffer for response write pipe now
|
|
|
|
2012-02-14 21:32:38 +0100 Georg Hopp
|
|
|
|
* increase write buffer
|
|
|
|
2012-02-13 21:27:47 +0100 Georg Hopp
|
|
|
|
* use one dynamic buffer less and save at least one write on small responses
|
|
|
|
2012-02-13 18:25:36 +0100 Georg Hopp
|
|
|
|
* removed generated docs
|
|
|
|
2012-02-13 17:55:52 +0100 Georg Hopp
|
|
|
|
* fixed bug in new response handling
|
|
|
|
2012-02-13 17:29:35 +0100 Georg Hopp
|
|
|
|
* better response handling but still buggy with stream piping
|
|
|
|
2012-02-13 09:46:39 +0100 Georg Hopp
|
|
|
|
* now load image from actual server
|
|
|
|
2012-02-13 09:39:21 +0100 Georg Hopp
|
|
|
|
* first working version of content delivery from file....very crude... @TODO: rewrite complete response handline.
|
|
|
|
2012-02-12 20:39:12 +0100 Georg Hopp
|
|
|
|
* more generalizing of response writing (implemented a response writer...now it should be possible to implement a stream writer for images
|
|
|
|
2012-02-12 12:43:56 +0100 Georg Hopp
|
|
|
|
* make http request and response childs of a common parent http message
|
|
|
|
2012-02-12 04:13:54 +0100 Georg Hopp
|
|
|
|
* remove now obsoleted header_sort
|
|
|
|
2012-02-12 04:05:38 +0100 Georg Hopp
|
|
|
|
* change response to tree based header storage and make everything work.
|
|
|
|
2012-02-12 00:05:13 +0100 Georg Hopp
|
|
|
|
* 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)
|
|
|
|
2012-02-11 13:52:32 +0100 Georg Hopp
|
|
|
|
* daemonize testserver now
|
|
|
|
2012-02-11 12:47:01 +0100 Georg Hopp
|
|
|
|
* fix seaks and hangs after adding response object (mostly not related with the response object but how i integated it into serverRun
|
|
|
|
2012-02-10 19:57:57 +0100 Georg Hopp
|
|
|
|
* started a response handler and changed serverRun to use it for its response
|
|
|
|
2012-02-10 12:42:04 +0100 Georg Hopp
|
|
|
|
* fixed bug at server destructor
|
|
|
|
2012-02-10 09:59:41 +0100 Georg Hopp
|
|
|
|
* reset keep_live flag on connection close
|
|
|
|
2012-02-10 09:52:27 +0100 Georg Hopp
|
|
|
|
* made a first cruel handling for keep-alive and non keep-alive requests. @TODO: this MUST BE cleaned
|
|
|
|
2012-02-10 08:14:31 +0100 Georg Hopp
|
|
|
|
* now only use keep-alive....
|
|
|
|
2012-02-10 06:36:43 +0100 Georg Hopp
|
|
|
|
* moved request_parser.h and request_queue.h in separeate request subfolder
|
|
|
|
2012-02-10 06:22:39 +0100 Georg Hopp
|
|
|
|
* fix rather nasty reentrance bug
|
|
|
|
2012-02-10 05:52:50 +0100 Georg Hopp
|
|
|
|
* 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
|
|
|
|
2012-02-10 00:27:51 +0100 Georg Hopp
|
|
|
|
* fix memory leak created while changing things
|
|
|
|
2012-02-09 22:39:08 +0100 Georg Hopp
|
|
|
|
* updated docs
|
|
|
|
2012-02-09 22:34:32 +0100 Georg Hopp
|
|
|
|
* start split of request parser
|
|
|
|
2012-02-09 11:44:17 +0100 Georg Hopp
|
|
|
|
* no more request body debig output
|
|
|
|
2012-02-09 11:32:28 +0100 Georg Hopp
|
|
|
|
* add missing header_get to repo and build header hash only from lowercase letters now as it seems header identifier should be case insensitive
|
|
|
|
2012-02-09 09:34:21 +0100 Georg Hopp
|
|
|
|
* access to headers via hash, read body (actually only with content-length header should also look for content-encoding)
|
|
|
|
2012-02-08 16:51:49 +0100 Georg Hopp
|
|
|
|
* fix handling of remote close - i should have another eye on this...there still seems to be something wrong.
|
|
|
|
2012-02-08 15:04:52 +0100 Georg Hopp
|
|
|
|
* fixed some warnings
|
|
|
|
2012-02-08 13:12:59 +0100 Georg Hopp
|
|
|
|
* changed documentation
|
|
|
|
2012-02-08 13:05:23 +0100 Georg Hopp
|
|
|
|
* added first generated documentation
|
|
|
|
2012-02-08 12:14:44 +0100 Georg Hopp
|
|
|
|
* oops commit...forgot to add request_queue.c
|
|
|
|
2012-02-08 11:52:30 +0100 Georg Hopp
|
|
|
|
* found the file handle lost...made a first workaround and added an todo.
|
|
|
|
2012-02-08 10:21:04 +0100 Georg Hopp
|
|
|
|
* 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.
|
|
|
|
2012-02-07 14:20:00 +0100 Georg Hopp
|
|
|
|
* now stuff seems to work correct even if read does not provide a complete request (tested with telnet)
|
|
|
|
2012-02-07 13:41:49 +0100 Georg Hopp
|
|
|
|
* now each HttpRequestParser initializes its own request queue and enqueus completed requests there. The server now gets the queue and prints completed requests.
|
|
|
|
2012-02-07 11:12:30 +0100 Georg Hopp
|
|
|
|
* started filling out a request object with the parser
|
|
|
|
2012-02-07 09:29:59 +0100 Georg Hopp
|
|
|
|
* porformance improvement in parsing process (no longer do alloc and free on each line)
|
|
|
|
2012-02-07 08:52:18 +0100 Georg Hopp
|
|
|
|
* basic request parsing (line by line) implemented
|
|
|
|
2012-02-06 16:08:13 +0100 Georg Hopp
|
|
|
|
* split server implementation for readability
|
|
|
|
2012-02-06 11:35:40 +0100 Georg Hopp
|
|
|
|
* free reader (HttpRequestParser) when connection is closed
|
|
|
|
2012-02-06 11:20:00 +0100 Georg Hopp
|
|
|
|
* add StreamReader interface, modify HttpRequestParser and Server to use it
|
|
|
|
2012-02-06 11:15:00 +0100 Georg Hopp
|
|
|
|
* add missing include to stdarg.h
|
|
|
|
2012-02-06 10:45:33 +0100 Georg Hopp
|
|
|
|
* implement clone selector
|
|
|
|
2012-02-06 10:43:59 +0100 Georg Hopp
|
|
|
|
* add ability to call interface methods with return value
|
|
|
|
2012-02-06 02:37:55 +0100 Georg Hopp
|
|
|
|
* make build system work again
|
|
|
|
2012-02-06 02:37:24 +0100 Georg Hopp
|
|
|
|
* remove inline stuff for now ... add carefully again later perhaps
|
|
|
|
2012-02-06 00:57:26 +0100 Georg Hopp
|
|
|
|
* and also mod conigure.ac
|
|
|
|
2012-02-06 00:55:44 +0100 Georg Hopp
|
|
|
|
* makefile modification for new class stuff
|
|
|
|
2012-02-05 22:55:16 +0100 Georg Hopp
|
|
|
|
* changed class tool. Now multiple interface per class are supported as well as simple inheritence.
|
|
|
|
2012-02-05 22:47:10 +0100 Georg Hopp
|
|
|
|
* some latest work
|
|
|
|
2012-02-05 22:44:59 +0100 Georg Hopp
|
|
|
|
* added some documentation
|
|
|
|
2012-02-05 22:42:37 +0100 Georg Hopp
|
|
|
|
* changes related to server code
|
|
|
|
2012-01-19 16:41:41 +0100 Georg Hopp
|
|
|
|
* added some valueable thought about cclass and how this structure might evolve to a real class
|
|
|
|
2012-01-18 07:52:07 +0100 Georg Hopp
|
|
|
|
* add testserver and did some fixes not shown by my incomplete tests
|
|
|
|
2012-01-17 15:40:07 +0100 Georg Hopp
|
|
|
|
* more notes
|
|
|
|
2012-01-17 15:04:33 +0100 Georg Hopp
|
|
|
|
* add some thought
|
|
|
|
2012-01-17 14:49:49 +0100 Georg Hopp
|
|
|
|
* changed from select(UNIX) to poll(POSIX)
|
|
|
|
2012-01-16 18:39:01 +0100 Georg Hopp
|
|
|
|
* work on server_run
|
|
|
|
2012-01-16 17:05:57 +0100 Georg Hopp
|
|
|
|
* move test under docs dir
|
|
|
|
2012-01-16 17:05:08 +0100 Georg Hopp
|
|
|
|
* simply copy signal handling code from gameserver project
|
|
|
|
2012-01-16 16:04:11 +0100 Georg Hopp
|
|
|
|
* more work on socket handling stuff... @TODO think about renaming it to connection as it only handles TCP sockets
|
|
|
|
2012-01-16 13:48:05 +0100 Georg Hopp
|
|
|
|
* add info text about file handle passing and ported more stuff from my old server structure
|
|
|
|
2012-01-16 08:05:15 +0100 Georg Hopp
|
|
|
|
* reflect changes in configure.ac
|
|
|
|
2012-01-13 22:46:45 +0100 Georg Hopp
|
|
|
|
* add daemonize code from other project. (Might be integrated in a future class but i am not sure right now
|
|
|
|
2012-01-13 22:16:17 +0100 Georg Hopp
|
|
|
|
* logger now works and has some basic testing
|
|
|
|
2012-01-13 22:15:03 +0100 Georg Hopp
|
|
|
|
* change cclass so that the internal structure is no longer visible by the rest of the code
|
|
|
|
2012-01-13 16:06:02 +0100 Georg Hopp
|
|
|
|
* some fixes on first logger tests
|
|
|
|
2012-01-13 15:54:22 +0100 Georg Hopp
|
|
|
|
* initial checkin
|
|
|