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

4428 commits

Author SHA1 Message Date
Jason Volk
f298e95373 modules: Split out client/user related interface impls. 2019-08-25 19:44:00 -07:00
Jason Volk
8a860b61ce modules: Split m::leave(room) impl from client/rooms. 2019-08-25 19:44:00 -07:00
Jason Volk
22d5b3350a modules: Split m::join impl out of client/rooms. 2019-08-25 19:43:57 -07:00
Jason Volk
e4cdc34bba ircd:Ⓜ️🪝 Fix missing bypass. 2019-08-25 16:35:35 -07:00
Jason Volk
42b689a7a0 ircd:Ⓜ️:room::power: Document with some usage details. 2019-08-25 15:22:43 -07:00
Jason Volk
4bf39ee1f2 modules: Start an m.room.name module w/ length check conforms hook. 2019-08-25 14:28:20 -07:00
Jason Volk
bbaec98d68 ircd:Ⓜ️:event: Use better fault code for conforms hook failure. 2019-08-25 14:28:20 -07:00
Jason Volk
9b26a9789e ircd:Ⓜ️:room::state: Courtesy yield after iteration. 2019-08-24 19:45:26 -07:00
Jason Volk
4013c4cb23 ircd::db: Add preliminary prefetch unit.
ircd::db::prefetcher: Add timestamp to request in debugmode.
2019-08-24 19:19:34 -07:00
Jason Volk
a43804b88c ircd:Ⓜ️ Downgrade critical log msg. 2019-08-23 17:59:45 -07:00
Jason Volk
324db44678 ircd:Ⓜ️:event: Move TLS buf to stack. 2019-08-23 17:28:58 -07:00
Jason Volk
c7b828c60e ircd::util: Use long literals. 2019-08-23 16:09:52 -07:00
Jason Volk
a2541e3627 ircd::util: Limit iteration. 2019-08-23 16:09:52 -07:00
Jason Volk
b0f1487a22 ircd::allocator: Set narenas=1 for je. 2019-08-22 08:49:16 -07:00
Jason Volk
8ad0d46cff ircd:Ⓜ️:room::state: Move rebuild iterations out from interface. 2019-08-22 08:02:17 -07:00
Jason Volk
5a22fa7370 ircd:Ⓜ️:room::auth: Propagate interruption. 2019-08-22 07:03:59 -07:00
Jason Volk
7bd716a103 ircd:Ⓜ️:room::auth: Improve conditions to conduct check. 2019-08-22 06:02:02 -07:00
Jason Volk
652ffa8ea2 ircd:Ⓜ️:room::state: Improve coarse rebuild interface. 2019-08-22 06:02:02 -07:00
Jason Volk
118efe5cc7 ircd:Ⓜ️:room::state: Remove cruft. 2019-08-22 02:38:29 -07:00
Jason Volk
a119e6a3ef ircd:Ⓜ️:room::state::space: Exclude reference event from results. 2019-08-21 02:28:21 -07:00
Jason Volk
7e8d8666ff ircd:Ⓜ️:room::state: Add additional event::idx based tools. 2019-08-20 21:36:36 -07:00
Jason Volk
87a35a5a41 ircd: Add ago() convenience to timedate suite. 2019-08-20 21:23:18 -07:00
Jason Volk
27d394ebfa ircd::util: Simplify tool. 2019-08-20 21:23:18 -07:00
Jason Volk
ac03c9a13b ircd: Use bool return values through prefetching stack. 2019-08-19 21:18:26 -07:00
Jason Volk
7c6a0be4b5 ircd:Ⓜ️:room: Remove cruft. 2019-08-19 20:58:14 -07:00
Jason Volk
6ccbede478 ircd::fs::aio: Use ctx::dock for waiter; minor reorg. 2019-08-19 20:24:05 -07:00
Jason Volk
25f5f28102 ircd::fs::aio: Improve conf item documentation. 2019-08-19 20:11:59 -07:00
Jason Volk
e58434705e ircd:Ⓜ️:dbs: Augment event_sender with a second key domain. 2019-08-19 18:40:12 -07:00
Jason Volk
0c317bdf9d ircd:Ⓜ️:room::state::space: Add nullary count() to interface. 2019-08-18 08:33:00 -07:00
Jason Volk
e38371d50c ircd:Ⓜ️:room: Add basic count() suite. 2019-08-18 08:20:11 -07:00
Jason Volk
abca51deea ircd:Ⓜ️:room::power: Add cheap composer for augmented default power_levels content. 2019-08-18 06:38:10 -07:00
Jason Volk
f0e817b8f2 ircd::client: Skip attempt at response when socket d/c'ed on exception. 2019-08-18 05:29:18 -07:00
Jason Volk
6e49f8ae6b ircd:Ⓜ️:room::state::space: Cleanup/simplify w/ structured bindings. 2019-08-18 04:57:18 -07:00
Jason Volk
48ee5e01d5 ircd:Ⓜ️:room::state::space: Fix key construction for wildcard ranges. 2019-08-18 04:57:18 -07:00
Jason Volk
100aefc605 ircd:Ⓜ️ Reorder module loading and unloading. (#109) 2019-08-18 04:13:12 -07:00
Jason Volk
8454ae0275 ircd:Ⓜ️:room::head: Simplify interface; move to module. 2019-08-18 03:09:34 -07:00
Jason Volk
59618c6a44 ircd:Ⓜ️ Move event::auth to room::auth; move to module. 2019-08-18 03:09:34 -07:00
Jason Volk
e3ced849ee ircd:Ⓜ️:room: Remove old cruft. 2019-08-18 00:32:01 -07:00
Jason Volk
59a6d4f6b5 modules: Stub modules in place for m_event/m_room; reorder load list. 2019-08-18 00:32:00 -07:00
Jason Volk
272e28aebe ircd:Ⓜ️:event::auth: Fetch join_rules on membership=invite. 2019-08-17 13:56:02 -07:00
Jason Volk
7218a5db36 ircd:Ⓜ️:event::auth: Fix missing state_key param to power check. 2019-08-17 12:24:41 -07:00
Jason Volk
a9538fb4e0 ircd:Ⓜ️:event::auth: Augment missing auth events; check twice; etc. 2019-08-17 11:50:08 -07:00
Jason Volk
7cc37e517a ircd:Ⓜ️ Fix exception propagation from internal(room) check. 2019-08-17 08:30:58 -07:00
Jason Volk
62d7c94cfe ircd::mods: Fix init function being called without recursive loading awareness. (#109) 2019-08-17 04:52:09 -07:00
Jason Volk
f7796b6c3e ircd:Ⓜ️:presence: Set the currently_active flag in convenience composer. 2019-08-17 02:59:13 -07:00
Jason Volk
1541b2d52e ircd:Ⓜ️:user: Move rooms::origins to user::servers interface. 2019-08-17 02:59:13 -07:00
Jason Volk
5c219c67da ircd:Ⓜ️:vm: Add conform check bypass for origin. 2019-08-17 02:59:13 -07:00
Jason Volk
3a0bfc8db9 ircd:Ⓜ️:user::room: Add a one-liner is(user_room) test. 2019-08-16 23:54:04 -07:00
Jason Volk
5f4b6d5f1a ircd:Ⓜ️:user::filter: Move remaining to module. 2019-08-16 22:18:30 -07:00
Jason Volk
100f5c646a ircd:Ⓜ️:sync: Fix phased polylog invocation conditions; eliminate initial flag. (#105) 2019-08-16 04:50:39 -07:00
Jason Volk
fc742ae2d0 ircd: Fix warning/error.
ircd: Minor cleanup.
2019-08-16 03:32:13 -07:00
Jason Volk
125ff95875 ircd:Ⓜ️:room::state: Simplify util interface arguments. 2019-08-16 02:25:50 -07:00
Jason Volk
6e8111f25f ircd:Ⓜ️:dbs: Assert room_id in room_state_key creations.
ircd:Ⓜ️:room::messages: Assert room_id in ctor.
2019-08-16 02:19:49 -07:00
Jason Volk
d17286515b ircd:Ⓜ️:room::state: Simplify/consolidate iteration interface. 2019-08-16 02:19:49 -07:00
Jason Volk
2532f7f5e2 ircd::fs::aio: Add submit_coalesce conf item. 2019-08-16 02:19:49 -07:00
Jason Volk
97b613bb82 ircd::fs: Minor cleanup/simplify. 2019-08-16 02:19:49 -07:00
Jason Volk
49e1fd1eea ircd:Ⓜ️ Move user::mitsein to module. (#109) 2019-08-16 02:19:49 -07:00
Jason Volk
76de6b4ac2 ircd:Ⓜ️:create: Cleanup/Comments for m.room.create/room create related. 2019-08-16 02:19:49 -07:00
Jason Volk
65e79a584a ircd:Ⓜ️ Improve room_version event_id related conditions. 2019-08-16 02:19:48 -07:00
Jason Volk
aaa015c6b8 ircd:Ⓜ️:name: Add room_version as a property name. 2019-08-16 02:19:48 -07:00
Jason Volk
221a6339fb ircd:Ⓜ️:dbs: Mark all transactors which are not atomic. [ci skip] 2019-08-16 02:19:48 -07:00
Jason Volk
7fb0958080 ircd::json::tuple: Split additional non-member templates into header; constexpr member get()/at(). 2019-08-15 00:05:48 -07:00
Jason Volk
d1d46051a9 ircd:Ⓜ️:event: Remove switch statement in check_id(). 2019-08-14 03:00:15 -07:00
Jason Volk
de730e33b1 ircd:Ⓜ️ Report a critical log on exception here. 2019-08-14 02:41:30 -07:00
Jason Volk
3d808022ed ircd:Ⓜ️:feds: Rename interface function. 2019-08-14 01:26:02 -07:00
Jason Volk
fca330e1c1 ircd:Ⓜ️:room: Reorg / slim the class member function interface.
ircd:Ⓜ️:room: Rename interface function.
2019-08-14 01:09:34 -07:00
Jason Volk
c95d1e56ee ircd:Ⓜ️:init: Add preliminary worker context loop for backfill unit. (#78) 2019-08-13 23:39:05 -07:00
Jason Volk
13eae71f87 ircd:Ⓜ️ Load conf before net_dns. (#109) 2019-08-13 22:27:22 -07:00
Jason Volk
1379350a72 ircd::log: Show different epoch counters for ctx and ios. 2019-08-13 21:18:55 -07:00
Jason Volk
765ec46b91 ircd::ctx::promise: Inline trivial accessors; explicit bool operator. 2019-08-13 20:53:02 -07:00
Jason Volk
42b65fa271 ircd::ctx: Add noexcept specifications; tweak inlines. 2019-08-13 20:26:08 -07:00
Jason Volk
8cd65bd3c9 ircd:Ⓜ️:room: Consider an empty set a positive lonly() result. 2019-08-13 05:35:42 -07:00
Jason Volk
1bea1d2265 ircd:Ⓜ️:room::origins: Add empty(). 2019-08-13 05:35:42 -07:00
Jason Volk
6333c94fe0 ircd::info: Attempt to grab mlock rlimit; reorg log facilities and info dump. 2019-08-13 05:05:26 -07:00
Jason Volk
672ce5c3c6 ircd::log: Always allow the star facility. 2019-08-13 03:29:03 -07:00
Jason Volk
ea4d74967b ircd:Ⓜ️:events: Improve header comments.
ircd:Ⓜ️:dbs: Fix typos.
2019-08-13 01:22:13 -07:00
Jason Volk
84e79a64e6 ircd:Ⓜ️:rooms: Refactor interface; split rooms::summary; split module. 2019-08-12 23:55:07 -07:00
Jason Volk
f5b45f32d0 ircd::db: Fix comment/label. [skip ci] 2019-08-12 21:17:45 -07:00
Jason Volk
cd693500f9 ircd:Ⓜ️:event: Fix event::id to event::idx queries which throw from a nothrow overload. 2019-08-12 20:46:54 -07:00
Jason Volk
1744ee065b ircd:Ⓜ️:event: Add conditions to efficiently handle event::idx sentinel value. 2019-08-12 20:45:57 -07:00
Jason Volk
a18325db07 ircd:Ⓜ️:dbs: Fix out-of-order writes of m.room.redaction of state. 2019-08-12 01:39:16 -07:00
Jason Volk
3a420fb3b1 ircd:Ⓜ️:dbs: Downgrade various debug errors to warnings. 2019-08-12 01:39:16 -07:00
Jason Volk
f74ddd0171 ircd:Ⓜ️ Add back the id::NODE sigil; add to room_id() translation. 2019-08-12 01:39:16 -07:00
Jason Volk
b60edf3212 ircd:Ⓜ️ Eliminate the !nodes room related. 2019-08-12 01:39:16 -07:00
Jason Volk
f24bf54799 ircd:Ⓜ️ Eliminate the user::users room references. 2019-08-12 01:39:16 -07:00
Jason Volk
eb587c6334 ircd:Ⓜ️ Improve the exists(user_id) check. 2019-08-11 23:30:50 -07:00
Jason Volk
8779cfd866 ircd:Ⓜ️ Move m::users to module. 2019-08-11 23:30:50 -07:00
Jason Volk
dffb03a562 ircd: Cleanup / simplify assert related interface. 2019-08-11 23:30:50 -07:00
Jason Volk
e7596fba96 ircd:Ⓜ️:room::state::space: Log a DWARNING on rebuild interruption. 2019-08-11 23:30:50 -07:00
Jason Volk
a3f2f2082e ircd:Ⓜ️:room::state::space: Fix default value in seek key generation. 2019-08-11 18:25:52 -07:00
Jason Volk
b8a595a1c5 ircd:Ⓜ️:dbs: Cleanup/modernize with structured bindings. 2019-08-11 18:18:57 -07:00
Jason Volk
aa4147b02a ircd:Ⓜ️:sync: Fix conditions for non-phased non-initial sync items. 2019-08-11 08:15:36 -07:00
Jason Volk
9bab532c3e ircd:Ⓜ️:sync: Add interruption points in polylog caller; state iteration. 2019-08-11 08:00:41 -07:00
Jason Volk
9a3f37c0af ircd:Ⓜ️:sync: Remove cruft. 2019-08-11 07:51:42 -07:00
Jason Volk
41c8643305 ircd::fs: Use better indicator for async support type. 2019-08-11 04:52:38 -07:00
Jason Volk
125f53872c ircd::fs: Preliminary io_uring infrastructure plumbing. 2019-08-11 01:39:30 -07:00
Jason Volk
588b0aa9bc ircd::fs::aio: Fix bitrot assertion; simplify aio related. 2019-08-10 23:22:28 -07:00
Jason Volk
2a7dc12386 ircd:Ⓜ️🆔 Improve version check exception msg. 2019-08-10 23:22:28 -07:00
Jason Volk
395624879c ircd:Ⓜ️:vm: Add event_id version floor check conform hook. 2019-08-10 01:28:21 -07:00
Jason Volk
45d9a79cc0 ircd:Ⓜ️:event::conforms: Fix event_id version regression in self-reference check. 2019-08-10 01:00:28 -07:00
Jason Volk
8bce90fbf3 modules/client/keys/upload: Properly implement one_time_keys upload. (Fixes #9) 2019-08-09 23:34:20 -07:00
Jason Volk
198fbfa20b ircd::db: No compaction readahead for direct IO. 2019-08-08 19:50:33 -07:00
Jason Volk
da0827dbbb ircd::server: Fix content_read synchronization with chunk_read. (Fixes #116) 2019-08-08 18:39:20 -07:00
Jason Volk
060e46f8e4 ircd: Conditionally compile with gettimeofday().
ircd: Stronger embedding for time point samples.
2019-08-08 18:09:50 -07:00
Jason Volk
ca99df8edb ircd::assert: Always inline the debugtrap. 2019-08-08 16:12:52 -07:00
Jason Volk
cc9054303d ircd:Ⓜ️ Disable client_keys_upload module for now. 2019-08-08 14:21:39 -07:00
Jason Volk
be959362dd ircd::run: Handle runlevel change callback unhandled here. 2019-08-07 21:41:55 -07:00
Jason Volk
0f8cabdcb9 modules/client: Start a register/email module; stub requestToken. (#106) 2019-08-07 15:03:50 -07:00
Jason Volk
f558ac1a28 ircd:Ⓜ️:room::power: Prevent exception on json::type() for no collection. 2019-08-07 02:48:51 -07:00
Jason Volk
2bc795b883 ircd:Ⓜ️:event::auth: Call the auth hook for unenumerated/additional types. 2019-08-07 01:24:16 -07:00
Jason Volk
f7dbe8afe2 ircd: Various fixes / cleanup. 2019-08-07 00:41:08 -07:00
Jason Volk
14f16f2b0d ircd::fs: Support hole punching if available; add checks for allocate options. 2019-08-06 16:39:28 -07:00
Jason Volk
f549fb1f72 ircd::fs: Fix support version detections. 2019-08-06 15:49:24 -07:00
Jason Volk
bd2dd1c50d ircd::fs: Make support string an info log message. 2019-08-06 15:44:32 -07:00
Jason Volk
315276e3c4 ircd::info: Reorg/improve hardware information sampling. 2019-08-06 15:44:32 -07:00
Jason Volk
d38a40b3d0 ircd:Ⓜ️🆔 Copy to lowercase in room alias buffer constructions. 2019-08-05 22:15:01 -07:00
Jason Volk
b5a6af1360 ircd: Optimize tolower transform. 2019-08-05 21:33:56 -07:00
Jason Volk
8b9822e4fb Fix various instances of throwing into noexcept. 2019-08-05 16:20:55 -07:00
Jason Volk
009d417273 ircd: Indicate noexcept on advised interfaces. 2019-08-05 16:19:20 -07:00
Jason Volk
c64bb6850c ircd::net: Fix/improve the v6/v4 check.
ircd::net: Add an is_null(ipport/ipaddr).

ircd::net: Improve the v6/v4 check efficiency.

ircd::net: Swap defaulting from v6 to v4 for better null address output.
2019-08-04 18:05:58 -07:00
Jason Volk
c860646943 Fix listener module name in imports. 2019-08-04 14:50:09 -07:00
Jason Volk
afc001e68c ircd::log: Use microdate() for log prefix. 2019-08-03 20:04:08 -07:00
Jason Volk
8dd0a22351 ircd: Add additional formatted microdate(). 2019-08-03 20:02:18 -07:00
Jason Volk
ac4e742010 ircd::log: Convert to hook architecture. 2019-08-03 18:36:42 -07:00
Jason Volk
7192a75ac5 ircd:Ⓜ️ Fix conf::item constness. 2019-08-03 17:15:28 -07:00
Jason Volk
36b64f863b ircd::stringops: Assert and satisfy these conversions. 2019-08-03 17:07:54 -07:00
Jason Volk
47e2f92eda ircd::rfc1035: Cast to unsigned. 2019-08-03 17:02:21 -07:00
Jason Volk
beaa970176 ircd:Ⓜ️ Rename main log facility. 2019-08-03 16:25:43 -07:00
Jason Volk
fa341c274e ircd::log: Add some minor comments / document. 2019-08-03 16:11:14 -07:00
Jason Volk
07c29ab914 modules: Rename webhook/index to more consistent web_ prefix. 2019-08-03 15:00:47 -07:00
Jason Volk
b72b0ac110 ircd::net: Use buffer size consts. 2019-08-02 22:34:24 -07:00
Jason Volk
de00f3b0c3 ircd::net: Improve connect logmsg. 2019-08-02 22:34:12 -07:00
Jason Volk
d9a770ba3e ircd::rfc1035: Case transform to lower in make_name(). 2019-08-02 22:03:23 -07:00
Jason Volk
48da12c306 ircd::net: Case transform in string()/canonize()/dns::make_SRV_key(). 2019-08-02 22:01:00 -07:00
Jason Volk
aa013ac526 ircd: Add string_view based tolower()/toupper(). 2019-08-02 21:02:40 -07:00
Jason Volk
d8fcbf7325 ircd:Ⓜ️ Reinterface append(event) into event::append; move to module. (#109) 2019-08-02 17:34:31 -07:00
Jason Volk
8e5e599690 ircd:Ⓜ️ Relax exception propagation through event::refs. (Fixes #114) 2019-08-02 15:04:29 -07:00
Jason Volk
e22795e988 ircd::log: Remove console_ansi from conf items. 2019-08-02 15:04:29 -07:00
Jason Volk
af48bdfa6e ircd::json: Stub an unescape(). 2019-08-02 15:04:29 -07:00
Jason Volk
181ed12bd7 ircd::json: Add more escapes to map. 2019-08-02 15:04:28 -07:00
Jason Volk
7984f4bdee ircd::json: Require full range of control chars to be escaped. 2019-08-02 15:04:28 -07:00
Jason Volk
75927abb42 ircd::json: Restrict escaped unicodes to UTF-16 surrogates. 2019-08-02 15:04:28 -07:00
Jason Volk
fefaaca2c2 ircd::prof: Split header into directory.
ircd::prof: Split linux/perf_event specific to unit.
2019-07-31 19:43:09 -07:00
Jason Volk
5e3f81685c ircd:Ⓜ️ Shorten matrix log facility names.
modules/m_room_bootstrap: Rename log facility.
2019-07-31 19:43:06 -07:00
Jason Volk
6edde2a972 ircd::prof: Remove valgrind/callgrind include unused in this unit. 2019-07-31 19:26:16 -07:00
Jason Volk
38970872e5 ircd::ctx: Minor comments. 2019-07-31 17:19:00 -07:00
Jason Volk
4acb76f621 ircd::db::env: Turn on some debuglog msgs unconditionally. 2019-07-30 19:19:01 -07:00
Jason Volk
7333be92ca ircd:Ⓜ️:typing: Simplify interface; fix linkages. 2019-07-30 14:21:26 -07:00
Jason Volk
ed56ef680a ircd:Ⓜ️:fed::user::keys::claim: Separate content creation functions from ctor.
ircd:Ⓜ️:fed::user::keys::query: Separate content creation functions from ctor.
2019-07-30 12:30:27 -07:00
Jason Volk
de986d2272 ircd::json::stack: Make completed() return a string_view instead of const_buffer. 2019-07-30 12:26:26 -07:00