Commit Graph

  • 8f8ab92521 upon quit time, workers will not accept new connections but will handle all outstanding http requests. Joris Vink 2013-06-04 13:43:11 +0200
  • 0de28488a6 move from multithreads to single threaded worker processes. Joris Vink 2013-06-04 11:55:38 +0200
  • ae0a8ece75 update Joris Vink 2013-06-04 08:52:30 +0200
  • b65cc93426 allow handlers to return KORE_RESULT_RETRY. This will tell the worker to reschedule the page request again at the end of its list. (Allows module creators to write truely nonblocking modules). Joris Vink 2013-05-31 00:40:06 +0200
  • 7dfa7e6ec0 be carefull when we reload the module to not reload it when workers are inside the module callbacks. Joris Vink 2013-05-31 00:06:54 +0200
  • fecbd058cb rework the worker thread so there's actually time to schedule more then one request at a time on them. Joris Vink 2013-05-31 14:24:00 +0200
  • e428886e16 decrement the worker load on HTTP_REQUEST_DELETE Joris Vink 2013-05-31 13:30:51 +0200
  • 966ba3352e missing profile.html Joris Vink 2013-05-30 23:16:00 +0200
  • bb4001d119 ok that was wrong, disconnect http clients whne we're done sending or upon error, not immediately after queueing everything. Joris Vink 2013-05-30 21:57:14 +0200
  • ca1c884e43 attempt to clear out send buffer before we shutdown ssl connection. remove superfleaous debug Joris Vink 2013-05-30 21:39:01 +0200
  • 791aba1e82 specify example of onload Joris Vink 2013-05-30 21:27:13 +0200
  • cf6a6550f0 allow onload to be given in the config file. onload specifies what function in your module to call when the module has been loaded or reloaded. Joris Vink 2013-05-30 21:26:39 +0200
  • ec5ac40706 wake up the workers once in a while to process anything that is waiting. Joris Vink 2013-05-30 20:55:50 +0200
  • f9b3cfcee4 reschedule events if we cannot lock the connection at the time being. Joris Vink 2013-05-30 20:38:25 +0200
  • 9ad263e287 do not remove disconnected connections until we actually are ready to disconnect them. Joris Vink 2013-05-30 20:07:06 +0200
  • 9243f409cc move to a worker based threading approach where we delegate http requests to workers in a round robin basis (later this should be swapped to find the laziest worker and assign the request to that instead). Joris Vink 2013-05-30 19:36:42 +0200
  • 8478d8df54 add chroot and runas directives so we can chroot and drop privilegs properly Joris Vink 2013-05-04 22:18:27 +0200
  • 3b30920a60 for now, until we properly handle a persistent HTTP connection for non spdy clients make sure we close the connection after handling the HTTP request. Joris Vink 2013-05-04 21:03:53 +0200
  • ce729010f7 - simplify header building using kore_buf_appendf() for normal HTTP requests. - make sure we dont free nb->buf if its NULL. (semantics). - remove some superfluffy debug. - make sure we call [inflate|deflate]End when we dc a client that used zlib. Joris Vink 2013-05-04 20:44:16 +0200
  • 45adae62f7 q->value should be set to NULL if a query parameter is present but no value was set for it. Joris Vink 2013-05-04 19:09:07 +0200
  • 61b937ac1b remove unused vars Joris Vink 2013-05-04 16:38:40 +0200
  • 8d67ee4c52 add dynamic handler example to our base module Joris Vink 2013-05-29 14:42:40 +0200
  • 088d877715 switch dynamic handlers to regex based patterns, much easier. Joris Vink 2013-05-29 14:29:46 +0200
  • 2290d09d3b Add dynamic handles, which can be used to partially match a URI and still call a cb handler. This is especially usefull when considering the handlers as a ruleset: Joris Vink 2013-05-29 13:33:32 +0200
  • 697ff6d980 Merge remote branch 'origin/master' Joris Vink 2013-05-29 12:27:53 +0200
  • 0be748ee0f use SSL_CTX_use_certificate_chain_file instead when loading certificates so we can properly use our intermediate authority. Joris Vink 2013-05-29 12:27:30 +0200
  • 65065b4652 zero out tstamp Joris Vink 2013-05-04 14:14:50 +0200
  • 1671698f58 increase sbuf length substantially Joris Vink 2013-05-22 12:50:20 +0200
  • a88b8de6a2 add proper query argument parsing, modules must call http_populate_arguments() before using http_argument_lookup() to lookup a given argument. Joris Vink 2013-05-03 09:09:27 +0200
  • b3cdccbc87 add http_post_data_text() which returns the post data NUL-terminated to the caller. Joris Vink 2013-05-03 07:49:40 +0200
  • 85aad24af5 do not NUL terminate the post data, for later. Joris Vink 2013-05-03 07:43:53 +0200
  • 2401bd1a9f support for POST in both spdy and normal connections Joris Vink 2013-05-03 07:35:11 +0200
  • f34831c6cb update README just a tiny bit. Joris Vink 2013-05-17 08:46:45 +0200
  • 879b5716d1 req->method is no longer a string, adapt kore_log() Joris Vink 2013-05-03 01:21:09 +0200
  • 90588913d4 allow sending SIGHUP to kore, which will then reload its content module Joris Vink 2013-05-03 00:04:06 +0200
  • ba2ed8d954 host header might not come in second.. Joris Vink 2013-05-02 22:35:29 +0200
  • e7feaaba76 properly close a spdy stream once both sides have FLAG_FIN. Joris Vink 2013-05-02 17:30:06 +0200
  • 4ed4f76e44 allow POST to work with spdy, all POST data is stored in the httpreq->post_data field. (as a kore_buf) Joris Vink 2013-05-02 17:14:07 +0200
  • f61bbe8ff4 move buf stuff back into kore.h, wont need it separately Joris Vink 2013-05-02 15:14:00 +0200
  • a025f0fa8e save the http request for spdy later on Joris Vink 2013-05-02 15:06:26 +0200
  • 4fb8a13f1b mmmm Joris Vink 2013-05-02 15:00:03 +0200
  • 84428f7133 move buf stuff into its own header, so we can use it in spdy.h Joris Vink 2013-05-02 14:55:57 +0200
  • 60ed3e0fd2 the net qeueuing functions don't need to return status codes, simplifies a lot of other code that revolves around those. Joris Vink 2013-05-02 14:47:02 +0200
  • 07f2f83def make sure we do not dereference p if its NULL Joris Vink 2013-05-02 13:47:53 +0200
  • 807764614b from now on configuration files must specify a domain for the handlers that follow. This allows for easy subdomain configuration. Joris Vink 2013-05-02 13:30:13 +0200
  • 53cbc1a21e make sure we advance the host buffer properly Joris Vink 2013-05-02 12:11:56 +0200
  • f1fa108f98 begin processing window_update messages Joris Vink 2013-05-02 10:10:03 +0200
  • c2520b2ebf oops, sending 2 bytes too much. Joris Vink 2013-05-02 09:25:14 +0200
  • 364dc58219 rework disconnecting clients and fix bug where spdy ocnnections could segfault after disconnecting Joris Vink 2013-05-02 09:10:35 +0200
  • fdb9004c6d do not kill spdy sessions upon receiving unknown frames. Joris Vink 2013-05-02 05:32:56 +0200
  • b98c688429 remove debug Joris Vink 2013-05-02 04:44:52 +0200
  • 2cc4505c8c correct offset Joris Vink 2013-05-02 03:52:53 +0200
  • f46bba50ef add very basic support for HTTP/1.1. Joris Vink 2013-05-02 03:51:04 +0200
  • 5f983d575b add flags to net_recv_queue() and net_send_queue(),. Joris Vink 2013-05-02 00:28:49 +0200
  • 3918a7a0a2 add a little readme Joris Vink 2013-05-01 21:36:00 +0200
  • df6ebe3568 u_int32_t to time_t for last mstamp Joris Vink 2013-05-01 21:25:08 +0200
  • a9ebf37cae allow modules to add headers to the response before calling http_response() by calling http_response_header_add(). Joris Vink 2013-05-01 21:16:09 +0200
  • a228cdba0e introduce kore_split_string() to properly split strings apart. introduce kore_date_to_time() to conver http-date formatted strings to time_t. Joris Vink 2013-05-01 20:10:45 +0200
  • 39afa6c25b add missing config.c Joris Vink 2013-05-01 17:17:16 +0200
  • fa1a3099c1 better error msg Joris Vink 2013-05-01 17:16:09 +0200
  • 3ca83c9857 add example module that can be built to test kore. Joris Vink 2013-05-01 16:59:13 +0200
  • 4ecfd81e6e allow us to pass content-type to http_response() Joris Vink 2013-05-01 16:51:34 +0200
  • a39040ba9b build kore as -rdynamic so we can properly load modules. implement kore_module_handler_find(). Joris Vink 2013-05-01 16:11:10 +0200
  • d9bbb0b1f1 initial module support Joris Vink 2013-05-01 16:03:48 +0200
  • a074258dcc rework the way events trigger and the way we handle them. follow the manual for once, as edge trigger does not refire until we got an EAGAIN. Joris Vink 2013-05-01 13:43:47 +0200
  • d59847c448 SPDY works, we can serve content. Now for dynamic modules so we can get stuff on the road. Joris Vink 2013-05-01 12:23:21 +0200
  • 848704f74b lots of new stuff, including processing of http requests and an attempt to build an initial spdy response (SYN frame + header block content). Joris Vink 2013-05-01 08:09:04 +0200
  • 4fc434e909 make sure method, path and host are free'd in case of failure. Joris Vink 2013-05-01 01:23:46 +0200
  • 05156c9a3a properly deflate/inflate of name/value blocks. and add ability to get headers from them. Joris Vink 2013-05-01 00:35:33 +0200
  • bb3b804222 add beginnings of zlib inflation, not really working. nap time. Joris Vink 2013-04-29 23:35:36 +0200
  • 071fc4100d only clear our a netbuf if retain is 0 AND it's been filled. Joris Vink 2013-04-29 07:15:14 +0200
  • a41a792303 link to lz already, gotta use it later Joris Vink 2013-04-28 23:44:42 +0200
  • c8b422d29d allow us to expand receive buffers automatically so we can keep chaining data into the same netbuf. This gives us the possibility to retain the ctrl_frame by the time we reach the proper cb for the actual frame message. Joris Vink 2013-04-28 23:42:13 +0200
  • 23c0ec67c6 begin with the ability to read control frames. something feels fishy with epoll() and its triggering of events. I probably got it wrong. Joris Vink 2013-04-28 19:11:44 +0200
  • 7a6be8ff2e properly link statically against everything Joris Vink 2013-04-28 13:56:28 +0200
  • ef4b3f36f7 add openssl libraries we link against, easier. Joris Vink 2013-04-28 13:55:47 +0200
  • c6c6b1823f read next protocol properly and remember it for later. Joris Vink 2013-04-21 20:35:47 +0200
  • 68d0523817 Add initial SSL stuff + bare bones NPN advertisement. So far chrome connects and shows our connection as SPDY/3, good start. Joris Vink 2013-04-21 20:21:46 +0200
  • cba9628f16 oops Joris Vink 2013-04-17 22:34:42 +0200
  • 857c3f9121 first commit Joris Vink 2013-04-17 22:34:27 +0200