0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-01 19:38:54 +01:00
Commit graph

170 commits

Author SHA1 Message Date
Jason Volk
7d64e6323b ircd::client: Use conf::item's for client related. 2018-04-20 00:44:45 -07:00
Jason Volk
d2536c83a2 ircd::client: dwarning if client request pool exhausted. 2018-04-20 00:44:45 -07:00
Jason Volk
19d7e05605 ircd::resource: Allow each resource method to specify its timing. 2018-04-15 18:02:41 -07:00
Jason Volk
756840b42c ircd::client: Add unique client id monotonic counter. 2018-04-14 17:15:06 -07:00
Jason Volk
69aeddad61 ircd::client: Reference the client's request handling context via class member. 2018-04-13 17:03:17 -07:00
Jason Volk
0b217b3474 ircd::client: Improve request exception propagation; propagate ctx::interrupted. 2018-04-13 15:46:16 -07:00
Jason Volk
572996ae23 ircd::client: Demote inactivity log message. 2018-04-09 10:17:57 -07:00
Jason Volk
26b33a1845 ircd::ctx: Remove the cv_status enum. 2018-03-26 23:29:58 -07:00
Jason Volk
ef791ae46e ircd::client: Use ctx::exception_handler to respond to client from catch block. 2018-03-24 18:00:04 -07:00
Jason Volk
2a2c05e641 ircd::client: Handle exceptions below main. 2018-03-16 23:02:08 -07:00
Jason Volk
a585a86717 ircd::client: Tweak internal error catch points; remove workaround from 79800a66. 2018-03-15 22:25:16 -07:00
Jason Volk
3810b8d57f ircd: Various exception assertions; minor cleanup. 2018-03-15 22:25:16 -07:00
Jason Volk
a48426e25d ircd/modules: Migrate some log messages to new facilities. 2018-03-15 22:25:16 -07:00
Jason Volk
e8c10977a1 ircd: More descriptive warning message. 2018-03-14 16:26:16 -07:00
Jason Volk
a22e45a9f5 ircd: Break down client shutdown; improve various shutdown refusals. 2018-03-12 14:20:39 -07:00
Jason Volk
edd03e58af ircd: Disregard repeat attempts to close client socket; return proper future. 2018-03-11 13:54:51 -07:00
Jason Volk
79800a666c ircd::client: Mark bug TODO; temp bandaid. 2018-03-11 13:40:24 -07:00
Jason Volk
f11be8a0d8 ircd: Replace the client write_closure thing. 2018-03-11 13:40:24 -07:00
Jason Volk
bbc1844c61 ircd::http: Status code signage consistency. 2018-03-11 10:23:06 -07:00
Jason Volk
e2569b4cb6 ircd: Disambiguate the litany of response argument variations. 2018-03-09 17:10:45 -08:00
Jason Volk
27b01a58eb ircd: Tweak client stack error related; fix missing content-type; assert all responses. 2018-03-09 17:10:45 -08:00
Jason Volk
4670fdbd1b ircd: Remove ircd::error_code typedef with more local typedefs. 2018-03-08 10:08:38 -08:00
Jason Volk
8c02823d49 ircd: Tweak client error handling; fwddecl json::expectation_failure. 2018-03-08 07:40:41 -08:00
Jason Volk
ff2903900b ircd: In runtime debugmode, log HTTP errors at the error level. 2018-02-23 23:35:09 -08:00
Jason Volk
52cbf0fc70 ircd: Condition client timeout for longpoll; fix resource request reference. 2018-02-21 17:43:29 -08:00
Jason Volk
9173c13b89 ircd: Move resource::request related off the stack into client. 2018-02-17 16:17:59 -08:00
Jason Volk
7e89baf369 ircd: Add resource::method::CONTENT_DISCRETION option flag. 2018-02-17 14:38:49 -08:00
Jason Volk
3709bd5612 ircd: Improve+rename client/resource head_buffer/content_buffer related. 2018-02-17 14:28:06 -08:00
Jason Volk
2be10ef206 ircd: Fix/Address client current request flow for longpolls. 2018-02-12 19:30:44 -08:00
Jason Volk
be624ca7f6 Update Copyrastafaris. 2018-02-05 21:24:34 -08:00
Jason Volk
d56cc60b88 ircd::net: Tweak these error handlers and log facilities. 2018-01-24 14:38:12 -08:00
Jason Volk
7bf9ce225c ircd::net: Tweak what's left of the socket handle_ready cattle grid. 2018-01-24 14:12:38 -08:00
Jason Volk
103ff45553 ircd::net: Translate operation_canceled into timed_out where appropos. 2018-01-20 13:59:24 -08:00
Jason Volk
745a00b332 ircd: Tweak client error handling stack apropos request timeout. 2018-01-15 03:12:56 -08:00
Jason Volk
c83665ca6c ircd: Reorg client; add class members; pointer to current request; conf, etc. 2018-01-13 17:58:11 -08:00
Jason Volk
4d310ac22b ircd: Towards debug message uniformity. 2018-01-11 22:02:34 -08:00
Jason Volk
04fa556c58 ircd: Reflow the request handlers to give the resource more control over content. 2018-01-11 22:02:34 -08:00
Jason Volk
c03bb7e4f2 ircd: Various fixes and elaborations to client/net. 2018-01-08 21:49:00 -08:00
Jason Volk
c8aaeb491f ircd::net: Develop interface for async_wait / waiting on socket. 2018-01-08 13:25:13 -08:00
Jason Volk
f8127957c3 ircd: Various error handling fixes/cleanup. 2018-01-08 03:09:00 -08:00
Jason Volk
b507262582 ircd: Remove the close+wait after exiting client::main(). 2018-01-08 03:09:00 -08:00
Jason Volk
54d6cbc8c1 ircd: Fwd declare boost::system::error_code; minor cleanup. 2018-01-08 03:08:59 -08:00
Jason Volk
4561bb21a0 ircd: Various fixes to net related call points. 2018-01-06 23:27:02 -08:00
Jason Volk
acc73957f8 ircd::net: Socket interface package. 2018-01-04 17:44:34 -08:00
Jason Volk
0eb16673ee ircd::net: Add resolve interface; Update remote interface. 2017-12-29 19:33:04 -07:00
Jason Volk
9871332957 fixup! Pin boost to 1.66.0. 2017-12-29 15:53:39 -07:00
Jason Volk
c20a2927d0 ircd: Minor reorg client/resource relationship. 2017-12-24 21:54:59 -07:00
Jason Volk
8178d96f64 ircd: Add iov size to client/server IO debug. 2017-12-24 21:54:59 -07:00
Jason Volk
3d5eea0ce3 ircd::net: Move these temp items here. 2017-12-24 21:54:58 -07:00
Jason Volk
f8d3fee8b6 ircd::client: Add comments; move around error handlers; related. 2017-12-24 21:54:58 -07:00
Jason Volk
40d6b6055b ircd::http: Remove the write_closure from the request parse object. 2017-12-24 21:54:58 -07:00
Jason Volk
acff6139e9 ircd::http: Move request error handlers out of http (to client). 2017-12-24 20:25:40 -07:00
Jason Volk
80931e4e86 ircd:Ⓜ️ Split m.cc; distribute inits; modules: Checkpoint matrix. 2017-12-12 14:59:40 -07:00
Jason Volk
1a1a50f5f3 Checkpoint reorganization. 2017-11-30 12:30:19 -08:00
Jason Volk
366b0531a1 ircd: Remove this warning message when everything is normal. 2017-11-30 11:23:46 -08:00
Jason Volk
62caa95ec8 ircd: Move client request exception handler to where the rest are. 2017-11-30 11:23:45 -08:00
Jason Volk
6b961711cb ircd::net: Fix asio error code casting for SSL codes. 2017-11-30 11:23:45 -08:00
Jason Volk
08469eb2a0 ircd::net: Tweak net::remote ctor related. 2017-11-30 11:23:44 -08:00
Jason Volk
d7136bb393 ircd: Improve and comment on runlevel / client interruption. 2017-11-30 11:23:43 -08:00
Jason Volk
2930b93dcb ircd::net: Various net/client/listener bugfixes/cleanup. 2017-11-30 11:23:42 -08:00
Jason Volk
2ce9b0521f ircd::net: Various fixes / error handling / api. 2017-11-30 11:23:41 -08:00
Jason Volk
8b573378e8 ircd: Fixes to client related to net. 2017-11-30 11:23:40 -08:00
Jason Volk
7feb0dff79 ircd: client: various cleanup. 2017-10-19 01:04:52 -07:00
Jason Volk
1a4c57653b ircd: Improve this stack buffer for now. 2017-10-11 20:54:02 -07:00
Jason Volk
b9f13ed2c2 ircd: Remove cruft. 2017-10-11 20:54:01 -07:00
Jason Volk
fe4c59003f ircd::net: Add debugging messages for client connect; also for unhandled server errors. 2017-10-03 04:27:14 -07:00
Jason Volk
84d7746165 ircd: Add net; various asio related. 2017-10-03 04:17:10 -07:00
Jason Volk
816b5125b2 ircd: Improve/cleanup ircd::init()/ircd::stop() related. 2017-10-03 04:17:07 -07:00
Jason Volk
f4682522a8 ircd::util: Rename stopped overload to nostart. 2017-09-24 18:16:44 -07:00
Jason Volk
7f7ef9a4bf ircd: Add client request timer related. 2017-09-24 18:16:44 -07:00
Jason Volk
971496817b Minor fixes / cleanup. 2017-09-24 18:16:40 -07:00
Jason Volk
7f548cee1c ircd: Make asio header; comments; add special continuation for yielding to asio. 2017-09-24 18:16:39 -07:00
Jason Volk
e0c0f71754 ircd: Fix client shutdown. 2017-09-24 18:16:38 -07:00
Jason Volk
6503d28006 ircd: Simplify this service stack for now. 2017-09-24 18:16:34 -07:00
Jason Volk
214e5e7107 Compiler recommended to use std::terminate() rather than throw into noexcept. 2017-09-24 18:16:34 -07:00
Jason Volk
54d6793f59 Update various documentation and comments. 2017-09-24 18:16:33 -07:00
Jason Volk
7cc4ed56ab ircd: Support both iov and ilist for socket and buffer related. 2017-09-24 18:16:33 -07:00
Jason Volk
207ac4ef53 ircd: Various improvements to client and socket related. 2017-08-23 15:52:15 -06:00
Jason Volk
10472684f2 ircd: Cleanup client/ircd main. Fixes for exit notification. 2017-08-23 15:50:37 -06:00
Jason Volk
6e44074bad ircd: Various client / listener / main related. 2017-08-23 15:13:57 -06:00
Jason Volk
3a31c62681 ircd: Minor cleanup. 2017-03-30 16:04:20 -07:00
Jason Volk
21db4baab3 ircd: Various cleanup. 2017-03-30 16:04:18 -07:00
Jason Volk
3c38aeb96e ircd: Nest this ep initializer for now. 2017-03-17 20:35:00 -07:00
Jason Volk
c9ddf4f6ab ircd: Add lex_cast wrapper interface; various cleanup. 2017-03-14 15:03:15 -07:00
Jason Volk
4a65843064 ircd: Interrupt client request parsing with 408 Request Time-out after timeout. 2017-03-13 18:44:08 -07:00
Jason Volk
55be9a9f6d ircd: Loop the whole input tape before returning to async. 2017-03-13 18:44:08 -07:00
Jason Volk
e849897cc0 ircd::parse: Capstan. 2017-03-13 18:44:08 -07:00
Jason Volk
472ee2c648 ircd: HTTP interface function-objects et al. 2017-03-13 18:44:00 -07:00
Jason Volk
49c2a5361c ircd: Various fixes. 2017-03-13 14:43:27 -07:00
Jason Volk
60ce08d0df ircd::client: http protocol dispatch. 2017-03-10 18:03:10 -08:00
Jason Volk
b592b69b86 What is the Matrix? Control. 2017-03-10 17:51:18 -08:00
Jason Volk
be48466ef3 fixup! [temp] Checkpoint test. 2016-11-13 16:32:38 -08:00
Jason Volk
5e0659b2f9 ircd: Use variable length receive buffer. 2016-09-28 14:19:18 -07:00
Jason Volk
757d7e10a8 [temp] checkpoint some crap which isn't going to stick. 2016-09-27 17:29:06 -07:00
Jason Volk
581ca84439 ircd: sendf() directly to client (prelim). 2016-09-22 16:18:32 -07:00
Jason Volk
d8d2fe1564 ircd: Add scope 'life_guard' util for references in reentrant contexts. 2016-09-22 16:18:31 -07:00
Jason Volk
679855be15 ircd: Split rbuf.h off client.cc 2016-09-21 16:29:30 -07:00
Jason Volk
ca4e04d85f ircd::vm: Introduce vm; temp demo an immediate context. 2016-09-21 16:29:30 -07:00
Jason Volk
fcd410d656 ircd::client: Add timer logic to client socket/io.
Note: Not sure if I like two reference counters for each client,
ideally, but we'll see where it goes after abstractions.
2016-09-21 16:29:30 -07:00
Jason Volk
a9f967d16a ircd: Feed received tape into the machine. 2016-09-21 16:29:30 -07:00