0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-09-19 15:08:53 +02:00
Commit graph

215 commits

Author SHA1 Message Date
Jason Volk
3865326d71 ircd::server: Add additional loghead(link, request) with more data. 2019-04-11 22:26:11 -07:00
Jason Volk
4f27526e9b ircd::server: Add monotonic identity counters for peers and links. 2019-04-11 22:26:11 -07:00
Jason Volk
d38c5801c9 ircd::server: Add interface to iterate all requests. 2019-04-11 21:40:59 -07:00
Jason Volk
5f1f0d0d7f ircd::server: Distill out functions to parse HTTP head from in/out buffers. 2019-04-11 21:13:42 -07:00
Jason Volk
9a6c5f5fe4 ircd::server: Don't parse from outbound buffer for canceled requests. 2019-04-11 20:49:29 -07:00
Jason Volk
446964bb67 ircd::server: Apply stack protected canary on key frames. 2019-04-10 22:32:06 -07:00
Jason Volk
5c359f22f3 ircd::net::socket: Change behavior of non-blocking read_() calls to not throw for EAGAIN. 2019-04-09 21:08:15 -07:00
Jason Volk
97ee68d4f3 ircd::server: Don't alter open_opts.hostport here. 2019-03-25 19:14:49 -07:00
Jason Volk
0f184cd449 ircd::server: Fix loghead() failure conditions. 2019-03-25 18:48:32 -07:00
Jason Volk
6b3a459d29 Revert "ircd::server: Fix concurrency assumptions in server::get()."
This reverts commit 3db83faac3.
2019-03-25 18:31:05 -07:00
Jason Volk
195937cd08 ircd::server: Condition the next query after SRV on ipv6 state. 2019-03-25 15:20:01 -07:00
Jason Volk
672e9dd712 ircd::server: Add conf item to toggle ipv6 use. 2019-03-25 15:18:06 -07:00
Jason Volk
a43c0e5798 ircd::server: Split AAAA and A handlers for chaining. 2019-03-25 14:37:01 -07:00
Jason Volk
d7631dc39b ircd::server: Skip DNS resolution on IP literals. 2019-03-25 12:26:56 -07:00
Jason Volk
c5088c3af2 ircd::server: Show response code in tag completion debug log msg. 2019-03-25 12:25:25 -07:00
Jason Volk
d149c540f4 ircd::server: Split link opening routine from resolver handler. 2019-03-24 20:50:16 -07:00
Jason Volk
7f5f07509a ircd::net::dns: Add utils to properly check for empty records in JSON. 2019-03-24 20:13:23 -07:00
Jason Volk
e640e6ac62 ircd::server: Perform DNS resolution sequence and handler logic externally here. 2019-03-24 15:28:07 -07:00
Jason Volk
dbb965ce48 ircd::server: Add loghead() and display request method/paths in some debug log msgs. 2019-03-24 14:10:11 -07:00
Jason Volk
b72758f904 ircd::server: Fix insertion/resolver reentrancy conflict. 2019-03-22 21:06:28 -07:00
Jason Volk
77648137e9 Revert "ircd: Remove use of all unwind::exceptional and unwind::nominal devices."
This reverts commit 4f243826c2.
2019-03-22 21:06:28 -07:00
Jason Volk
3db83faac3 ircd::server: Fix concurrency assumptions in server::get(). 2019-03-22 15:13:55 -07:00
Jason Volk
8f41687940 modules/s_dns: Fix exception propagation to callback. 2019-03-22 13:51:28 -07:00
Jason Volk
e62e65df6b ircd::server: Add peer to map before resolve. 2019-03-22 10:51:11 -07:00
Jason Volk
68e3655a1d ircd::net::dns: Refactor system for the !dns room. 2019-03-21 18:24:36 -07:00
Jason Volk
cff17eaa40 ircd: Add exception tools which elide copying. 2019-03-16 16:28:28 -07:00
Jason Volk
4f243826c2 ircd: Remove use of all unwind::exceptional and unwind::nominal devices. 2019-03-12 18:41:05 -07:00
Jason Volk
395a6ceabd ircd::server: Add request option to control whether content overrun is an error. 2019-03-08 16:52:48 -08:00
Jason Volk
6d9fb00d8c ircd::server: Fix discard buffering. 2019-03-08 16:32:37 -08:00
Jason Volk
62d33e2f7a ircd::server: Improve this error information. 2019-03-01 10:07:56 -08:00
Jason Volk
d639eceba2 ircd: Move runlevel related into ircd::run:: namespace. 2019-01-18 09:08:56 -08:00
Jason Volk
cbf456a388 ircd: Rename and refactor ircd::assertion interface into ircd::panic. 2019-01-13 16:37:31 -08:00
Jason Volk
e4922772f4 ircd::server: Fix issues with non-matrix peer construction. 2018-12-05 19:38:40 -08:00
Jason Volk
36bb0d3175 ircd: Integrate all boost::system::system_error with stdlib. 2018-11-08 23:05:11 -08:00
Jason Volk
3a36bbfca5 ircd::server: Fix dangling-type exception_ptr in peer::err by clearing peers here.
This will destruct the exception first before the module which introduced the
exception's type unloads. On daemon shutdown, the module will unload and if
an instance of the exception is still held by peer::err bad things happen.
2018-10-24 17:31:22 -07:00
Jason Volk
100325b5a8 ircd::server: deinline peer::err ctor. 2018-10-21 05:35:02 -07:00
Jason Volk
58c7a4885b ircd::server: Remove redundant strings; minor cleanup. 2018-10-02 22:37:07 -07:00
Jason Volk
5b7cf5a8eb ircd::net::dns: Reorg namespace structure related. 2018-10-01 12:03:31 -07:00
Jason Volk
2e245dacd1 ircd::server: Minor move handler binding. 2018-09-18 23:47:52 -07:00
Jason Volk
5a32754937 ircd::server: Catch anything at these handlers. 2018-09-18 21:48:40 -07:00
Jason Volk
3b960d2576 ircd: Add misc assertions. 2018-09-18 21:24:19 -07:00
Jason Volk
dadf237bb5 ircd::server: Minor cleanup; modernize some log calls. 2018-09-18 15:10:10 -07:00
Jason Volk
a4f8cf83f6 ircd::server: Handle unfavorable runlevel in resolver callback. 2018-09-17 21:06:38 -07:00
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