0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-07-11 04:58:40 +02:00
Commit graph

2365 commits

Author SHA1 Message Date
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 9833b50551 ircd:Ⓜ️:dbs: Add metadata block size conf items for various meta columns. 2018-10-16 15:53:47 -07:00
Jason Volk 468c7e6f07 ircd::db: Add metadata block size parameter to the descriptor. 2018-10-16 13:39:43 -07:00
Jason Volk a24270d2bb deps: RocksDB to v5.15.10. 2018-10-15 22:31:29 -07:00
Jason Volk ca11351692 ircd: Add assertion() overload taking message string. 2018-10-15 22:31:28 -07:00
Jason Volk f216f60583 ircd:Ⓜ️:vm: Add more options for fine-grained hook call control during eval. 2018-10-11 01:30:31 -07:00
Jason Volk 9aa6e2b768 ircd:Ⓜ️ Rename most vm.notify hooks to vm.effect; Refactor vm::accept related. 2018-10-09 20:56:12 -07:00
Jason Volk f369af944b ircd::ctx: Remove unused peek. 2018-10-06 22:16:37 -07:00
Jason Volk efd8a8c640 ircd::buffer: Make shared_buffer work. 2018-10-04 15:42:24 -07:00
Jason Volk 0e5f8141c3 ircd::net: Add more tls cert verification exceptions w/ conf. 2018-10-04 15:16:15 -07:00
Jason Volk 66ab3d85a5 ircd::net: Use ip to test ipport falsiness; typedef a resource record vector. 2018-10-03 14:17:27 -07:00
Jason Volk 95c6f69e5d ircd::net::dns: Add explicit qtype to opts and integrate w/ query stack. 2018-10-02 22:53:23 -07:00
Jason Volk 14a1be0aaf ircd::net: Add validations on hostport constructions. 2018-10-02 18:39:34 -07:00
Jason Volk 67a759ac21 ircd::rfc3986: Add validation suite for hostname strings related. 2018-10-02 18:11:50 -07:00
Jason Volk 1cf0b629cb ircd::spirit: Add a template for the common expectation failure rethrow integration. 2018-10-02 18:11:50 -07:00
Jason Volk b9aa697206 ircd::resource: Make Access-Control-Allow-Origin response header a conf item. 2018-10-02 15:58:03 -07:00
Jason Volk fdb3f9bc4a ircd::conf: Disambiguate string item access via cast conversion. 2018-10-02 15:58:03 -07:00
Jason Volk 450ec3523e modules/s_dns: Consolidate DNS related into units of a single module. 2018-10-01 13:56:00 -07:00
Jason Volk 5b7cf5a8eb ircd::net::dns: Reorg namespace structure related. 2018-10-01 12:03:31 -07:00
Jason Volk cbf96969db ircd::http: Support 524 "A Timeout Occurred" 2018-10-01 11:30:34 -07:00
Jason Volk 05cc6ddf83 ircd::net: Move resolver service out to modules/s_resolver. 2018-09-30 20:18:32 -07:00
Jason Volk b43b094f2c ircd::rfc1035: Add reverse qtype mapping. 2018-09-30 20:18:32 -07:00
Jason Volk 5a627efaad ircd::net::dns: Move cache related out to modules/s_dns. 2018-09-30 20:18:32 -07:00
Jason Volk da8beda0c3 ircd:Ⓜ️🆔 Support intuitive constructions of m::node::id. 2018-09-30 17:58:16 -07:00
Jason Volk 4f3f729d9b ircd:Ⓜ️🆔 Minor cleanup. 2018-09-30 17:37:24 -07:00
Jason Volk ccaaf22cac ircd::net::dns: Use conf item for resolver servers. 2018-09-29 19:56:22 -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 0c25852109 ircd::client: Simplify instance_multimap related; keep state for local/remote addrs in client. 2018-09-29 16:52:54 -07:00
Jason Volk a220891800 ircd::util: Support comparator in instance_multimap template. 2018-09-29 16:46:55 -07:00
Jason Volk 5f37100236 ircd::net: Add some specific comparators for ipport. 2018-09-29 16:46:02 -07:00
Jason Volk b4e4f0165f ircd::net: Deinline some ipport ctors. 2018-09-29 16:39:14 -07:00
Jason Volk 771ecaef7e ircd::client: Simplify log calls with single loghead() string. 2018-09-27 17:05:19 -07:00
Jason Volk 0d4013536a ircd::util: Add overload to ircd::string() to pubsetbuf() a provided buffer. 2018-09-27 17:00:15 -07:00
Jason Volk b93b4e31f6 ircd::client: Move dock into client namespace. 2018-09-27 16:36:50 -07:00
Jason Volk e542ef76fb ircd::db: Add per-cache statistics. 2018-09-26 18:00:18 -07:00
Jason Volk 45c215eb8d ircd::db: Comment to clarify txn iface. 2018-09-26 15:28:36 -07:00
Jason Volk 3421667a45 ircd::db: Interface to get cache pinned usage. 2018-09-26 02:34:47 -07:00
Jason Volk 65f52b0610 ircd::db: Remove the row pos seek. 2018-09-25 23:30:54 -07:00
Jason Volk 533d129322 ircd::db: Enable histogram interface; partial data tally. 2018-09-25 22:18:37 -07:00
Jason Volk e5a96aab93 ircd::db: Deinline stats ctor; zero-init histogram; implement Reset(). 2018-09-25 21:20:02 -07:00
Jason Volk c90b530656 ircd:Ⓜ️:feds: Add central interface linkage for feds head. 2018-09-25 17:14:48 -07:00
Jason Volk cf783d2729 ircd:Ⓜ️:room: Refactor out additional test protocol iterations; minor reorg. 2018-09-25 16:37:07 -07:00
Jason Volk 64ccbea79d ircd:Ⓜ️:room: Refactor out remaining "test protocol" iterations from state interface. 2018-09-25 16:02:19 -07:00
Jason Volk 4788ac4e86 ircd:Ⓜ️ Redeclare is_sigil() suite for clarity. 2018-09-25 15:26:38 -07:00
Jason Volk 580a041ab5 ircd: Improve human readable unit tool suite. 2018-09-24 23:56:29 -07:00
Jason Volk 4e3efb73d3 ircd::db: Use cfmd rather than live-files way to get column family metadata. 2018-09-24 23:10:27 -07:00
Jason Volk 2f3c461664 ircd::db: Place linkage for db comparators so they have one address. 2018-09-24 22:00:21 -07:00
Jason Volk e0bed2dc3e ircd::db: Add sst dump writer; move sst tool. 2018-09-22 15:04:38 -07:00
Jason Volk 99ff78f5c7 ircd::db: Create an sst utility space; move fileinfo into sst. 2018-09-22 13:28:44 -07:00
Jason Volk f7da7d9be8 ircd::db: Support SST dump tooling. 2018-09-21 17:33:34 -07:00
Jason Volk 7834c86360 ircd::db: Add support for direct SST file ingestion. 2018-09-21 15:08:57 -07:00
Jason Volk 452f9a9abb ircd:Ⓜ️ Reorg init/fini sequence. 2018-09-21 15:07:28 -07:00
Jason Volk ae36485d13 ircd::db: Add back the target level to range compact. 2018-09-20 23:30:51 -07:00
Jason Volk 4214977b78 ircd: Rename; use precision for pretty_iec(). 2018-09-20 23:30:50 -07:00
Jason Volk 5e158e37a5 ircd: Add pretty IEC unit printing utils. 2018-09-20 23:30:50 -07:00
Jason Volk 7676bd0944 ircd::db: Add a fileinfo wrapping interface. 2018-09-20 15:57:15 -07:00
Jason Volk f80aaa7904 ircd::db: Add util to get file list for specific column. 2018-09-20 15:56:46 -07:00
Jason Volk c1a2e44ce0 ircd::db: Mask interruption; noexcept in filter overrides. 2018-09-19 17:16:08 -07:00
Jason Volk 7427ec991c ircd::db: Add closure on manual compaction arguments. 2018-09-19 17:16:08 -07:00
Jason Volk 9afac08e40 ircd::db: Simplify compaction callback argument requirements w/ struct. 2018-09-19 17:16:07 -07:00
Jason Volk 1faa7e5fdd ircd::db: Update and add various README's. 2018-09-19 16:11:21 -07:00
Jason Volk 53651ad808 ircd::db: Move database::descriptor out to db::descriptor. 2018-09-19 15:38:37 -07:00
Jason Volk d13ed5854b ircd::ctx::queue: Remove exception assertion on pops. 2018-09-19 01:44:13 -07:00
Jason Volk 592ad284f9 ircd::ctx::queue: Simplify pops; universal push. 2018-09-18 23:53:44 -07:00
Jason Volk d2fbc30d4e ircd::ctx: Use better notify member here. 2018-09-18 21:41:21 -07:00
Jason Volk be7a20d39a ircd::ctx: Move any renotifying to the ctx::dock itself. 2018-09-18 21:35:27 -07:00
Jason Volk 3b960d2576 ircd: Add misc assertions. 2018-09-18 21:24:19 -07:00
Jason Volk b979426f7a ircd::db: Update event-listener related. 2018-09-18 18:37:46 -07:00
Jason Volk 5698637dd6 ircd::ctx::pool: Use ctx::queue for pool's queue. 2018-09-18 16:45:04 -07:00
Jason Volk a66c312c92 ircd::ctx::queue: Renotify the dock on context interruption, then propagate. 2018-09-18 16:43:50 -07:00
Jason Volk fc09ba81af ircd::db: Add compaction callback interface. 2018-09-18 15:07:09 -07:00
Jason Volk 75ea43885b ircd:Ⓜ️:dbs: Add conf items for column block sizes. 2018-09-17 23:42:25 -07:00
Jason Volk 176e70d2c7 ircd::db: Add table block_size setting to column descriptor. 2018-09-17 21:26:55 -07:00
Jason Volk 0ed617c889 ircd:Ⓜ️🪝 Add option for propagating exceptions. 2018-09-17 20:45:05 -07:00
Jason Volk 38b3bf3abe include/Makefile: Add other flags vars. 2018-09-17 18:52:26 -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 fb6bb04207 ircd: Various fixes for resolution of constexpr string_view & hash related; cleanup. 2018-09-16 21:28:46 -07:00
Jason Volk f3539ddb37 ircd:Ⓜ️:room: Fix stale comment. 2018-09-16 21:28:45 -07:00
Jason Volk 3188b03943 ircd:Ⓜ️:typing: Add an iteration of typist state w/ console cmd. 2018-09-16 20:55:12 -07:00
Jason Volk 46cb5aee41 modules/m_typing: Move non-handler related from client/rooms/typing. 2018-09-16 20:55:12 -07:00
Jason Volk 5218cd681a ircd: Add missing minutes chrono import. 2018-09-16 18:19:23 -07:00
Jason Volk c06c119ef9 ircd:Ⓜ️:name: Minor; make types consistent; fix spacing. 2018-09-15 11:25:19 -07:00
Jason Volk d72713d91c ircd::util: Fix comment. 2018-09-15 10:15:02 -07:00
Jason Volk ba401ee815 ircd:Ⓜ️:dbs: Add conf items for all caches enable/disable. 2018-09-15 06:41:34 -07:00
Jason Volk e6a62b41b3 ircd::util: Start an env var convenience suite. 2018-09-15 03:27:26 -07:00
Jason Volk 71d772a80c ircd::conf: Enforce a max length on name strings. 2018-09-15 02:20:48 -07:00
Jason Volk 1711df33a9 ircd::conf: Use util::callbacks here. 2018-09-15 00:38:45 -07:00
Jason Volk 16bbecf649 ircd::util: Add a callbacks list util. 2018-09-15 00:35:57 -07:00
Jason Volk 9f35483e4e ircd: Include unistd.h in stdinc stack; remove the syscall() fwddecl. 2018-09-15 00:14:22 -07:00
Jason Volk 5b870f9437 ircd: Add ihas() case insensitive string searching. 2018-09-14 07:44:44 -07:00
Jason Volk 8900c7d95e Add datadir (share) configure, Makefile and ircd::fs related. 2018-09-13 22:02:52 -07:00
Jason Volk 9232319f0c modules/vm: Add eval argument to various hooks; tweak eval struct. 2018-09-13 19:49:25 -07:00
Jason Volk 71edf65c7c ircd:Ⓜ️:vm: Remove the depends aborted depends map fetus. 2018-09-13 19:49:25 -07:00
Jason Volk d97a5ac571 ircd:Ⓜ️:vm: Remove the vm::phase; create fetch_hook. 2018-09-13 18:30:40 -07:00
Jason Volk 11948e47ac ircd: Move m::import to mods::import where it is more appropriate. 2018-09-13 18:19:27 -07:00
Jason Volk 75a05d864c ircd::mods: Minor move import member defs outside of class def. 2018-09-13 18:19:27 -07:00
Jason Volk 08d9f2c606 ircd:Ⓜ️ Remove the room::state::tuple contraption. 2018-09-13 07:53:51 -07:00
Jason Volk 81d7ba8c39 ircd: Various string_view conversion fixes. 2018-09-13 06:47:52 -07:00
Jason Volk 0238364421 ircd::util: Fix template function reference. 2018-09-13 06:39:04 -07:00
Jason Volk 7d94b1c17b ircd: Relax noexcept in std::function template declarations. 2018-09-13 05:12:25 -07:00
Jason Volk 994916b7eb ircd::buffer: Deconflict buffers templates in separate namespace. 2018-09-13 05:12:10 -07:00
Jason Volk 09529ae311 ircd: Fix std::ios::openmode name. 2018-09-13 05:12:01 -07:00
Jason Volk e1b9d69c21 ircd::json: Fix exporting path operator<< to ircd:: in include stack here. 2018-09-13 05:02:24 -07:00
Jason Volk 5e06c4795b ircd: Replace any std::uncaught_exception() -> std::uncaught_exceptions(). 2018-09-13 05:02:24 -07:00
Jason Volk d3766ee0e5 ircd:Ⓜ️ Add room federate query w/ console indicator. 2018-09-12 23:31:32 -07:00
Jason Volk 2ae2bb0eef ircd:Ⓜ️ Add room version query w/ console cmd. 2018-09-12 23:26:15 -07:00
Jason Volk 5c879bd380 ircd:Ⓜ️🧾 Start central interface to get receipt information. 2018-09-12 22:32:00 -07:00
Jason Volk f4831c863a modules/m_room: Add interface to count events in a room between two arguments. 2018-09-12 22:32:00 -07:00
Jason Volk 632278e607 ircd:Ⓜ️:room: Finesse a messages::seek_idx() into the seek stack. 2018-09-07 06:19:21 -07:00
Jason Volk f7bb1f9360 ircd::info: Fix some informational timestamps. 2018-09-05 23:32:52 -07:00
Jason Volk 8593d09c80 ircd::json: Enforce string type for member key on constructions. 2018-09-05 23:23:26 -07:00
Jason Volk 85aef85f61 ircd:Ⓜ️:vm: Support client unsigned.transaction_id. 2018-09-05 20:16:01 -07:00
Jason Volk 6858ea2bb1 ircd:Ⓜ️:vm: Add commitopts (copts) to vm::accepted structure. 2018-09-05 19:43:09 -07:00
Jason Volk cffe958d2b ircd::json: Add splice operations over json::strung. 2018-09-05 19:37:59 -07:00
Jason Volk c189feb87b ircd::json: Assignment semantic for json::strung. 2018-09-05 19:37:59 -07:00
Jason Volk d3493e5901 ircd::json: Split strung into file. 2018-09-05 18:45:25 -07:00
Jason Volk 66edb4a7fb ircd::db: Add custom cache stats ticker. 2018-09-05 03:13:05 -07:00
Jason Volk 4067809a9a ircd:Ⓜ️:state: Add addl rep util; checkpoint remove stub. 2018-09-05 01:36:44 -07:00
Jason Volk 6dc3f4044a modules: Checkpoint vm_fetch fwiw (disabled from active eval codepaths). 2018-09-04 23:27:01 -07:00
Jason Volk 2140f42cd7 ircd::resource: Internalize the buffering boilerplate used with json::stack. 2018-09-04 22:03:12 -07:00
Jason Volk bb6ab49fe1 ircd::exception: Update comment. 2018-09-04 21:09:12 -07:00
Jason Volk aeb41e7341 ircd:Ⓜ️ Add pretty_msgline() suite. 2018-09-04 06:35:10 -07:00
Jason Volk 3426fc650f ircd::fs: Test if O_DIRECT possible on path target. 2018-09-04 01:43:21 -07:00
Jason Volk 1346fdd639 ircd: Fix bug. 2018-09-04 00:43:54 -07:00
Jason Volk 60a0694853 construct: Add program option to disable direct IO. 2018-09-03 07:59:05 -07:00
Jason Volk be84bf83de ircd::conf: Add item init callback. 2018-09-03 04:41:14 -07:00
Jason Volk 08a35bdc6a ircd::conf: Add reset() suite to rexecute item callbacks. 2018-09-02 21:16:49 -07:00
Jason Volk 6440ea3f11 ircd:Ⓜ️:dbs: Add conf items for events db column caches. 2018-09-02 21:16:49 -07:00
Jason Volk a5d014d10a ircd::db: Use our cache wrapping for block and compressed column caches. 2018-09-02 17:53:24 -07:00
Jason Volk 084d434c59 ircd::db: Add internal cache wrapper interface; add comment. 2018-09-02 17:53:24 -07:00
Jason Volk 26ed7c2770 ircd::client: Move client make_shared into ircd/client.cc due to SO issues. 2018-09-01 22:35:01 -07:00
Jason Volk 168b82a972 ircd::client: Improve the acceptance pattern; condition on conf limits. 2018-09-01 22:21:42 -07:00
Jason Volk 384f5917d0 ircd::net::listener: Add callback to proffer the connection before handshake. 2018-09-01 22:12:49 -07:00
Jason Volk e3262a7b31 ircd::client: Function to count clients connected from remote addr. 2018-09-01 21:19:15 -07:00
Jason Volk 1cedbd7b06 ircd::client: Convert client instance_list to instance_multimap. 2018-09-01 21:05:45 -07:00
Jason Volk 1154d15c5e ircd::util: Add instance_multimap. 2018-09-01 21:04:34 -07:00
Jason Volk 349edc2c97 ircd::util: Fix instance_list noexcept specification for move semantics. 2018-09-01 20:45:04 -07:00
Jason Volk b63c103bb7 ircd: Disable CBOR for now. 2018-09-01 16:57:56 -07:00
Jason Volk f7813f61a5 ircd::client: Rename the client request pool. 2018-09-01 15:08:48 -07:00
Jason Volk 91dff38a57 ircd:Ⓜ️ Add prefetch() to event::fetch interface. 2018-09-01 07:15:03 -07:00
Jason Volk 62426ab210 ircd::db: Add column prefetch. 2018-09-01 07:15:03 -07:00
Jason Volk ff7d2514a0 ircd::db: Remove the cache prefetch/fetch interface. 2018-09-01 07:15:03 -07:00
Jason Volk 13c9e5bf6f ircd::client: Add interface to respawn contexts after a terminate w/ console cmd. 2018-09-01 07:15:02 -07:00
Jason Volk 5f9c12bddc ircd::ctx: Break down when() templates; fix mutability. 2018-08-30 21:20:43 -07:00
Jason Volk 4b2ff18f6c ircd::ctx: Add ADL'ed state() convenience for promise template. 2018-08-30 19:53:16 -07:00
Jason Volk 60b3cd828e ircd::net: Add listener::name() interface method. 2018-08-30 19:15:28 -07:00
Jason Volk e5f94ed704 ircd::http: Simplify interface; DRY. 2018-08-30 19:00:07 -07:00
Jason Volk a4bb471cf7 ircd::openssl/ircd::net: Add presupplied rfc3526 DH parameters. 2018-08-29 16:16:55 -07:00
Jason Volk fcb5965e45 ircd::net: Save listener opts and add accessor. 2018-08-29 15:52:37 -07:00
Jason Volk 5dd9b7a3cf ircd::fs: Support for finding the O_DIRECT alignments from system. 2018-08-28 20:15:40 -07:00
Jason Volk 0f2dd85a47 ircd::ctx: Disable interrupt for the view producer sequence. 2018-08-28 18:58:09 -07:00
Jason Volk 76e48b3ef3 ircd::ctx: Test for valid then() before calling from here. 2018-08-28 18:58:09 -07:00
Jason Volk 3833aa70cb ircd::db: Additional trivial vtable placements. 2018-08-28 15:44:03 -07:00
Jason Volk a4e4424ede ircd: Improve main control flow for termination condition during init. 2018-08-28 15:04:23 -07:00
Jason Volk 0787b5ff71 ircd::openssl: Add dhparam generator suite. 2018-08-28 13:01:10 -07:00
Jason Volk edbc0984c5 ircd::ctx: Linkage for default and move semantics of ctx::context. 2018-08-26 20:46:59 -07:00
Jason Volk 0eaa2fe211 ircd::ctx: Add motivation section to README. 2018-08-26 20:46:59 -07:00
Jason Volk 04175d62b2 ircd::ctx: Object semantics on unlock_guard<>. 2018-08-26 20:46:59 -07:00
Jason Volk 600a73d566 ircd::ctx: Add an upgrade_lock<> template. 2018-08-26 20:46:59 -07:00
Jason Volk 3a8f3c58de ircd::ctx: Add some indicators on shared_mutex. 2018-08-26 18:01:12 -07:00
Jason Volk 26d062e3f7 ircd::ctx: Fix erroneous have-include guard here. 2018-08-26 17:19:53 -07:00
Jason Volk 48a436fcc1 ircd:Ⓜ️:event: Addl prev utils; simplify before(). 2018-08-26 07:13:47 -07:00
Jason Volk 02d1cd1115 ircd:Ⓜ️ Add central linkage for m::feds::state. 2018-08-26 07:13:47 -07:00
Jason Volk 0a9fdda893 ircd::allocator: Add state::available(n) query. 2018-08-25 18:46:54 -07:00
Jason Volk 74bb040b8c ircd::resource: Make response head buffer size a named const; fix comment. 2018-08-25 13:58:49 -07:00
Jason Volk 6fc078395b ircd::fs: Fix formatting. 2018-08-24 15:44:00 -07:00
Jason Volk 170475f374 ircd:Ⓜ️ Add user::events iterator w/ console cmd. 2018-08-24 14:01:32 -07:00
Jason Volk bf234c77a4 ircd:Ⓜ️:user: Ensure bools are returned from iteration closures here. 2018-08-24 13:55:33 -07:00
Jason Volk 0f79ad7b08 ircd:Ⓜ️:room: Officiate random_origin w/ central linkage; use view closure. 2018-08-24 04:19:55 -07:00
Jason Volk 1450678b83 ircd::db: Plug remaining filesystem operations into ircd::fs / AIO. 2018-08-24 00:40:35 -07:00
Jason Volk e0024b82ea ircd::fs: Use fallocate() rather than posix_fallocate(); add keep_size. 2018-08-23 23:08:41 -07:00
Jason Volk 79d4c15ff5 ircd::fs: Deinline and improve append() related. 2018-08-23 23:08:22 -07:00
Jason Volk 55b2b128c6 ircd::fs: Add an fallocate wrapper for now. 2018-08-23 21:24:35 -07:00
Jason Volk 0ce45b50d6 ircd::fs: Add truncate() suite. 2018-08-23 21:24:19 -07:00
Jason Volk 888862ec56 ircd::fs: Deinline and improve overwrite() suite. 2018-08-23 21:23:42 -07:00
Jason Volk 1a1002c96d ircd::fs: Propagate error_code through exception system; improve stack. 2018-08-23 03:31:36 -07:00
Jason Volk ed6dc56d35 ircd: Add make_error_code(std::system_error) for completeness. 2018-08-23 03:23:59 -07:00
Jason Volk 5239e49f4f ircd::db: Improve opts related for random_access_file; minor cleanup. 2018-08-23 01:54:58 -07:00
Jason Volk 7698759d04 ircd::db: Integrate env::sequential_file with AIO. 2018-08-23 01:54:18 -07:00
Jason Volk 1748ff843b ircd::info: Sample system page size from sysconf(). 2018-08-23 01:09:11 -07:00
Jason Volk cbd149b650 ircd:Ⓜ️:room::origins: Add a bool for_each() to eventually replace test(). 2018-08-22 17:42:35 -07:00
Jason Volk 5ba5cea109 ircd::rand: Add note to rand::integer(). 2018-08-22 17:19:18 -07:00
Jason Volk 6cdb1bba63 ircd::ctx: Add pool::set convenience. 2018-08-22 14:37:40 -07:00
Jason Volk ea172a3378 ircd::conf: Add set callback notification. 2018-08-22 14:02:09 -07:00
Jason Volk 63aa8e310e ircd::conf: Restructure virtuals to direct all entry through parent. 2018-08-22 13:57:03 -07:00
Jason Volk 3a4817354e ircd:Ⓜ️ Add room state types iteration. 2018-08-21 08:37:44 -07:00
Jason Volk 6d3eb3ae85 fixup! ircd::db: Fix cache iteration interpretation. 2018-08-21 00:42:13 -07:00
Jason Volk 0f021e09d4 ircd::db: Fix cache iteration interpretation. 2018-08-21 00:20:30 -07:00
Jason Volk 32285d5dac ircd::fs: Add a uuid-ish util for an fd. 2018-08-20 22:44:39 -07:00
Jason Volk ff66bc441c ircd::ctx: Stack uninterruptible's gracefully; assume context. 2018-08-19 20:11:41 -07:00
Jason Volk ee9343a68f ircd::client: Improve main exception propagation for termination/shutdown related. 2018-08-19 18:15:33 -07:00
Jason Volk f4a4674daa ircd::ctx::pool: Add a terminate(); cleanup del(). 2018-08-19 15:55:35 -07:00
Jason Volk 32c0d08928 ircd::ctx: Minor cleanup. 2018-08-19 15:53:10 -07:00
Jason Volk adee757303 ircd::fs: Add fsync()/fdsync() w/ AIO. 2018-08-18 23:02:34 -07:00
Jason Volk 9165c71afd ircd::db: Concurrent row seek. 2018-08-18 20:59:28 -07:00
Jason Volk 89e920fdd4 ircd::db: Add column cache check util. 2018-08-18 20:40:23 -07:00
Jason Volk 0a822212e1 ircd::ctx: Add latch (concurrency TS). 2018-08-18 19:29:00 -07:00
Jason Volk 1b7e3af966 ircd::db: Simplify internal seek stack; minor cleanup. 2018-08-18 18:41:22 -07:00
Jason Volk 8537cca439 ircd::db: Improvements to cache interface. 2018-08-18 17:59:31 -07:00
Jason Volk a7f43fe48d ircd::buffer: Support release() for unique_buffer. 2018-08-18 17:43:59 -07:00
Jason Volk 6f75a1c8f8 ircd::buffer: Add copy-from-buffer ctor to unique_buffer. 2018-08-18 17:42:02 -07:00
Jason Volk a33b4b05de ircd::ctx: Proper condition variable exclusion semantics. 2018-08-17 13:30:04 -07:00
Jason Volk 5326f434d9 ircd::db: No need to start pools with more than 0 ctxs. 2018-08-17 12:51:50 -07:00
Jason Volk af2418b1f5 ircd::mods: Minor cleanup. 2018-08-17 12:51:49 -07:00
Jason Volk 61fade178e ircd::m/modules/key: Various reorg / modularization. 2018-08-17 12:51:49 -07:00
Jason Volk d7075d73e5 ircd::fs: Additional make_path() overload. 2018-08-17 12:51:49 -07:00
Jason Volk 31ff4f68cb ircd::db: Plug env::random_access_file into AIO. 2018-08-17 12:51:48 -07:00
Jason Volk 6db0659c06 ircd::db: Enable port; minimal context pool state. 2018-08-17 12:51:48 -07:00
Jason Volk 570f715c87 ircd::net: Improve listener to-string related. 2018-08-17 12:51:48 -07:00
Jason Volk 4199d5026c ircd: Factor out the ircd::BUFSIZE; remove stale ircd::config extern. 2018-08-17 12:51:48 -07:00
Jason Volk 3ed2a32555 ircd::util: Add README blerb to directory. 2018-08-17 12:51:48 -07:00
Jason Volk 8603ccf16b ircd:Ⓜ️ Extend import check-and-reload to reference operator related. 2018-08-15 23:13:25 -07:00
Jason Volk fd36e553d5 ircd::util: Add suite to util::params for fetch-by-name. 2018-08-15 23:00:42 -07:00
Jason Volk 69e1c3478f ircd::util: Add index() util. 2018-08-15 23:00:42 -07:00
Jason Volk 83cbfea75d ircd::ctx: Minor cleanup. 2018-08-15 08:21:03 -07:00
Jason Volk c442954e12 ircd:Ⓜ️ Various init reorg related. 2018-08-14 16:47:42 -07:00
Jason Volk 19b4e58944 ircd:Ⓜ️ Rename modules map to imports. 2018-08-14 15:51:57 -07:00
Jason Volk c00d27d7ea ircd::conf: Simplify conf related; add \brief blerb. 2018-08-13 14:51:06 -07:00
Jason Volk d1944c6006 construct/ircd: Use hostname-based init from command line params. 2018-08-13 14:36:50 -07:00
Jason Volk 951cd4ad63 ircd::fs: Update/fix syspaths related. 2018-08-12 16:46:52 -07:00
Jason Volk 8fb580aaf5 configure/ircd: Overhaul install system directory related. 2018-08-12 16:30:51 -07:00
Jason Volk e388d28585 configure: Add exemplary app-specific withval for maximum length of mxid. 2018-08-12 10:16:00 -07:00
Jason Volk de2de7a5bf ircd::magic: Minor cleanup. 2018-08-11 00:42:08 -07:00
Jason Volk 1d11659c43 ircd::js: Remove xdr. 2018-08-11 00:42:08 -07:00
Jason Volk 9aedac4461 ircd: Move preliminary cbor into directory. 2018-08-11 00:42:08 -07:00
Jason Volk e5834065ed ircd::net: Unionize datagram for bidirections. 2018-07-07 22:10:29 -07:00
Jason Volk fe0bd19763 ircd::net: Add udp listener. 2018-07-07 21:33:23 -07:00
Jason Volk 8abfe6adf5 ircd::net: Inherit from closer net::error for listener::error. 2018-07-07 19:44:45 -07:00
Jason Volk ed0e25406c ircd::server: Clarify comment. 2018-07-06 19:29:49 -07:00
Jason Volk 02fcdc8635 ircd::net::listener: Add callback-action for proper abstraction. 2018-07-06 18:38:08 -07:00
Jason Volk a98bd357df construct/ircd: Add -pitrecdb option to allow point-in-time recovery. 2018-07-06 17:09:33 -07:00
Jason Volk 668d12bf72 ircd::ctx: Fix future_state test grate. 2018-07-06 16:33:53 -07:00
Jason Volk e2edd13a33 ircd: Remove ircd::strand related. 2018-07-06 00:44:24 -07:00
Jason Volk da5d767431 ircd::ctx: Fix pointer punning in promise / shared_state. 2018-07-06 00:26:34 -07:00
Jason Volk 8fcd6379a4 construct/ircd: Add -nojs option to not init js engine. 2018-07-05 16:57:47 -07:00
Jason Volk 96da6a3486 ircd::buffer: Export begin()/end() ADL's down to ircd::. 2018-07-04 21:48:15 -07:00
Jason Volk b80468d6c8 ircd::js: Checkpoint corrections to XDR layout. 2018-07-04 21:44:45 -07:00
Jason Volk da04032cc4 ircd::js: Checkpoint corrections to XDR; esr52. 2018-07-03 18:50:05 -07:00
Jason Volk 9a579c8dcb ircd::js: Support JS::SetBuildIdOp context callback. 2018-07-03 16:49:08 -07:00
Jason Volk ae5678269c ircd::js: Fixes for js bitrot / maintenance cleanup. 2018-07-03 15:44:44 -07:00
Jason Volk b6f7a64c4c ircd::cbor: checkpoint; item header size and value counter gauge. 2018-07-02 01:31:59 -07:00
Jason Volk 5e8c1ad52d ircd::buffer: Add const_buffer::insert() for boost::spirit compliance (noop). 2018-07-01 19:51:37 -07:00
Jason Volk ac4ed03142 ircd::buffer: Add buffer_base::empty() for boost::spirit conceptual compliance. 2018-07-01 19:20:00 -07:00
Jason Volk a96f2ae030 ircd::spirit: Import locals into namespace; minor cleanup. 2018-07-01 19:11:13 -07:00
Jason Volk 7624e36c7c ircd::spirit: Import binary parsers into spirit convenience namespace. 2018-07-01 18:42:56 -07:00
Jason Volk d1c1fb931f ircd::util: Add specific endian bswaps e.g arpa/inet.h; minor cleanup. 2018-07-01 16:39:43 -07:00
Jason Volk 67bcbf628c ircd::mods: Replace allocated string metadata with string_view based on common usage. 2018-07-01 14:42:28 -07:00
Jason Volk a3db6f2a95 ircd: Replace iostream include with iosfwd to elide inits in every unit. 2018-07-01 14:29:52 -07:00
Jason Volk 01d9ce038c ircd: Preliminary CBOR namespace and unit. 2018-07-01 02:09:35 -07:00
Jason Volk 08d45dc838 ircd:Ⓜ️ Generalize room::lonly into more efficient room::origins::only(origin). 2018-06-30 21:57:09 -07:00
Jason Volk 85d1c924a5 ircd:Ⓜ️ Add function to query if room only has our origin joined. 2018-06-30 18:49:03 -07:00
Jason Volk 7d4eb46a1a ircd:Ⓜ️ Interface/linkage to generate room account_data type string. 2018-06-19 21:47:26 -06:00
Jason Volk f8763af509 ircd:Ⓜ️ Add user interface w/ linkage for room account data. 2018-06-19 21:33:03 -06:00
Jason Volk 4b5545f844 ircd: Make some fundamental string_view ADL's constexpr. 2018-06-19 21:30:29 -06:00
Jason Volk c136e82a57 ircd:Ⓜ️ Temporary fixes for stale static initializations. 2018-06-16 23:00:47 -06:00
Jason Volk 13bee93ddc ircd: Split standard includes back into an stdinc.h. 2018-06-15 16:19:29 -06:00
Jason Volk 9601dac9cc ircd: Consolidate stdinc.h and ircd.h and fix precompiled headers. 2018-06-15 16:13:18 -06:00
Jason Volk 0d688b386b ircd::json: Perform unquote() in json::string ctor as described... 2018-06-12 01:00:15 -07:00
Jason Volk 912562f469 ircd:Ⓜ️:vm: Checkpoint phase-as-class skeleton. 2018-06-12 01:00:14 -07:00
Jason Volk 0da4dec13c ircd:Ⓜ️:event: Add topological before; improve prev iteration closure; reorg some util. 2018-06-09 14:37:31 -07:00
Jason Volk 3da5afdb85 ircd::allocator: Additional doc comment on profiler. 2018-06-09 14:37:31 -07:00
Jason Volk acddfa77f8 ircd::allocator: Add mallinfo to string support w/ console command. 2018-06-09 14:37:31 -07:00
Jason Volk feb1aa5d2f ircd::info: Add glibc related to info. 2018-06-09 13:42:35 -07:00
Jason Volk 960553f279 ircd::db: Checkpoint skeleton state structure for env. 2018-06-09 13:40:21 -07:00
Jason Volk a077766812 ircd:Ⓜ️ Update README. 2018-06-09 13:37:04 -07:00
Jason Volk 55a8391e48 ircd::allocator: Add trim() if available. 2018-06-09 13:34:01 -07:00
Jason Volk 5146ddf67e ircd::json: Reduce iov interface; make conditional nodes evaluate conditionally. 2018-06-05 11:16:52 -07:00
Jason Volk f1443752c5 ircd::iov: Make node emplacement conditional. 2018-06-05 10:34:30 -07:00
Jason Volk 1a12b7331d ircd::json: Add conditioned-closure iov::add_if. 2018-06-04 23:17:29 -07:00
Jason Volk f2acc304c5 ircd:Ⓜ️:room: Add power levels convenience interface (query side). 2018-06-04 14:23:39 -07:00
Jason Volk 2d7b011bba ircd:Ⓜ️:v1: Add frontfill request. 2018-06-03 19:17:03 -07:00
Jason Volk eec696524a ircd:Ⓜ️:vm: Reduce the default db::txn reserve overhead value. 2018-06-03 15:20:59 -07:00
Jason Volk 9ec73c3dfb ircd::mods: Add non-const function call templates. 2018-06-03 10:20:54 -07:00
Jason Volk c58e60c122 modules/vm: Move vm::log out of module back to libircd. 2018-06-03 09:58:45 -07:00
Jason Volk 57bfe311c6 ircd::fs: Add experimental stdin::tty support. 2018-06-03 09:49:00 -07:00
Jason Volk 79b2bdfb42 ircd::fs: Add prefetch(). 2018-06-02 11:44:53 -07:00
Jason Volk 76c716f0e9 ircd:📅 Use the standard snprintf() here. 2018-06-01 14:24:45 -07:00
Jason Volk 7e25d99cc6 ircd::db: Convert rocksdb::port from pthread to ircd::ctx. 2018-06-01 12:36:46 -07:00
Jason Volk b8aba99ed4 ircd::ctx: Assert release sequence is happening on ctx. 2018-06-01 12:36:46 -07:00
Jason Volk f61d0a30ec ircd::ctx: Add condition_variable for interface compat. 2018-06-01 12:36:46 -07:00
Jason Volk 2404e1adad ircd::ctx: Add mutex::locked() to query if locked. 2018-06-01 07:48:23 -07:00
Jason Volk abe921c3ad ircd::net: Add conf item for default close opts. 2018-06-01 04:08:20 -07:00
Jason Volk 8c5b47950f ircd::net: Add conf items for default open_opts. 2018-06-01 04:05:19 -07:00
Jason Volk 7461de8b3d ircd::db: Condition to check database from ircd::checkdb via -checkdb command line option. 2018-05-31 12:47:37 -07:00
Jason Volk cfa06c7d71 fixup! ircd:Ⓜ️ Rework visibility interface for empty mxid's as part of a public test. 2018-05-31 05:45:08 -07:00
Jason Volk 6671122997 ircd:Ⓜ️ Rework visibility interface for empty mxid's as part of a public test. 2018-05-31 04:25:04 -07:00
Jason Volk c8695b5b83 ircd::parse: Add deprecation notice to this subsystem. 2018-05-30 09:09:48 -07:00
Jason Volk 7825114281 ircd::fmt: Internalize specifier related; various cleanup. 2018-05-30 09:05:15 -07:00
Jason Volk f8e4f4675f ircd::fs: Doc comments for fd::opts. 2018-05-30 04:59:05 -07:00
Jason Volk 45155d5e4d ircd::fs: Add fd::opts nocreate open() option. 2018-05-30 04:59:05 -07:00
Jason Volk 8395a7844c ircd::fs: Add fd::opts direct and cloexec flags; reorg fd ctor related. 2018-05-30 04:59:05 -07:00
Jason Volk f8ea91cdee ircd::fs: Add append(fd) with explicit lseek(SEEK_END). 2018-05-30 04:59:04 -07:00
Jason Volk ead2a567ad ircd::fs: Refactor fs::write stack for fs::fd. 2018-05-30 04:59:04 -07:00
Jason Volk 501e82e8aa ircd::fs: Refactor fs::read stack for fs::fd. 2018-05-30 04:59:04 -07:00
Jason Volk a9e73d898c ircd::fs: Add size(fd) from sys stat(). 2018-05-30 04:59:04 -07:00
Jason Volk 955d8921b9 ircd::fs: Add basic fd wrapper object. 2018-05-30 04:59:04 -07:00
Jason Volk 73fc596cb6 ircd::db: Add experimental port linktime override suite. 2018-05-30 04:59:04 -07:00
Jason Volk b13193611d ircd::server: Rename peer::interrupt() to peer::cancel(). 2018-05-29 11:53:37 -07:00
Jason Volk 702c290d10 ircd::buffer: Minor cleanup/simplify. 2018-05-29 09:33:07 -07:00
Jason Volk de8e7b5908 ircd:Ⓜ️:vm: Move eval entry related into modules/vm; convert phase to struct. 2018-05-29 04:05:50 -07:00