0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-06-03 02:28:55 +02:00
Commit graph

59 commits

Author SHA1 Message Date
Jason Volk 13f3d1ebc6 ircd::net: Add state for nodelay in socket w/ condition to elide; interface overloads. 2023-03-19 19:56:14 -07:00
Jason Volk 4e16f1849b ircd::net::socket: Support non-SSL sockets. 2023-03-18 14:08:20 -07:00
Jason Volk aa8ce19c7c ircd: Internalize various loghead utils; remove legacy ostream operators. 2023-02-09 11:41:11 -08:00
Jason Volk 1da91f41b3 ircd::net: Elide repeated getsockname()/getpeername() w/ cached sockaddrs. 2023-02-08 10:52:02 -08:00
Jason Volk 08d39efca6 ircd::net: Fix double-jumps through interface glues; internalize symbols. 2022-07-01 13:36:04 -07:00
Jason Volk 4ae50c97d1 ircd: Various symbol internalizing and PLT reductions. 2022-06-17 21:11:54 -07:00
Jason Volk e51b855f2b ircd: Various symbol surface reductions and sorting. 2022-06-17 21:11:53 -07:00
Jason Volk 432fcd9cd8 ircd::net::socket: Hoist function-static instances of ios::descriptor. 2020-10-03 02:31:20 -07:00
Jason Volk c0d2fe20bb ircd::stats: Refactor subsystem template hierarchy and approach. (#31) 2020-06-17 18:12:19 -07:00
Jason Volk a70a6164be ircd::net: Convey ALPN selection to socket instance. 2020-05-30 23:19:03 -07:00
Jason Volk c1737e167c ircd::ios: Employ the asio::executor abstraction w/ backward-compat. 2020-02-27 12:44:57 -08:00
Jason Volk 51e62a56f6 ircd::net::socket: Switch to deadline timer. 2019-10-08 19:30:48 -07:00
Jason Volk 56c025ab7b ircd::net::socket: Minor cleanup; move warning into unlikely branch. 2019-09-14 12:17:07 -07:00
Jason Volk a280350dee ircd::net: Fix the asio callback and error_code interp on socket waits. 2019-09-13 12:44:59 -07:00
Jason Volk 63a9f33d7c ircd::net: Simplify socket check related. 2019-07-27 13:17:53 -07:00
Jason Volk 0f4d1e2869 ircd::net::socket: Convert totals counters to stats::items. 2019-07-11 15:51:09 -07:00
Jason Volk 015cbe53b1 ircd::net::socket: Add static counters for totals. 2019-07-08 06:03:20 -07:00
Jason Volk 4aef8cfdf8 ircd::net::socket: Deinline the read/write member template suites. 2019-05-03 16:29:56 -07:00
Jason Volk 0f404a0bda ircd::net: Addition assertions; use constrefs in handler cbs. 2019-04-16 21:39:43 -07:00
Jason Volk 92cdccf956 ircd::net: Add parent ssl_cipher conf items; add curve items. 2019-04-15 22:16:16 -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 38f7d61020 ircd::net::socket: Add non-blocking check() query with interface. 2019-03-12 18:41:05 -07:00
Jason Volk 29e7fa3515 ircd::ctx: Use closure for continuation. 2018-12-22 21:03:14 -08:00
Jason Volk 37ba013413 ircd::ctx: Simplify continuation; eliminate to_asio derived type. 2018-12-22 20:11:00 -08:00
Jason Volk c2b344b74e ircd: Allow exceptions to propagate from various interruptors. 2018-12-22 17:24:48 -08:00
Jason Volk 36bb0d3175 ircd: Integrate all boost::system::system_error with stdlib. 2018-11-08 23:05:11 -08:00
Jason Volk 02f64c7f34 ircd: Add ios unit to provide a more central control point for asio. 2018-10-17 05:12:10 -07:00
Jason Volk cb6f0032a4 ircd::net: Expose interface to get socket counter as an ID. 2018-09-29 17:15:45 -07:00
Jason Volk 49d83de384 ircd::net: Propagate ctx interruption to socket. 2018-04-15 17:46:20 -07:00
Jason Volk f4b2273a4b ircd::net: Add a semaphore to the socket timer to invalidate queued callbacks. 2018-04-15 17:46:20 -07:00
Jason Volk 5be18475df ircd::net: Move scope_timeout from socket:: to net:: w/ exposure. 2018-04-15 16:43:09 -07:00
Jason Volk 8bf0b4d093 ircd::net: Assert proper socket object semantics. 2018-04-12 12:52:14 -07:00
Jason Volk 79f6974f86 ircd::net: Wait for destruction of all sockets on shutdown. 2018-03-12 18:50:36 -07:00
Jason Volk bbd2cbc15b ircd::net: Checkpoint case for read eof in the readiness handler; should split. 2018-03-11 13:40:24 -07:00
Jason Volk 49d6d2b8ea ircd::net: Add socket state and assertion for fini. 2018-03-09 19:41:16 -08:00
Jason Volk de08752853 ircd::net: Remove unused/erroneous has_timeout(). 2018-02-18 22:38:23 -08:00
Jason Volk be624ca7f6 Update Copyrastafaris. 2018-02-05 21:24:34 -08:00
Jason Volk 272061d666 ircd::net: Fix comments. 2018-01-22 00:54:53 -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 6682f0ce80 ircd::net: On disconnect, turn an EOF ec into a success. 2018-01-15 19:46:23 -08:00
Jason Volk 314bcb3d30 ircd::net: Update read()/write() strategies. 2018-01-14 20:45:30 -08:00
Jason Volk a135227370 ircd::net: Tighten assumptions on cancel(). 2018-01-11 22:02:33 -08:00
Jason Volk 89c481d1f8 ircd::net: Improve wait related; fix issues with bad behavior. 2018-01-08 18:33:05 -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 a9bd77a67d ircd::net: Add an internal non-blocking read call; minor comments. 2018-01-08 03:08:59 -08:00
Jason Volk a1f0075d62 ircd::net: Improve the timeout callback related. 2018-01-08 03:08:59 -08:00
Jason Volk bad0037d78 ircd::net: Copy around open_opts for now to prevent any lifetime complications. 2018-01-08 03:08:59 -08:00
Jason Volk ac3802c0f9 ircd::net: Refine network subsystem; break up interfaces; various. 2018-01-06 23:27:01 -08:00
Jason Volk 7e0c01708a ircd::net: Refine socket interfaces; connection options structure. 2018-01-05 19:19:03 -08:00
Jason Volk 72317c07c3 ircd::net: Shlock certificate common-name verification into the net stack. 2018-01-04 23:17:11 -08:00