0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-06-02 10:08:56 +02:00
Commit graph

315 commits

Author SHA1 Message Date
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