0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-12 13:01:07 +01:00
Commit graph

272 commits

Author SHA1 Message Date
Jason Volk
439e8618d6 ircd: Simplify/cleanup the coarse controls for client/server subsystems. 2018-09-17 16:47:36 -07:00
Jason Volk
bc88a4cf6d ircd::server: Assertion on tag removal. 2018-09-04 20:27:30 -07:00
Jason Volk
2b199ae3ed ircd::net/ircd::server/ircd::client: Various cleanup; log messages. 2018-08-28 12:06:45 -07:00
Jason Volk
b13193611d ircd::server: Rename peer::interrupt() to peer::cancel(). 2018-05-29 11:53:37 -07:00
Jason Volk
69e9c9bbc6 ircd::server: Fix peer hostname string discrepancy. 2018-05-19 18:49:08 -07:00
Jason Volk
65f7adc8c6 ircd::server: Internalize more references to the peer instance; various cleanup. 2018-05-19 18:49:07 -07:00
Jason Volk
dcbbaf2579 ircd::server: Add opts::prio value; special case prio value in link selection. 2018-05-09 17:07:37 -07:00
Jason Volk
6b0c011535 ircd::server: Copies of the link pointers must be on stack. 2018-05-08 16:03:56 -07:00
Jason Volk
51d0f1a6a4 ircd::server: Use fixed tls vector for copying link pointers. 2018-05-07 23:24:51 -07:00
Jason Volk
9a3bda06af ircd::server: Copy link pointers while iterating for open(). 2018-05-07 23:09:06 -07:00
Jason Volk
b113322a28 ircd::server: Improve assertion for no key movement. 2018-05-07 16:34:59 -07:00
Jason Volk
292e8c5a12 ircd::server: Remove deprecated assertion. 2018-05-02 22:22:12 -07:00
Jason Volk
1d0ae3855a ircd::server: Close link if the only commitment is a cancelled tag. 2018-05-02 12:33:08 -07:00
Jason Volk
c84fe8d962 ircd::server: Fix preservation of nullity for in.content through cancellation. 2018-05-02 12:00:32 -07:00
Jason Volk
8f7a05c9ed ircd::server: Minor cleanup / assertions / comments. 2018-05-02 12:00:26 -07:00
Jason Volk
fb53069c6f ircd::net::dns Include query in callback arguments to prevent any stale captures. 2018-05-01 18:56:22 -07:00
Jason Volk
9c5b10fb61 ircd::server: Preserve nullity of cancellation tag's in.content. 2018-04-26 21:35:55 -07:00
Jason Volk
6add3e9952 ircd::server: Limit recursion of chunk head parses. 2018-04-25 20:52:27 -07:00
Jason Volk
e2568457f4 ircd::server: Add dynamic chunk vectoring. 2018-04-25 20:52:26 -07:00
Jason Volk
7e32d3cbaa ircd::server: Checkpoint preliminary chunk vectoring; state, options. 2018-04-25 15:10:04 -07:00
Jason Volk
7c92eb2757 ircd::server: Use system time for error time state. 2018-04-13 20:02:48 -07:00
Jason Volk
516d1797c9 ircd::server: Clear op_fini flag on err_clear(). 2018-04-10 21:02:34 -07:00
Jason Volk
331d0a955d ircd::server: Yield in exception handler. 2018-04-07 11:05:54 -07:00
Jason Volk
0012793bf6 ircd::server: Ensure open_opts references are fresh after resolve comes back. 2018-04-07 06:16:41 -07:00
Jason Volk
6488141f64 ircd::server: Additional assertions. 2018-04-07 06:16:24 -07:00
Jason Volk
db93acf8fb ircd::server: Fix condition for promise resolution on cancel(). 2018-04-07 05:00:55 -07:00
Jason Volk
c2b2dc8d69 ircd::server: Use disassociate() during cancel(); tweak assertions. 2018-04-07 05:00:55 -07:00
Jason Volk
4c26b65613 ircd::server: Add head bytes when calculating read total. 2018-04-06 02:50:29 -07:00
Jason Volk
5648903998 ircd::server: Adjust discard error expectations. 2018-04-06 02:50:29 -07:00
Jason Volk
c4b18438ce ircd::server: Additional debug logging / tweaks. 2018-04-06 02:50:29 -07:00
Jason Volk
d2388a1abf ircd::server: Discard reads when tag has committed no writes. 2018-04-06 01:05:04 -07:00
Jason Volk
c79cbe670b ircd::server: Additional assertions that buffers are not zero size. 2018-04-06 00:33:09 -07:00
Jason Volk
47edaed3a6 ircd::server: Add stats for total bytes up and down to peer and links. 2018-03-26 23:29:58 -07:00
Jason Volk
270120c922 ircd::server: Rename _total() to _size() for bytes accounting. 2018-03-26 23:29:58 -07:00
Jason Volk
26b33a1845 ircd::ctx: Remove the cv_status enum. 2018-03-26 23:29:58 -07:00
Jason Volk
05ded4f0e4 ircd::server: Checkpoint discard based on ssl pending; move branch. 2018-03-26 02:24:29 -07:00
Jason Volk
968ef4115c ircd: Fix signage related. 2018-03-23 23:19:53 -07:00
Jason Volk
84ede3ceac ircd::server: Support tag::cancel() case for chunked encoding. 2018-03-20 16:31:02 -07:00
Jason Volk
bc8f5cba05 ircd::server: Use better buffer sizes and offsets in tag::cancel() procedure. 2018-03-20 16:31:02 -07:00
Jason Volk
d21c2fc37c ircd::server: Separate out the link's socket read function. 2018-03-20 16:31:02 -07:00
Jason Volk
6e7751eaf3 ircd::server: Receive chunked transfer-encoding. 2018-03-20 14:12:44 -07:00
Jason Volk
bd80297733 ircd::server: Minor cleanup: relocate the contiguous / dynamic feature branches. 2018-03-20 01:26:42 -07:00
Jason Volk
5a1057a6a5 ircd::server: Check against a null status code to leave head mode. 2018-03-20 01:24:42 -07:00
Jason Volk
0ba91776d1 ircd::server: Move insufficient buffer checks into the creator functions. 2018-03-20 01:23:42 -07:00
Jason Volk
c8b80046d1 ircd::server: Aggregate all accounting values riding on tag into one struct. 2018-03-19 20:37:28 -07:00
Jason Volk
2e801a0219 ircd::server: Remove content_over from the state and calculate functionally. 2018-03-19 20:26:23 -07:00
Jason Volk
90bbbeaf02 ircd::server: Save content_length in tag state; fix stepping on content_over calculation. 2018-03-19 20:26:23 -07:00
Jason Volk
c5addbd450 ircd::server: Minor cleanup/reorg; Add unsupported encoding exception branch. 2018-03-19 16:07:42 -07:00
Jason Volk
7f2f855c4e ircd::server: Reinstall the read handler after discard. 2018-03-18 13:51:43 -07:00
Jason Volk
a48426e25d ircd/modules: Migrate some log messages to new facilities. 2018-03-15 22:25:16 -07:00
Jason Volk
0ffa3b6257 ircd::server: Condition before killing link on open error. 2018-03-13 22:44:13 -07:00
Jason Volk
b16e53337c ircd::server: Use canonized hostport as peer remote; store net::open_opts; minor cleanup. 2018-03-13 22:44:13 -07:00
Jason Volk
8091bdd007 ircd::server: Fix the interrupted link open to close to delete transit. 2018-03-12 18:59:38 -07:00
Jason Volk
09923ff758 ircd::server: Add external interface to clear a peer error; w/ console command. 2018-03-12 14:20:39 -07:00
Jason Volk
a22e45a9f5 ircd: Break down client shutdown; improve various shutdown refusals. 2018-03-12 14:20:39 -07:00
Jason Volk
27b0dfffa4 ircd::server: Fix condition for link finished; add assertion here. 2018-03-11 13:54:51 -07:00
Jason Volk
00ba8ebdb4 ircd::ctx: Factor shared_ptr out of promise/future. 2018-03-10 23:04:58 -08:00
Jason Volk
d59de1a391 ircd::server: Improve peer state transitions and destruction paths. 2018-03-10 23:04:58 -08:00
Jason Volk
e09111ff4e ircd::server: Case for close during init. 2018-03-09 17:10:46 -08:00
Jason Volk
b1a4ca6852 ircd::server: More descriptive message in this error. 2018-03-09 17:10:45 -08:00
Jason Volk
4e75566c94 ircd::server: Break down the shutdown process further. 2018-03-09 17:10:44 -08:00
Jason Volk
7f336200ea ircd::server: Check and clear peer error after timeout. 2018-03-09 12:45:25 -08:00
Jason Volk
81b3916953 ircd::server: Simplify without refcounting async ops. 2018-03-09 12:45:25 -08:00
Jason Volk
f1fb3d8b49 ircd::server: Add peer::err object. 2018-03-08 08:24:19 -08:00
Jason Volk
9b44217ea4 ircd::server: Rename opts member pointer to opt. 2018-03-07 07:23:35 -08:00
Jason Volk
37753a9648 ircd::server: Make close timeout shorter on close_all (shutdown). 2018-03-06 07:50:14 -08:00
Jason Volk
ea3f7abde5 ircd::server: Add state to deny any resubmission on peer close. 2018-03-06 04:51:20 -08:00
Jason Volk
327e4da356 ircd::server: Rename node to peer. 2018-03-05 06:59:10 -08:00
Jason Volk
c7ae8d3f27 ircd::server: Fix conditions for link removal from link::close(). 2018-03-04 02:09:41 -08:00
Jason Volk
90b7810921 ircd::server: Reset necessary link state if any exception before handler. 2018-03-04 02:09:41 -08:00
Jason Volk
92bef88b6c ircd::server: Improve tag cancellation/dispersal on closing/shutdown; minor cleanup. 2018-03-03 21:56:50 -08:00
Jason Volk
4df13f5d4f ircd::server: Add conf items for existing todos. 2018-03-03 21:54:42 -08:00
Jason Volk
b840156b37 ircd::server: Add preliminary node error state; keep erroneous node in map as cache. 2018-03-02 22:37:52 -08:00
Jason Volk
a8569fb81b ircd::server: Improve conditional for dynamic content feature. 2018-02-27 23:12:26 -08:00
Jason Volk
34ad473bdc ircd::server: Pass along remote's error content into our http::error. 2018-02-27 01:38:34 -08:00
Jason Volk
fc3b68b9e9 ircd::server: Add more state for async ops; adjust post points. 2018-02-27 01:00:12 -08:00
Jason Volk
7f77c68232 ircd::net/ircd::server: Rename misleading functions. 2018-02-26 22:49:44 -08:00
Jason Volk
c412beacbf ircd::server: Add dynamic content allocation after receiving head. 2018-02-26 21:56:05 -08:00
Jason Volk
f235fc155e ircd::server: Close and remove node on name resolution error. 2018-02-21 17:44:08 -08:00
Jason Volk
24fdfdd9fe ircd::server: Fix error; fix regression. 2018-02-07 00:24:54 -08:00
Jason Volk
be624ca7f6 Update Copyrastafaris. 2018-02-05 21:24:34 -08:00
Jason Volk
c3ceb94478 ircd: These should be rvalue refs. 2018-01-30 23:13:27 -08:00
Jason Volk
513082b656 ircd::net: Reorg DNS related; move resolver into header. 2018-01-28 14:28:33 -08:00
Jason Volk
6bc6d9f8a1 ircd: Minor cleanup. 2018-01-28 08:44:47 -08:00
Jason Volk
1cdb893b1b ircd: Replace various log.critical+assert(0) with ircd::assertives; minor cleanup. 2018-01-24 18:40:19 -08:00
Jason Volk
ed4d645523 ircd::server: Flash the HTTP header to a node callback to learn information. 2018-01-24 09:26:27 -08:00
Jason Volk
5d1790fb0d ircd::server: Add reference count of pending async handlers. 2018-01-23 15:07:05 -08:00
Jason Volk
33796d00c1 ircd::server: Handle write errors. 2018-01-23 15:07:05 -08:00
Jason Volk
b91fcefe45 ircd::server: Default to two requests in flight in a pipe. 2018-01-22 00:54:52 -08:00
Jason Volk
72bacdedf6 ircd::server: Fix these assertions. 2018-01-22 00:54:52 -08:00
Jason Volk
f1d659a6c0 ircd::server: Add a complementary upload progress callback. 2018-01-22 00:54:52 -08:00
Jason Volk
9da18261a6 ircd::server: Add an optional download progress callback. 2018-01-22 00:54:52 -08:00
Jason Volk
ceed6d5d44 ircd::server: Reuse the read_content() function when reading partial. 2018-01-22 00:54:52 -08:00
Jason Volk
d108ec22f8 ircd::server: Invoke read handler as-needed; various fixes. 2018-01-20 13:59:24 -08:00
Jason Volk
93364b6072 ircd::server: Add content buffer deduction from single in buffer. 2018-01-20 02:30:20 -08:00
Jason Volk
31fd9346f6 ircd: Baptize server.h into the standard include group. 2018-01-18 06:09:02 -08:00
Jason Volk
9ba31f77c2 ircd::server: Various fixes; error handling; minor cleanup. 2018-01-17 21:38:17 -08:00
Jason Volk
ca6dc44a6c ircd::server: Various fixes. 2018-01-17 03:33:08 -08:00
Jason Volk
4727e93f8a ircd::server: Handle link open error. 2018-01-17 03:33:08 -08:00
Jason Volk
5a51638db8 ircd::server: Add options to request; add http code exception option. 2018-01-17 03:33:07 -08:00
Jason Volk
7f9f970b5b ircd::server: Improve some exception messages conveyed back to promise. 2018-01-17 01:05:31 -08:00
Jason Volk
862fb1ebcd ircd::server: Support robust request cancellation without disrupting pipeline. 2018-01-17 00:47:37 -08:00
Jason Volk
b9fe5c69ad ircd::server: Additional exception propagations; fail on link unavailability. 2018-01-16 04:01:26 -08:00
Jason Volk
2520afe5a6 ircd::server: Handle insufficient head buffer; preliminary tag reassign. 2018-01-16 00:55:44 -08:00
Jason Volk
ce31219b00 ircd::server: Elide saving head in tag; add content buffer-underrun discard. 2018-01-16 00:55:44 -08:00
Jason Volk
286f117ef8 ircd::server: Add idle link removal when over pool min; stubs for node decision-making. 2018-01-16 00:55:44 -08:00
Jason Volk
8536c57982 ircd::server: Minor renames; minor cleanup; improve some error handlers. 2018-01-15 20:26:27 -08:00
Jason Volk
1e0fe2b3d5 ircd::server/net: Proper snomask on these log calls. 2018-01-15 19:28:55 -08:00
Jason Volk
bf99718a0f ircd::server: Basic pipeline. 2018-01-15 19:03:32 -08:00
Jason Volk
8e9bae5209 ircd::server: Add stats accumulation; develop preliminary dispatch; various. 2018-01-15 19:02:26 -08:00
Jason Volk
59621eb266 ircd::server: Improve write stack; add close_all(); various. 2018-01-15 03:12:56 -08:00
Jason Volk
368838d5a5 ircd::server: Add preliminary write loop; minor cleanup. 2018-01-15 03:12:56 -08:00
Jason Volk
7c4659a99f ircd::server: Develop basic infrastructure. 2018-01-13 21:17:10 -08:00
Jason Volk
56cefcb650 ircd::server: Move into directory; various cleanup. 2018-01-13 18:03:04 -08:00
Jason Volk
fa3afc7ad7 ircd::server: Preliminary client request pipeline framework. 2018-01-12 18:57:58 -08:00
Jason Volk
8178d96f64 ircd: Add iov size to client/server IO debug. 2017-12-24 21:54:59 -07:00
Jason Volk
7ef3b67213 ircd: Fix server.h inclusion checkpoint. 2017-11-30 11:23:48 -08:00
Jason Volk
315d86a8d2 ircd: Checkpoint temp server link uniplexing... 2017-11-30 11:23:47 -08:00
Jason Volk
bcebeb420d ircd: Add interrupt for server dtor. 2017-11-30 11:23:46 -08:00
Jason Volk
6f392049ba ircd: Use the asio error stringifier. 2017-11-30 11:23:45 -08:00
Jason Volk
532f416a3d ircd: Develop various server. 2017-11-30 11:23:45 -08:00
Jason Volk
6a024e9e16 ircd: Add preliminary 'server' as a client to *other* servers. 2017-11-30 11:23:40 -08:00