0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-07-30 22:34:40 +02:00
Commit graph

2038 commits

Author SHA1 Message Date
Jason Volk 9336b28095 ircd:Ⓜ️:state: Bound the stack frame size. 2018-04-11 23:40:30 -07:00
Jason Volk b16aa7f55c ircd:Ⓜ️:state: Add get_node(nothrow) overload. 2018-04-11 23:40:30 -07:00
Jason Volk 82ef048d3f ircd:Ⓜ️ More complete presence interface getter interface stack. 2018-04-11 23:09:49 -07:00
Jason Volk 75fdf2f518 ircd:Ⓜ️:user: Add naive user commonality interface. 2018-04-11 23:09:49 -07:00
Jason Volk 867a3aa9dc ircd:Ⓜ️:user::rooms: Allow empty membership string intuitive behavior. 2018-04-11 15:56:37 -07:00
Jason Volk 33ca15e45d ircd:Ⓜ️:user::rooms: Add a count() interface. 2018-04-11 15:47:51 -07:00
Jason Volk 55e4a8fcaf ircd:Ⓜ️ Split user's rooms iteration into separate interface. 2018-04-11 15:38:01 -07:00
Jason Volk 66e81327d0 ircd:Ⓜ️ Order rooms.h below user.h; add alias interface for user's rooms. 2018-04-11 15:10:45 -07:00
Jason Volk e9df8b699c ircd:Ⓜ️ Add user room membership convenience interface; apply. 2018-04-11 14:18:38 -07:00
Jason Volk 516d1797c9 ircd::server: Clear op_fini flag on err_clear(). 2018-04-10 21:02:34 -07:00
Jason Volk baf8b192b1 ircd::json: Add the stack flusher semantic. 2018-04-10 19:32:56 -07:00
Jason Volk 9270937957 ircd::json: Simplify internal stack appending; pass expected append size. 2018-04-10 17:00:57 -07:00
Jason Volk b244959c35 ircd::json: Fix stack::object error. 2018-04-10 15:11:44 -07:00
Jason Volk bc4cb5cf8c ircd::json: Allow stack objects to have dtor called manually to close JSON. 2018-04-10 14:17:56 -07:00
Jason Volk 102ef2cb47 ircd::json: Object semantics for json::stack classes. 2018-04-10 13:48:14 -07:00
Jason Volk d3805b410e ircd:Ⓜ️:v1: Add conf item for fetch_head timeout. 2018-04-10 13:20:31 -07:00
Jason Volk fe90dd4d63 ircd:Ⓜ️ Add convenience interface for rooms / iterations. 2018-04-09 20:12:03 -07:00
Jason Volk 952571a3ad ircd:Ⓜ️ Add key iteration to room::state interface. 2018-04-09 19:24:56 -07:00
Jason Volk 28d4ebfba2 ircd::db: Improve the db::has() query: no value read when using iterator. 2018-04-09 16:57:13 -07:00
Jason Volk dc5a1554f6 ircd::db: Fallback wo/ user equality comparator. 2018-04-09 16:50:50 -07:00
Jason Volk 294aec368c ircd:Ⓜ️:dbs: Fix issues with prefixing related. 2018-04-09 16:50:50 -07:00
Jason Volk 963853ee10 ircd:Ⓜ️ Add init argument to pass dbopts. 2018-04-09 15:57:08 -07:00
Jason Volk 1268d90fb0 ircd::db: RocksDB to 5.12.2. 2018-04-09 15:57:05 -07:00
Jason Volk e160205959 ircd::db: Mark sundry db open options related. 2018-04-09 15:56:14 -07:00
Jason Volk 3e27f5be06 ircd::db: Fix/tweak db fsck log messages. 2018-04-09 11:52:06 -07:00
Jason Volk 343a1f38a3 ircd::db: Improve dbopts string manipulation related. 2018-04-09 11:51:36 -07:00
Jason Volk 6dcc7e29df ircd::fmt: Leave useful note for assertion. 2018-04-09 11:48:20 -07:00
Jason Volk 572996ae23 ircd::client: Demote inactivity log message. 2018-04-09 10:17:57 -07:00
Jason Volk 23b1a7e032 ircd::db: Workaround issue querying the filtration after db reopen. 2018-04-08 22:11:29 -07:00
Jason Volk 7fb3047f68 ircd:Ⓜ️ 11.18.2.1 account_data w/ central linkage. 2018-04-08 22:11:29 -07:00
Jason Volk 8625823d23 ircd:Ⓜ️:v1: Add public_rooms requestor. 2018-04-08 22:11:28 -07:00
Jason Volk 5621da53bc ircd:Ⓜ️:v1: Add event_auth requestor. 2018-04-08 12:35:27 -07:00
Jason Volk f3539f3dbe ircd:Ⓜ️ Switch to ripemd160 for user::room. 2018-04-08 12:29:55 -07:00
Jason Volk dcd343356d ircd::openssl: Use custom internal allocation strategy. 2018-04-08 12:29:55 -07:00
Jason Volk eb1d1c2482 ircd::openssl: Eliminate allocation of hashing ctx for oneshot ctor. 2018-04-08 12:29:55 -07:00
Jason Volk d41096cf15 ircd::openssl: Assertions for hashing ctx existing. 2018-04-08 12:29:52 -07:00
Jason Volk c04ea62135 ircd:#️⃣ Deinline the abstract finalize() defaulter. 2018-04-08 12:29:29 -07:00
Jason Volk 5f441c417f ircd::openssl: Support ripemd160. 2018-04-08 12:29:25 -07:00
Jason Volk 37a0b0362b ircd::net::dns: Post callback away from timeout worker ctx's stack. 2018-04-07 11:20:22 -07:00
Jason Volk fb6a4fc6ac ircd::ctx: Bypass the exception_handler assertion if on bare metal. 2018-04-07 11:08:07 -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 fceb9efc7c ircd:Ⓜ️ Fix/tweak pretty_oneline(event) format. 2018-04-07 00:45:37 -07:00
Jason Volk 99d04c310a ircd:Ⓜ️ Return sentinel iterator to not leave undefined residue. 2018-04-06 22:23:18 -07:00
Jason Volk ccf9e993dd ircd:Ⓜ️:txn: Elaborate the txn generation stack. 2018-04-06 22:23:18 -07:00
Jason Volk cfbe032af5 ircd:Ⓜ️ Add room_id() overload checking sigil to skip resolution. 2018-04-06 21:08:59 -07:00
Jason Volk 9863e2a1a3 ircd:Ⓜ️ Add event comparison operator suite. 2018-04-06 03:13:27 -07:00
Jason Volk f26410f5c3 ircd:Ⓜ️:v1: IO'ing buffers must be on ctx's stack. 2018-04-06 02:50:29 -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 13c4a5b79b ircd:Ⓜ️:v1: Add convenience option for dynamic memory to all requests. 2018-04-06 00:21:32 -07:00
Jason Volk d3e6b20f14 ircd:Ⓜ️:vm: Distill vm::opts::commit extension from vm::opts. 2018-04-05 23:14:30 -07:00
Jason Volk 74b7dddb9a ircd:Ⓜ️:v1: Simplify the buffer partition pattern. 2018-04-05 22:45:04 -07:00
Jason Volk 0d42bf62f5 ircd:Ⓜ️:v1: Reduce all head fetches to specific call. 2018-04-05 22:16:32 -07:00
Jason Volk c849a30aa1 ircd:Ⓜ️ Improve interface to current event convenience suite. 2018-04-05 22:16:32 -07:00
Jason Volk 3ab6409267 ircd::js: Remove stale devel include. 2018-04-04 22:54:59 -07:00
Jason Volk dbba5519f5 ircd::resource: Use json::empty_object instead of literal; cleanup debuglog. 2018-04-04 22:54:58 -07:00
Jason Volk b3ba8c6d4b ircd:Ⓜ️ Add convenience to room::state interface to return id buffer. 2018-04-04 22:54:58 -07:00
Jason Volk 7995c20c50 ircd::ctx::pool: Change dispatching from notify_one() to notify(). 2018-04-04 22:54:58 -07:00
Jason Volk 93316f4692 ircd::json: Deinline various value related. 2018-04-04 22:54:58 -07:00
Jason Volk bf4da27fc6 ircd:Ⓜ️ Ensure X-Matrix content is properly excluded or included for verification. 2018-04-04 22:54:53 -07:00
Jason Volk 6b5bfaf4c0 ircd::json: Minor cleanup of value serialize cattle grid. 2018-04-04 13:36:30 -07:00
Jason Volk b675567314 ircd:Ⓜ️🆔 Report 0 if no port affixed to ID, 8448 not implied bc/ SRV. 2018-04-04 13:03:13 -07:00
Jason Volk 36d1d41a8b ircd:Ⓜ️ Add prev hash information to pretty(event). 2018-04-03 23:34:10 -07:00
Jason Volk 68cd920bb0 ircd:Ⓜ️ pretty(event) format tweaks. 2018-04-03 23:34:10 -07:00
Jason Volk 603658c722 ircd::net: Increase default resolver rate limiting. 2018-04-03 23:34:10 -07:00
Jason Volk 39da63828c ircd::json: Fix error in stack::~object. 2018-04-03 23:34:09 -07:00
Jason Volk 1755ca55da ircd:Ⓜ️:v1: Add invite requestor. 2018-04-03 17:18:19 -07:00
Jason Volk b90d4230ca modules/client/rooms/invite: Add invite commit / handler w/ central linkage. 2018-04-03 12:56:46 -07:00
Jason Volk 59531912e4 ircd:Ⓜ️ Add origins::has() to query if origin is in room. 2018-04-03 12:49:34 -07:00
Jason Volk 8b5d27d1fc ircd:Ⓜ️:dbs: Add overload to generate partial origins prefix key. 2018-04-03 12:49:03 -07:00
Jason Volk 2bce600a60 ircd::db: Wrap interface to get db's file list. 2018-04-03 11:44:57 -07:00
Jason Volk 1dc2daa5e9 ircd::db: Wrap interface to toggle file deletions. 2018-04-03 11:30:37 -07:00
Jason Volk cfb80085a8 ircd::db: Support map-based property retrieval. 2018-04-03 11:14:47 -07:00
Jason Volk 0bf6742ac9 ircd::db: Typedef / minor reorg property related interface. 2018-04-03 11:01:28 -07:00
Jason Volk 199ccad3e1 ircd:Ⓜ️ Minor desc cleanup; minor cleanup exception rewrite. 2018-04-03 02:14:48 -07:00
Jason Volk a2ecd6339c ircd:Ⓜ️ Stringify request verification into tls buffer. 2018-04-02 23:20:50 -07:00
Jason Volk b9bb4b4a45 ircd::resource: Carry origin in the request object. 2018-04-02 23:20:50 -07:00
Jason Volk c999036a03 ircd:Ⓜ️ Rewrite db::not_found to m::NOT_FOUND for room::state propagation. 2018-04-02 22:06:51 -07:00
Jason Volk 6976119109 ircd:Ⓜ️:state: Fix db::not_found propagating from nothrow'ing get(). 2018-04-02 22:04:17 -07:00
Jason Volk 7b38d216b4 ircd:Ⓜ️:v1: Fix user devices query and associated console cmd. 2018-04-02 18:40:52 -07:00
Jason Volk e0130466e9 ircd:Ⓜ️:v1: Rename user::id to id::user to avoid local conflict. 2018-04-02 18:40:52 -07:00
Jason Volk baccd4b767 ircd:Ⓜ️:v1: Support request to /state_ids/ as option in m::v1::state. 2018-04-02 18:40:52 -07:00
Jason Volk b5060a5e46 ircd::db: Create specific DB dir manually to avoid rocksdb error log msg. 2018-04-02 17:19:01 -07:00
Jason Volk 14b7a088ee ircd::db: Minor cleanup. 2018-04-02 17:18:56 -07:00
Jason Volk 31c3dea483 ircd::info: Gather information from rlimit if available. 2018-04-02 17:03:05 -07:00
Jason Volk c54e7f5afe configure.ac: Gather more information from git during configure. 2018-04-02 16:50:51 -07:00
Jason Volk db9e5f3b78 ircd::json: Improve validator grammar; clarify magic number. 2018-03-28 22:19:26 -07:00
Jason Volk 4a1ca1a525 ircd::json: Deinline output validators from template. 2018-03-28 22:17:09 -07:00
Jason Volk 7ad99ab387 ircd::json: Add why() to specifically return err str from valid(). 2018-03-28 22:17:09 -07:00
Jason Volk 15b995cee8 modules/m_presence: Move presence committer/getter into client/presence. 2018-03-28 22:17:09 -07:00
Jason Volk d48f46a0ac modules/m_typing: Move m.typing committer into client/rooms/typing. 2018-03-28 22:17:09 -07:00
Jason Volk cbc4852e16 modules/m_receipt: Move m.receipt committer into client/ 2018-03-28 22:17:09 -07:00
Jason Volk 85bafcb7de ircd:Ⓜ️ Improve init ordering and process. 2018-03-28 14:11:33 -07:00
Jason Volk 43b92dc95d ircd:Ⓜ️ Minor cleanup. 2018-03-28 14:11:33 -07:00
Jason Volk f07eed2ab9 ircd::ctx: Relax the assertion for uncaught exceptions on context switch. 2018-03-28 14:11:33 -07:00
Jason Volk 751b896c3d ircd:Ⓜ️ Improve various initial conf related keys and routines. 2018-03-28 14:11:33 -07:00
Jason Volk 14b540c6a8 ircd:Ⓜ️ Add v1::groups namespace; add publicised requestor. 2018-03-28 01:29:58 -07:00
Jason Volk f01fdc0528 ircd::json: Return non-magic size; return stringify views of written data. 2018-03-27 21:44:01 -07:00
Jason Volk fb58bdf7de ircd::json: Granular stringify size assertions. 2018-03-27 21:44:01 -07:00
Jason Volk 49cb8fee1a ircd::json: Assertions for empty object iterator equality. 2018-03-27 21:44:01 -07:00
Jason Volk 1436ce36c1 ircd::json: Checkpoint output escape echo. 2018-03-27 21:44:01 -07:00
Jason Volk 7657fde5db ircd::db: Add function to get single txn into closure by seqnum. 2018-03-27 21:44:01 -07:00
Jason Volk ff1fe4284d ircd:Ⓜ️ Add central linkage for join by alias; move bootstrap to rooms/join. 2018-03-27 21:44:01 -07:00
Jason Volk 8f9caa33c3 ircd::ctx: Conclude the best name for function after deliberation. 2018-03-27 00:52:02 -07:00
Jason Volk e179915008 ircd:Ⓜ️ Indicate to event:🆔:buf it was written to. 2018-03-26 23:29:58 -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 c6b9c06302 ircd::ctx: Avoid any possible ambiguities with location of *current. 2018-03-26 23:29:57 -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 6574da4b22 ircd: Add tokens_before() to suite. 2018-03-25 17:32:57 -07:00
Jason Volk 34abaea046 ircd::mods: Move the call to the init function after the mod ctor. 2018-03-25 16:10:52 -07:00
Jason Volk 291b6dc286 ircd::mods: Add shared_from mod& sym_ptr ctor; adjust conversions. 2018-03-25 16:10:52 -07:00
Jason Volk f36af09789 ircd::mods: Interface modernization; various cleanup; reorg. 2018-03-25 14:32:24 -07:00
Jason Volk 8050628748 ircd::aio: The io_getevents array can be off-stack because no ctx. 2018-03-25 02:04:42 -07:00
Jason Volk a2eb756548 ircd::ctx: Split this_ctx:: from ctx.h; minor reorg. 2018-03-25 02:04:42 -07:00
Jason Volk 2a8f31c89c ircd:Ⓜ️:dbs: Add db::op to write_opts; support SET and DELETE write() via opts. 2018-03-24 23:29:46 -07:00
Jason Volk daed99e94e ircd:Ⓜ️ Replace event membership ref conditional with the convenience. 2018-03-24 23:29:46 -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 441a692dfc ircd::ctx: Device to allow context switching in exception handler. 2018-03-24 18:00:04 -07:00
Jason Volk 7dbfb061e9 ircd::ctx: Assert no yielding during exception handling due to ABI limitations. 2018-03-24 15:53:15 -07:00
Jason Volk 1e99077169 ircd::db: Fix erroneous param in debug log. 2018-03-24 14:55:53 -07:00
Jason Volk 065370c38a configure.ac: parameter package. 2018-03-24 03:19:16 -07:00
Jason Volk c256b3fefb ircd:Ⓜ️ Fix various issues with request generation buffers. 2018-03-24 01:18:34 -07:00
Jason Volk 968ef4115c ircd: Fix signage related. 2018-03-23 23:19:53 -07:00
Jason Volk d745e65ee1 ircd::mods: Split up; clean up; reorg. 2018-03-23 22:52:36 -07:00
Jason Volk fe6f09d218 ircd::mods: Preliminary ADL wrappage of mods::mod. 2018-03-23 22:52:36 -07:00
Jason Volk 0dcf117910 ircd::mods: Provide a reference to the module's own handle inside the module. 2018-03-23 22:52:36 -07:00
Jason Volk 62861f2540 ircd::conf: No longer care about conf whitespace... 2018-03-23 22:52:36 -07:00
Jason Volk a08670cf48 ircd::fs: Support the yielding stdin readline in libircd. 2018-03-23 22:52:36 -07:00
Jason Volk db8810e397 ircd::ctx: Integrate custom interruption action. 2018-03-23 22:17:10 -07:00
Jason Volk 980d24b38e ircd::net: Simplify listener config object. 2018-03-23 22:17:10 -07:00
Jason Volk 439e212b90 ircd::conf: Remove old comment; implicit object brackets around conf file data. 2018-03-23 22:17:10 -07:00
Jason Volk 91c9737f29 ircd: Improve runlevel changed callback related. 2018-03-23 22:17:09 -07:00
Jason Volk 8ad264f72d ircd: Consolidate demangle related into interface / unit. 2018-03-23 22:17:09 -07:00
Jason Volk 4cae80f9b6 ircd:Ⓜ️ Make event interface consistent with proper ADL participation. 2018-03-23 00:21:27 -07:00
Jason Volk 50b21edb1c ircd:Ⓜ️ Event hash checking stack. 2018-03-23 00:19:55 -07:00
Jason Volk 83bdb7161c ircd::db: Add interface to iterate the database's txn log. 2018-03-22 20:52:14 -07:00
Jason Volk 2671f4eb90 ircd::db: Add txn ctor claiming a rocksdb::WriteBatch. 2018-03-22 20:52:14 -07:00
Jason Volk d40b18633f ircd::db: Move txn::handler struct to db/database headers. 2018-03-22 20:47:46 -07:00
Jason Volk fcbc2bf650 ircd::db: Add database checkpointing feature. 2018-03-22 20:08:50 -07:00
Jason Volk 421f2f5220 ircd::db: Util to flush all columns in db. 2018-03-22 19:55:15 -07:00
Jason Volk cbfb105765 ircd::db: Minor cleanup; interface const consistency on our side. 2018-03-22 19:39:14 -07:00
Jason Volk 2116cf6254 ircd:Ⓜ️ Add user::profile suite w/ linkage to modules/client/profile. 2018-03-22 16:27:15 -07:00
Jason Volk d29b98b0ea ircd::net: Fix these conf item paths. 2018-03-22 15:11:29 -07:00
Jason Volk 9c26c5facd ircd:Ⓜ️:vm: Option to verify origin signature on eval. 2018-03-22 01:31:17 -07:00
Jason Volk 51714d2b67 ircd::http: Response ctor content_length=-1 is chunked encoding. 2018-03-22 00:37:16 -07:00
Jason Volk ef0a3d6e6c ircd::http: Write fixed sized integer for chunk size. 2018-03-21 23:20:33 -07:00
Jason Volk 679f3e760a ircd::http: Add 411 Length Required. 2018-03-21 23:01:23 -07:00
Jason Volk 503ab33c38 ircd::json: Stricter escape conditions in string values. 2018-03-21 18:47:56 -07:00
Jason Volk df7b6f0ca9 ircd::json: Extend escaped unicode codepoint target. 2018-03-21 17:12:48 -07:00
Jason Volk 0e7ef9ef7d ircd::json: Fix value type LITERAL serialize/stringify consistency. 2018-03-21 17:12:48 -07:00
Jason Volk 502675e527 ircd::json: Minor cleanup of function static grammar type decls. 2018-03-21 17:12:48 -07:00
Jason Volk b949a1f3dc ircd::json: Checkpoint output grammar cleanup. 2018-03-21 17:12:48 -07:00
Jason Volk 99608b6bd2 ircd::json: Sort json::member vectors on stringify; w/ recursive reentrance. 2018-03-21 13:55:58 -07:00
Jason Volk 0483a381f8 ircd::json: Move member.h definitions to proper dependency ordered location. 2018-03-21 13:49:00 -07:00
Jason Volk df605d5646 ircd::json: Add functions to determine if object members are sorted. 2018-03-21 12:33:43 -07:00
Jason Volk d01aef9c35 ircd::json: Sort object members for stringify; recursive reentrant tls. 2018-03-21 01:09:41 -07:00
Jason Volk d75e8d50b9 ircd:Ⓜ️ Branch to remove hashes/signatures if defined when hashing. 2018-03-21 00:23:27 -07:00
Jason Volk 615ccdc426 ircd::json: Hello, goodbye. 2018-03-20 23:51:14 -07:00
Jason Volk fef1c0b1b8 ircd::json: Add stringify vector of object::member. 2018-03-20 23:40:31 -07:00
Jason Volk 9f256b9cb4 ircd:Ⓜ️ Distill essential key selection into separate functions. 2018-03-20 22:03:53 -07:00
Jason Volk 7f06300cb8 ircd:Ⓜ️ Extend the verify() stack with overloads that yield for IO. 2018-03-20 19:26:59 -07:00
Jason Volk f121509dba ircd:Ⓜ️ Event verification. 2018-03-20 19:16:04 -07:00
Jason Volk 0b3ec2b476 ircd:Ⓜ️ Convenience to close over decoded ed25519::pk directly. 2018-03-20 18:46:20 -07:00
Jason Volk e74fb81860 ircd:Ⓜ️ Overloads to sign event with supplied sk / json::object. 2018-03-20 18:19:45 -07:00
Jason Volk 53a4fae580 ircd::json: Recursive output grammar. 2018-03-20 17:39:57 -07:00
Jason Volk 7a9bb89506 ircd::json: All output through the generator. 2018-03-20 17:39:57 -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 09d971fa9e ircd::json: Make print_error an assertion; improve output validation messages. 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 f9c0ed49b1 ircd::http: Improve chunk header parsing device. 2018-03-19 14:42:40 -07:00
Jason Volk bf91eb6883 ircd::http: Grammar exception translator can be made aware of request vs. response. 2018-03-19 14:40:04 -07:00
Jason Volk daae800cc1 ircd::http: Utils to read and write chunk size line. 2018-03-18 21:51:55 -07:00
Jason Volk 9723eec4e8 ircd::http: Cleanup cruft; remove old chunking. 2018-03-18 21:18:00 -07:00
Jason Volk b169ac1ce8 ircd::json: Whitespace monoid. 2018-03-18 21:17:54 -07:00
Jason Volk 7f2f855c4e ircd::server: Reinstall the read handler after discard. 2018-03-18 13:51:43 -07:00
Jason Volk f5fa5100de ircd::net: Revert no-readahead; post immediate continuation to next stack. 2018-03-18 13:51:43 -07:00
Jason Volk 1780504cba ircd:Ⓜ️ Cope with raii fails in m::init for right now. 2018-03-17 21:40:27 -07:00
Jason Volk 2b72fae7a1 ircd:Ⓜ️ Move the event max_size conf item; add a MAX_SIZE constexpr. 2018-03-17 21:40:27 -07:00
Jason Volk 931fe2439e ircd::json: Introduce the json::stack device. 2018-03-17 21:40:27 -07:00
Jason Volk 373a791158 ircd::json: Limit IOV size and take stringify buffer off-stack. 2018-03-17 11:53:21 -07:00
Jason Volk 30eb9178bd ircd: Consolidate spirit typedefs from all relevant units into spirit.h. 2018-03-17 10:44:40 -07:00
Jason Volk d751255c5a ircd::magic: Avoid stderr pollution by checking if the file exists first. 2018-03-16 23:13:37 -07:00
Jason Volk 2a2c05e641 ircd::client: Handle exceptions below main. 2018-03-16 23:02:08 -07:00
Jason Volk 4211671698 ircd::ctx: Reason about exception propagation at stack base; minor cleanup. 2018-03-16 21:42:22 -07:00
Jason Volk af8835aa5c construct/ircd: Add option to soft-indicate no modules should be loaded on startup. 2018-03-16 21:42:22 -07:00
Jason Volk 7daef82218 construct/ircd: Add option to soft-indicate no listening sockets should be bound. 2018-03-16 21:42:22 -07:00
Jason Volk 486ddf8c8f ircd: More accurate assertion message. 2018-03-16 21:42:22 -07:00
Jason Volk 03651c2274 ircd: ircd::main() exception specification. 2018-03-16 21:42:22 -07:00
Jason Volk 61009aed64 ircd:Ⓜ️🆔 Improve expectation failure element propagation into error strings. 2018-03-16 21:42:22 -07:00
Jason Volk 8eb1f4df40 ircd/modules: Consistent hook site names "vm notify" -> "vm.notify". 2018-03-16 21:42:22 -07:00
Jason Volk 969bc127e8 ircd:Ⓜ️:vm: Fix return values for commit() suite. 2018-03-16 21:42:21 -07:00
Jason Volk 7180eae4af ircd:Ⓜ️:vm: Option for infolog post-commit. 2018-03-16 13:19:52 -07:00
Jason Volk c83a47eb0f ircd:Ⓜ️ Handle and report hookfn exception. 2018-03-16 13:13:33 -07:00
Jason Volk 2ea245bf58 ircd: Improve bad_lex_cast message with demangled typeid. 2018-03-16 12:44:12 -07:00
Jason Volk 01fc6db0c5 ircd::net: Disable readahead for socket's SSL_CTX. 2018-03-15 22:25:16 -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 bd60c2cd80 ircd::log: Add two new log facilities; comments on facilities. 2018-03-15 22:25:16 -07:00
Jason Volk 150831cd83 ircd:Ⓜ️ Add option to elide content keys for pretty_oneline(event). 2018-03-14 23:58:34 -07:00
Jason Volk be6a5b7767 modules/m_receipt: Add committer w/ central linkage; read_markers. 2018-03-14 22:53:34 -07:00
Jason Volk 7b2758a90d ircd:Ⓜ️:vm: Fix regression removing content from event_id preimage. 2018-03-14 17:56:50 -07:00
Jason Volk bda7836ebe ircd:Ⓜ️ Move typing commitment to modules/m_typing; central interface/linkage. 2018-03-14 17:47:59 -07:00
Jason Volk 7ae6ad47ea ircd:Ⓜ️:vm: Options to generate event_id, origin, origin_server_ts. 2018-03-14 16:26:16 -07:00
Jason Volk e8c10977a1 ircd: More descriptive warning message. 2018-03-14 16:26:16 -07:00
Jason Volk 2e9ef15cf5 ircd:Ⓜ️ Use vector_view here. 2018-03-14 16:26:16 -07:00
Jason Volk 68b5d53ae8 ircd:Ⓜ️ Improve my(event): check origin, then id, otherwise false. 2018-03-14 14:00:10 -07:00
Jason Volk 44caf92dd7 ircd:Ⓜ️🆔 Minor cleanup. 2018-03-13 23:33:37 -07:00
Jason Volk 0ffa3b6257 ircd::server: Condition before killing link on open error. 2018-03-13 22:44:13 -07:00
Jason Volk 23f294df86 ircd::db: Timers on has() and commit paths. 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 df3243e31d ircd::net: Eliminate the existing net::remote. 2018-03-13 22:44:13 -07:00
Jason Volk cadabb5521 ircd::net: Add suite to print a hostname and port or just hostname based on portnum canon. 2018-03-13 22:44:13 -07:00
Jason Volk 368b8c4516 ircd:Ⓜ️🆔 Implement MXID interface suite with grammars. 2018-03-13 22:44:13 -07:00
Jason Volk 7deebfd344 ircd:Ⓜ️🆔 Improve the validator error msg propagation; minor cleanup. 2018-03-13 22:44:13 -07:00
Jason Volk 0f5e84b2e0 ircd::rfc3986: Copy relevant grammar from m::id; TODO: share. 2018-03-13 22:44:13 -07:00
Jason Volk 83d5f494bc ircd:Ⓜ️🆔 Add RFC3986 grammar here for now. 2018-03-13 22:44:13 -07:00
Jason Volk 4aaeaff8fb ircd:Ⓜ️:vm: Add options for pre-checked event conformity or skip entirely. 2018-03-12 19:38:27 -07:00
Jason Volk 9749d7c609 ircd:Ⓜ️:vm: Add wrapping to accepted event notify; further merge EDU and PDU core path. 2018-03-12 19:27:53 -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 79f6974f86 ircd::net: Wait for destruction of all sockets on shutdown. 2018-03-12 18:50:36 -07:00
Jason Volk eaadc4b36d ircd::fs::aio: Synchronize interruption and shutdown. 2018-03-12 16:44:16 -07:00
Jason Volk 949a006950 ircd::net: Close socket before its dtor on accept except. 2018-03-12 15:56:30 -07:00
Jason Volk f7ecc4342b ircd::ctx: Avoid any alloc for current reassertion on spawn. 2018-03-12 15:44:55 -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 cabeb4c128 ircd::net::dns: Add send rate-limiting for resolver queries. 2018-03-12 12:20:22 -07:00
Jason Volk a00a71e34c ircd::openssl: Add stringify x509 to JSON. 2018-03-12 11:16:49 -07:00
Jason Volk ed0a62701d ircd::openssl: Utils dealing with ASN1/X509 time related. 2018-03-12 11:16:26 -07:00
Jason Volk 973f02360c ircd::openssl: X509_NAME iteration closure. 2018-03-12 11:14:11 -07:00
Jason Volk 78d5825315 ircd::json: Deeper copying on value copy ctor. 2018-03-12 11:14:11 -07:00
Jason Volk c2fbe50bce ircd:Ⓜ️ Add additional event conformity checks. 2018-03-12 09:55:45 -07:00