0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-26 16:52:44 +01:00
Commit graph

2751 commits

Author SHA1 Message Date
Jason Volk
a70d22151f modules/client/sync/rooms: Elide query for room head/depth for EDU's. 2019-04-15 17:09:35 -07:00
Jason Volk
035e03a35e modules/federation/federation: Make all origin string-copying calls the same. 2019-04-15 17:09:35 -07:00
Jason Volk
7d021f9430 ircd::server: Rename server_name to server_version. 2019-04-15 15:23:44 -07:00
Jason Volk
fde3e48fbf modules/s_fetch: Call for explicit destruction/cancel on error. 2019-04-15 15:23:44 -07:00
Jason Volk
77b16f32ce ircd:Ⓜ️:append: Calculate age based on depth from room head.
fixes #55
2019-04-15 14:44:58 -07:00
Jason Volk
484d298afb modules/s_fetch: Add proper fetch timeout logic. 2019-04-15 11:37:13 -07:00
Jason Volk
f9025cebb9 ircd: Support read-only and write-avoid modes via conf item / command line. 2019-04-15 11:16:31 -07:00
Jason Volk
8c68a24e1f ircd::ctx::prof: Add cycle counter to ticker array. 2019-04-12 15:58:06 -07:00
Jason Volk
0ce0fe3890 ircd::server: Enable the cancel debug msg.
modules/s_fetch: Improve log level.
2019-04-12 14:26:10 -07:00
Jason Volk
1dcd4c8eb6 modules/s_fetch: Condition fetch::start() on runlevel. 2019-04-12 14:15:32 -07:00
Jason Volk
d090382551 modules/console: Fix missing newline; improve fetch list formatting. 2019-04-12 14:04:09 -07:00
Jason Volk
1063fcb657 modules/s_fetch: Report nr of reaped requests. 2019-04-12 13:03:29 -07:00
Jason Volk
12109be1a7 modules/s_fetch: Use m::event:prev parsing here. 2019-04-12 12:40:10 -07:00
Jason Volk
85359d6662 modules/s_fetch: Use better user_id param on headfill. 2019-04-12 12:34:23 -07:00
Jason Volk
40bc440133 modules/s_fetch: Clear all requests on unload. 2019-04-12 11:34:38 -07:00
Jason Volk
541dbadf2f ircd::buffer: Increase restrictions for unique_buffer<>. 2019-04-12 11:34:00 -07:00
Jason Volk
e90d016d2e modules/s_fetch: Improve error handling on submit()/start(request). 2019-04-12 05:36:04 -07:00
Jason Volk
d7cc387688 modules/s_fetch: Minor simplify start() with prefetch(). 2019-04-12 05:13:42 -07:00
Jason Volk
2822cd0a8a ircd:Ⓜ️:fetch: Add headfill operation. 2019-04-12 05:09:38 -07:00
Jason Volk
eb33688bc1 ircd:Ⓜ️:fetch: Add additional interface tools; consolidate interface; cleanup/reorg.
ircd:Ⓜ️:fetch: Add backfill suite.
2019-04-12 04:44:26 -07:00
Jason Volk
8e5c858697 modules/s_fetch: Fix gc iteration conditions. 2019-04-12 03:36:03 -07:00
Jason Volk
c14d67102a ircd:Ⓜ️:fetch: Reorient interface to expose fetch::request. 2019-04-12 03:35:46 -07:00
Jason Volk
eace5e309c ircd:Ⓜ️:feds: Add / upgrade backfill. 2019-04-12 01:53:57 -07:00
Jason Volk
7ca0cd5e34 modules/console: Update the feds event cmd. 2019-04-12 01:12:23 -07:00
Jason Volk
360cc01dc8 ircd:Ⓜ️:feds: Migrate feds::perspective() to interface. 2019-04-12 00:55:16 -07:00
Jason Volk
06e381ce2b ircd:Ⓜ️:feds: Use a misc arg vector of string_view's. 2019-04-12 00:52:29 -07:00
Jason Volk
302969f100 ircd:Ⓜ️:feds: Add namespace \brief. Reorg impl layout. 2019-04-12 00:33:29 -07:00
Jason Volk
dc93610914 ircd:Ⓜ️:feds: Add feds::event to interface. 2019-04-12 00:16:27 -07:00
Jason Volk
2ce53fef3c modules/federation/federation: Abstract the m::feds request process. 2019-04-12 00:09:32 -07:00
Jason Volk
4cd8a0c80d modules/console: Improve formatting of peer request list output. 2019-04-11 22:44:36 -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
aad53ba614 modules/s_fetch: Add conf item to toggle central control of unit. 2019-04-11 20:53:57 -07:00
Jason Volk
b353f3d0ac modules/webhook: Toggle non-failure status events via conf item. 2019-04-11 08:24:32 -07:00
Jason Volk
ebdbc0864c modules/s_fetch: Enable recursive fetch. 2019-04-11 08:08:47 -07:00
Jason Volk
4500df4b78 modules/client/rooms/initialsync: Preliminary fetch trigger here.
modules/s_fetch: Start the prev_events fetch here.
2019-04-11 07:01:56 -07:00
Jason Volk
f9fb70ab2a modules/console: Allow empty remote param to trigger the feds overload. 2019-04-11 07:01:56 -07:00
Jason Volk
3ca529e0c6 modules/console: Improve room state cmd output; move old output to room state events. 2019-04-11 07:01:56 -07:00
Jason Volk
c9c171ed5b ircd:Ⓜ️:feds: Refine the feds preliminary central interface. 2019-04-11 06:27:28 -07:00
Jason Volk
aa5055ced3 modules/console: Use pretty(iec(bytes)) for ctx list stack sizes. 2019-04-11 03:55:51 -07:00
Jason Volk
342ef74382 modules/console: Tweak the state flags characters. 2019-04-10 23:36:16 -07:00
Jason Volk
66c73e2a65 modules/s_fetch: Add a request map cleanup pass. 2019-04-10 23:29:56 -07:00
Jason Volk
de710494d7 modules/console: Fix formatting of ctx list cmd. 2019-04-10 23:16:59 -07:00
Jason Volk
34cbf19466 modules/console: Add notification count and state indication. 2019-04-10 23:04:38 -07:00
Jason Volk
74778bd024 ircd::ios: Add a queued handler counter to stats. 2019-04-10 22:54:13 -07:00
Jason Volk
6fbf2e082b modules/media/media: Minor cleanup. 2019-04-10 22:32:06 -07:00
Jason Volk
562651aa7d ircd:Ⓜ️:fetch: Add fetch+eval workers; start central interface; various. 2019-04-10 22:32:06 -07:00
Jason Volk
1209d47fa5 ircd:Ⓜ️:vm: Add additional vmopts related to fetching. 2019-04-10 22:32:06 -07:00
Jason Volk
0b51a10a44 ircd::fs::aio: Count io_submit() 'stalls' in stats. 2019-04-10 20:18:51 -07:00
Jason Volk
e9a6f2ec92 modules/client/sync: Disable phased sync by default for now until stable. 2019-04-08 06:54:54 -07:00
Jason Volk
77b4ea969f modules/client/sync/rooms/state: Split out the initial sync branch; add room avatar. 2019-04-08 06:11:16 -07:00
Jason Volk
a8b536e420 modules/client/sync: Improve phased initial sync by bursting full room list at phase 0. 2019-04-08 04:43:23 -07:00
Jason Volk
a82410009e ircd:Ⓜ️:sync: Introduce phased polylogarithmic initial sync. 2019-04-08 02:46:49 -07:00
Jason Volk
0f2dcf1706 modules/client/sync: Rename conf item. 2019-04-08 00:03:17 -07:00
Jason Volk
5782f2a5f5 modules/m_rooms: Update module linkage of rooms::for_each(). 2019-04-07 20:15:31 -07:00
Jason Volk
e98e4babce modules: Add preliminary s_command; client command-message support. 2019-04-07 16:22:34 -07:00
Jason Volk
48da29cf2f modules/m_room_history_visibility: Pass the testing event up the stack rather than the vis. event. 2019-04-06 18:40:24 -07:00
Jason Volk
8a8dbea623 ircd:Ⓜ️ Update linkage for m::visible interface. 2019-04-06 18:35:01 -07:00
Jason Volk
30834dfd23 modules/vm: Call the post hook for EDU's as well. 2019-04-06 18:18:17 -07:00
Jason Volk
989b3f0cc3 ircd::rfc1035: Use proper platform byte swapping. 2019-04-06 17:12:01 -07:00
Jason Volk
c3480f9f79 ircd: Rename various matrix loggers; increase log name width. 2019-04-05 18:12:22 -07:00
Jason Volk
8876c89d48 modules/m_typing: Add m.typing logger.
modules/m_receipt: Add an m.receipt log.
2019-04-05 14:38:50 -07:00
Jason Volk
0841b44534 modules/m_presence: Fix logger target for various messages. 2019-04-05 14:05:58 -07:00
Jason Volk
b3038fa5e7 modules/webhook: Handle case for status state error.
[skip ci]
2019-04-04 01:34:47 -07:00
Jason Volk
2e980e967b modules/webhook: Fix spacing for merge pill.
[ci skip]
2019-04-04 01:19:48 -07:00
Jason Volk
d4a17120fe modules/webhook: Add github status handler; add appveyor stub; fix merge font tag. 2019-04-04 00:47:02 -07:00
Jason Volk
96ce15b4d9 modules/webhook: Improve pull request formatting. 2019-04-02 10:46:54 -07:00
Jason Volk
ebcac5e7ae modules/webhook: Add github url prefix stripping help function. 2019-04-02 10:31:39 -07:00
Jason Volk
d0ad243860 modules/client/sync/rooms/account_data: Ensure room_id found on room account_data handlers. 2019-04-02 09:53:02 -07:00
Jason Volk
dab225113d ircd::resource: Handle and generate an OPTIONS response.
fixes #65
2019-03-31 23:08:29 -07:00
Jason Volk
a3ca9a986b modules/client: Stub 14.13.1.3 notifications handler. 2019-03-31 14:03:21 -07:00
Jason Volk
46324b1ac8 modules/client/sync/rooms/timeline: Fix polylog timeline limited indicator. 2019-03-31 13:09:36 -07:00
Jason Volk
7433daa440 modules/client/rooms/context: Minor cleanup extra; remove default token inits. 2019-03-31 00:44:34 -07:00
Jason Volk
40b74a6721 modules/client/rooms/context: Enforce spec event_id param only; fix urldecode condition. 2019-03-31 00:35:34 -07:00
Jason Volk
d3bc65eaa9 modules/m_room_aliases: Additional eval check on state_key; only check TTL for remote aliases. 2019-03-30 19:04:10 -07:00
Jason Volk
1b26999a19 modules/console: Add room alias / room alias cache cmd suite. 2019-03-30 19:04:10 -07:00
Jason Volk
37d1b156e0 modules/client/directory/room: Implement 10.2.1 PUT directory/room/{roomAlias}. 2019-03-30 19:02:11 -07:00
Jason Volk
1cc715f7ce modules/m_room_aliases: Prevent fetching a miss from my host. 2019-03-30 19:02:11 -07:00
Jason Volk
4eba0fcd6f modules/client/directory/room: Remove old alias caching and fetching; reroute central interfaces. 2019-03-30 19:02:11 -07:00
Jason Volk
5b1556eca1 modules/m_room_aliases: Refactor m.room.aliases hooks for new cache. 2019-03-30 19:02:11 -07:00
Jason Volk
9c2b215d60 ircd:Ⓜ️:room::aliases::cache: Add remote fetching; improve interface. 2019-03-30 19:02:11 -07:00
Jason Volk
cd5b93ec27 modules/m_room_aliases: Add cache TTL conf item and conditions. 2019-03-30 19:02:11 -07:00
Jason Volk
8063904c06 ircd:Ⓜ️:room::aliases: Add preliminary aliases cache replacement interface. 2019-03-30 19:02:11 -07:00
Jason Volk
276ba9941d modules/m_room_aliases: Move for_each impl to module. 2019-03-30 18:15:07 -07:00
Jason Volk
317fa612fb ircd:Ⓜ️:room: Add aliases interface. 2019-03-30 18:15:07 -07:00
Jason Volk
19ca15eff7 modules/federation/invite: Minor cleanup. 2019-03-30 15:25:11 -07:00
Jason Volk
98c3c15e89 modules/federation/invite: Attempt to make use of invite_room_state carried in request. 2019-03-30 15:25:05 -07:00
Jason Volk
8f4b8c9726 modules/vm: Restore the txn pointer (to null) after eval. 2019-03-30 15:18:22 -07:00
Jason Volk
a83e304382 modules/client/sync: Manually invalidate checkpoints on known polylog commitments. 2019-03-30 15:02:18 -07:00
Jason Volk
7042d8e041 modules/client/rooms/account_data: Move checkpoint to cover both linear branches. 2019-03-30 14:13:34 -07:00
Jason Volk
f7fa89b061 ircd::json::stack: Alter checkpoint rollback() behavior to proactive. 2019-03-30 14:13:34 -07:00
Jason Volk
881d3116cc modules/client/sync/rooms/account_data: Ensure apropos() hits the linear event coming through. 2019-03-30 14:09:47 -07:00
Jason Volk
9b41f5c13a modules/s_control: Fix context switch in exception handler. 2019-03-28 22:01:42 -07:00
Jason Volk
efd1124cd7 modules/client/login: Fix loss of value data during device tuple assimilation.
modules/client/register: Fix loss of value data during device tuple assimilation.
2019-03-28 21:31:22 -07:00
Jason Volk
94503e6d5f modules/console: Add arguments to allow modification of account_data and room_account_data. 2019-03-28 18:06:46 -07:00
Jason Volk
8f335ca1bb modules/client/login: Fix JSON typing of remote IP strings.
modules/client/register: Fix JSON typing of remote IP strings.
2019-03-28 17:47:57 -07:00
Jason Volk
e555b91fa5 modules/client/sync/rooms/ephemeral/receipt: Elide syncing user's own receipts. 2019-03-28 17:36:22 -07:00
Jason Volk
4480c136ee ircd::ios: Add summation for stats w/ console totals. 2019-03-28 17:22:52 -07:00
Jason Volk
289aca0c4a ircd::ios: Move descriptor stats into structure. 2019-03-28 17:16:39 -07:00
Jason Volk
83593c5533 modules/vm: Fix sequence sharing condition for already retired evals. 2019-03-28 16:22:37 -07:00
Jason Volk
8e23a49ced modules/console: Allow explicit on/off arguments to debug cmd. 2019-03-28 16:16:26 -07:00
Jason Volk
f340e44692 ircd:Ⓜ️:vm: Add event_id and share sequence to the loghead; minor cleanup. 2019-03-28 16:08:45 -07:00
Jason Volk
a889122dcc modules/m_receipt: Additional hook conditions; switch the hooksite; minor cleanup. 2019-03-28 14:45:44 -07:00
Jason Volk
31f1e28c24 modules/m_receipt: Add implicit receipt generator hook. 2019-03-28 14:05:04 -07:00
Jason Volk
e1446a84da modules/m_receipt: Elide federation broadcasts for receipts of events matching sender. 2019-03-28 14:05:04 -07:00
Jason Volk
c046467348 modules/m_receipt: Consolidate receipt interface; split out federation composer into hook. 2019-03-28 14:05:04 -07:00
Jason Volk
f15769ea0e modules: Add .well-known handler to serve the m::self::servername string for now. 2019-03-28 13:13:35 -07:00
Jason Volk
6419333457 modules/client/sync/rooms/unread_notifications: Use better counter upper bound. 2019-03-28 00:11:35 -07:00
Jason Volk
be9bee5968 modules/m_room: Make notification count iteration upper bound exclusive.
modules/m_user: Make highlight count iteration exclusive.
2019-03-27 23:55:14 -07:00
Jason Volk
0e6e556d50 modules/client/sync: Reuse scratch buffer on longpoll handles. 2019-03-27 23:50:43 -07:00
Jason Volk
5d06042140 modules/client/sync: Use the same linear vector merge in longpoll handler. 2019-03-27 20:28:59 -07:00
Jason Volk
394ec523a2 ircd:Ⓜ️:sync: Do a full iteration of all linear sync items even if success. 2019-03-27 20:13:04 -07:00
Jason Volk
977840a246 modules/s_dns_resolver: Ensure no double-queueing, at cost. 2019-03-27 17:11:12 -07:00
Jason Volk
fc09dd4034 modules/client/rooms/read_markers: Reimplement client 14.6 /read_markers m.fully_read. 2019-03-27 16:54:10 -07:00
Jason Volk
2d459d8da8 modules/client/rooms/receipt: Split m.read logic into subroutine. 2019-03-27 16:14:14 -07:00
Jason Volk
5cfc763002 modules/m_receipt: Add comment to section / minor cleanup. 2019-03-27 16:04:12 -07:00
Jason Volk
745f392855 modules/webhook: Implement github organization type handler and member_added action. 2019-03-27 15:58:33 -07:00
Jason Volk
0e5b10816a modules/client/rooms/receipt: Enforce support for m.read type only. 2019-03-27 15:30:40 -07:00
Jason Volk
ee9e82f53c modules/webhook: Support organization-level webhooks in header display. 2019-03-27 14:46:01 -07:00
Jason Volk
99f3c842d1 modules/webhook: Fix label added listing. 2019-03-27 14:35:55 -07:00
Jason Volk
9c2e0a759a modules/webhook: Handle labels action unlabeled. 2019-03-27 14:33:27 -07:00
Jason Volk
bfda1b35d0 modules/federation/invite: Disable prev event requirement on invite eval. 2019-03-27 14:09:40 -07:00
Jason Volk
0043cb2af7 modules/s_fetch: Add branch for auth chain fetch/eval on missing room state for event. 2019-03-27 14:09:40 -07:00
Jason Volk
1c5b7d2d71 ircd:Ⓜ️:room::auth: Add central interface for chain fetch/eval. 2019-03-27 13:44:33 -07:00
Jason Volk
20d0ea70c2 ircd::ios: Add tsc counters to hook state. 2019-03-27 13:04:12 -07:00
Jason Volk
42d275d787 modules/console: Start an ios cmd. 2019-03-27 13:04:12 -07:00
Jason Volk
d2546120ee ircd: Add descriptor participation for all asynchronous operations. 2019-03-27 13:04:12 -07:00
Jason Volk
92ebdd83a4 modules/console: Minor rename constant. 2019-03-27 13:04:12 -07:00
Jason Volk
939812f6bd modules/vm: Fix #ifdef RB_DEBUG coverage; minor adjust type. 2019-03-25 20:18:33 -07:00
Jason Volk
257b1fa7ff modules/vm: Move the issuing debuglog msg out of execute(). 2019-03-25 20:13:03 -07:00
Jason Volk
bd3bf50c34 modules/s_dns: Fix double-tap; cleanup iteration. 2019-03-25 19:54:11 -07:00
Jason Volk
7d70351f0b modules/s_dns: Ensure cache::put() sends something useful to the cache room. 2019-03-25 19:07:37 -07:00
Jason Volk
84d4ca485b ircd:Ⓜ️:room::state: Add preliminary purge_replaced() w/ console cmd. 2019-03-25 18:39:30 -07:00
Jason Volk
1ffa00adbf ircd:Ⓜ️:room: Add central interface linkage for room::purge(). 2019-03-25 18:04:16 -07:00
Jason Volk
3018062345 modules/m_event: Calculate unsigned.age relative to origin_server_ts. 2019-03-25 17:58:21 -07:00
Jason Volk
a06816b66a modules/console: Prefix event::idx to room events line output. 2019-03-25 17:53:15 -07:00
Jason Volk
dc82c7e855 modules/console: Increase peer and client table widths. 2019-03-25 16:37:11 -07:00
Jason Volk
28569176f2 ircd::net: Use a structured argument to addrs closure; add more data. 2019-03-25 15:18:06 -07:00
Jason Volk
67c1ff06aa modules/s_dns_resolver: Increase the recv context stack size. 2019-03-25 14:37:21 -07:00
Jason Volk
23785910b0 modules/s_dns: Condition response waiting on callback being non-null. 2019-03-25 14:08:14 -07:00
Jason Volk
8c27cb847a ircd::net: Add conditional interface to getifaddrs() w/ console cmd. 2019-03-25 13:56:08 -07:00
Jason Volk
4d3fd753e1 ircd::net: Add interface for listener bound socket information; improve net listen console cmd. 2019-03-25 12:55:59 -07:00
Jason Volk
71b86df0fe ircd::net::dns: Reorg various utilities from dns::cache:: to dns::. 2019-03-24 14:50:26 -07:00
Jason Volk
55af53e2a0 ircd::net::dns::cache: Add addl utils random_choice and is_error(). 2019-03-24 14:47:07 -07:00
Jason Volk
83dcfb05a0 modules/s_dns: Tweak conf TTL defaults; use dynamic content buffer. 2019-03-24 14:06:47 -07:00
Jason Volk
4677e5f443 modules/s_dns: Improve ipport query deduction related. 2019-03-24 14:06:47 -07:00
Jason Volk
a1ac9cb356 ircd::net::dns: Expose more cache utils to public interface. 2019-03-24 14:06:47 -07:00
Jason Volk
54f7ddb6bd modules/client/rooms/state: Log an error when a state event fetch fails during sync. 2019-03-23 02:45:05 -07:00
Jason Volk
17abecff3b modules/s_dns: Default to SRV when deducing for single ipport query. 2019-03-23 02:32:20 -07:00
Jason Volk
3c09d62934 modules/s_dns: Various cleanup / reorg of handlers. 2019-03-23 01:04:41 -07:00
Jason Volk
e6320e0716 modules/federation/state: Seek an event_id before starting chunked encoding to allow 404. 2019-03-22 21:57:18 -07:00
Jason Volk
7f27cdbf1d modules/federation/state_ids: Seek an event_id before starting chunked encoding to allow 404. 2019-03-22 21:06:28 -07:00
Jason Volk
2417d7ac7d modules/m_event: Stub missing sections of event auth checks for now. 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
dfd9a3ed83 modules/s_dns_resolver: Handle ServFail better with retries so it's not immediately cached.
modules/s_dns_resolver: Increase recv work log level to critical.
2019-03-22 14:28:57 -07:00
Jason Volk
4ec689ef65 modules/s_dns: Handle case for entirely irrelevant records. 2019-03-22 13:51:28 -07:00
Jason Volk
8f41687940 modules/s_dns: Fix exception propagation to callback. 2019-03-22 13:51:28 -07:00
Jason Volk
eee620df3e modules/s_dns: Fix keying for response matching. 2019-03-22 10:50:16 -07:00
Jason Volk
12744182c2 modules/s_dns: Return tag id down stack if possible. 2019-03-22 10:41:26 -07:00
Jason Volk
68e3655a1d ircd::net::dns: Refactor system for the !dns room. 2019-03-21 18:24:36 -07:00
Jason Volk
e133cd5a25 ircd::net: Add specific allow(acceptor) rather than using start(acceptor). 2019-03-21 17:07:35 -07:00
Jason Volk
008dfcb43f ircd:Ⓜ️:vm: Add counters and synchronization for safe module reloading. 2019-03-21 16:46:04 -07:00
Jason Volk
4b7bc1d5b1 modules/vm: Rename/export core functions. 2019-03-21 16:46:04 -07:00
Jason Volk
82378db816 modules/vm: Share transactions between all evals on the same stack; adjust sequence strategy. 2019-03-21 16:46:04 -07:00
Jason Volk
a6a509fe4b modules/webhook: Add issue labels after issue titles. 2019-03-21 12:16:19 -07:00
Jason Volk
9ebc536534 modules/webhook: Use background colors for labels. 2019-03-21 11:54:33 -07:00
Jason Volk
bff7373918 modules/webhook: Support label event types and some actions. 2019-03-21 11:11:08 -07:00
Jason Volk
9333df4950 modules/m_presence: Add conf item to toggle federation incoming. 2019-03-20 20:08:48 -07:00
Jason Volk
d61d443a4c modules/vm: Asynchronous post_hook sequencing. 2019-03-19 18:02:35 -07:00
Jason Volk
9d7c26b376 modules/m_receipt: Fix missing m::log designation. 2019-03-19 16:40:25 -07:00
Jason Volk
5b951b55c5 modules/vm: Add sequencing points.
ircd:Ⓜ️:vm: Reorganize sequence counters.
2019-03-19 16:31:05 -07:00
Jason Volk
4e2a445426 modules/s_dns_cache: Create a DNS cache room. 2019-03-17 15:42:34 -07:00
Jason Volk
a9d8af1bf1 modules/s_listen: Start listener after loading iff run::level::RUN. 2019-03-17 15:30:24 -07:00
Jason Volk
21d8c9ce76 modules/client/rooms/report: Provide missing error string in log message. 2019-03-17 13:41:33 -07:00
Jason Volk
22fe24f54f modules/client/sync: Add linear buffer size conf item; add help texts to some confs. 2019-03-17 13:24:24 -07:00
Jason Volk
9ab3549660 modules/client/sync: Tweak log message format; cleanup longpoll::accepted struct. 2019-03-17 13:18:33 -07:00
Jason Volk
2158d3e7b6 modules/client/rooms/report: Create !abuse room with !ircd init hook. 2019-03-16 19:38:33 -07:00
Jason Volk
4e618175c7 modules/client/sync: Try to ensure all next_batch tokens are limited to the upper bound. 2019-03-16 18:12:38 -07:00
Jason Volk
8450f74450 modules/vm: Increment current_sequence after the debuglog msg. 2019-03-16 18:12:38 -07:00
Jason Volk
cdb8308b02 modules/s_listen: Add runlevel::QUIT handler to stop listener harder. 2019-03-16 16:28:28 -07:00
Jason Volk
f2f2afb8c4 ircd::net: Reorg listener/acceptor external interface. 2019-03-16 16:28:28 -07:00
Jason Volk
cff17eaa40 ircd: Add exception tools which elide copying. 2019-03-16 16:28:28 -07:00
Jason Volk
7fc68e1933 modules/client/sync: When longpoll hits an unsequenced EDU, the next_batch must repeat the current since token. 2019-03-16 12:59:18 -07:00
Jason Volk
5e45362b44 modules/vm: Show specific sequence number being written in debug msg; conf item. 2019-03-16 12:50:44 -07:00
Jason Volk
03abdd5ac6 modules/client/sync: Improve since token rejection message. 2019-03-16 12:26:03 -07:00
Jason Volk
aae00eab7f ircd:Ⓜ️:app: Add configuration access interface for appservice. 2019-03-15 16:19:05 -07:00
Jason Volk
b456210f1e modules/client/directory/list: Preliminary AS 2.3.5.1 PUT list/appservice. 2019-03-15 16:19:05 -07:00
Jason Volk
ccc986a073 modules/app: Reorganize units into a single shared object strategy. 2019-03-15 16:19:05 -07:00
Jason Volk
11afd2e590 modules/client/sync/rooms: Support ignoring invites based on m.ignored_user_list. 2019-03-14 18:11:52 -07:00
Jason Volk
47a5486258 modules/m_event: Enforce m.ignored_user_list for events to client. 2019-03-14 17:31:34 -07:00
Jason Volk
ddb08a37a4 ircd:Ⓜ️:user: Add framework around m.ignored_user_list; w/ console cmd. 2019-03-14 17:27:45 -07:00
Jason Volk
78c18f45ab Implement client 14.26 Reporting Content. 2019-03-14 16:20:40 -07:00
Jason Volk
86ddcd7149 modules/client/createroom: Implement 13^h^h14.23.3 Server behaviour. 2019-03-14 15:32:06 -07:00
Jason Volk
380032d4a9 ircd:Ⓜ️:room: Augment m::invite() convenience interface for custom content. 2019-03-14 15:32:06 -07:00
Jason Volk
240c181b16 modules/client/directory/list/room: Complete the missing PUT functionality. 2019-03-14 15:12:40 -07:00
Jason Volk
2070a72850 ircd:Ⓜ️:rooms: Add interface to remove entries from the !public room list. 2019-03-14 15:12:40 -07:00
Jason Volk
b1bf848155 modules/client/voip/turnserver: Add conf items for voip turnserver response. 2019-03-14 14:49:04 -07:00
Jason Volk
db9b891493 modules/client/rooms/event: Respond with zero-copy/zero-alloc. 2019-03-14 14:29:59 -07:00
Jason Volk
8ebb51bd9f modules/client/rooms/state: Refactor GET handlers for chunk streaming and spec behavior. 2019-03-14 14:25:37 -07:00
Jason Volk
42309c1c96 modules/client/rooms/members: Upgrade /members and /joined_members to streamed responses. 2019-03-14 13:55:44 -07:00
Jason Volk
23855fb48e modules/m_event: Suppress transaction_id warning unless desired. 2019-03-14 13:31:37 -07:00
Jason Volk
3e72e1277e modules/client/directory/list: Implement directory list room handlers. 2019-03-14 13:25:28 -07:00
Jason Volk
213c46d9f8 ircd::net: Add interface to get cipher list from acceptor w/ console cmd. 2019-03-13 17:32:39 -07:00
Jason Volk
1f35e9c57e modules/m_event: Add option to toggle query for txnid; disable query for non-timeline appends. 2019-03-13 17:08:35 -07:00
Jason Volk
9f67a146f4 modules/m_event: Unconditionally supply an age when no event_idx. 2019-03-13 17:08:35 -07:00
Jason Volk
92ba96cdf1 modules/vm: Move the post_hook execution before the write commitment. 2019-03-13 16:45:22 -07:00
Jason Volk
a2c9b115a8 modules/console: Fix conf set cmd argument to read remainder of line for value. 2019-03-12 18:41:05 -07:00
Jason Volk
a81038acfa modules/s_dns: Randomly select an A record for single-record callback. 2019-03-12 18:41:05 -07:00
Jason Volk
f745787ce4 modules/client/sync: Check if the client is still alive during longpoll. 2019-03-12 18:41:05 -07:00
Jason Volk
fe778e6ae4 modules/client/sync/rooms: Remove unnecessary checkpoint. 2019-03-12 18:41:05 -07:00
Jason Volk
425364f13e modules/client/sync/rooms/state: Fix missing append. 2019-03-12 18:41:05 -07:00
Jason Volk
06459e655e modules/client/sync/to_device: Fix improper seek. 2019-03-12 18:41:05 -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
2956183db9 modules/s_dns_resolver: Fix bug. 2019-03-11 18:18:58 -07:00
Jason Volk
ae4dc7db9b ircd::net::dns: Add a named logger specifically for net::dns; addl debug msgs. 2019-03-11 18:16:04 -07:00
Jason Volk
981cdf03aa modules/s_dns_resolver: Consolidate tag removal paths; ensure removals from sendq. 2019-03-11 17:39:45 -07:00
Jason Volk
9f8b915317 modules/m_event: Conditionally add prev_content to events sent to clients. 2019-03-11 16:18:36 -07:00
Jason Volk
c416be8398 modules: Replace individual client event appending with m::append(). 2019-03-11 16:02:48 -07:00
Jason Volk
c4c95916c2 ircd:Ⓜ️ Add central event append() to compose elaborated json::stack::object for clients. 2019-03-11 16:02:36 -07:00
Jason Volk
f61059a400 ircd:Ⓜ️:room::state: Add prev() and next() reference traversal interface. 2019-03-11 15:06:54 -07:00
Jason Volk
ffc652706f modules/s_dns_resolver: Change the server list token to a space. 2019-03-11 12:57:36 -07:00
Jason Volk
6f6e090015 modules/s_dns_resolver: Gracefully handle erroneous server list; error on entirely invalid list. 2019-03-11 12:57:36 -07:00
Jason Volk
9930d2ce8f modules/s_dns_resolver: Queue tags when no nameserver is available. 2019-03-11 11:54:19 -07:00
Jason Volk
daee236126 modules/client: Remove 308 redirects for unstable endpoints. 2019-03-11 10:43:06 -07:00
Jason Volk
e90e4aba42 modules/client/keys/upload: Disable one_time_keys; otherwise it spams the user's room. 2019-03-10 20:47:50 -07:00
Jason Volk
7434a4b6db modules/console: Add cmd to delete a listener configuration. 2019-03-10 14:50:12 -07:00
Jason Volk
610862903e modules/console: Allow manual JSON to be specified after positional args for listener config. 2019-03-10 14:25:25 -07:00
Jason Volk
2fdc19e113 modules/console: Reorder net listen cmd arguments. 2019-03-10 13:34:57 -07:00
Jason Volk
ba09d57d8e modules/client/rooms/context: Include unsigned data in returned events. 2019-03-09 19:21:44 -08:00
Jason Volk
48ab443ece modules/client/rooms/messages: Include unsigned data in returned events. 2019-03-09 19:21:22 -08:00
Jason Volk
bfc189da7e modules/client/rooms/messages: Omit pagination tokens at ends of iteration. 2019-03-09 18:52:48 -08:00
Jason Volk
77896456c4 modules/federation/user_keys_query: Omit devices without keys from response. 2019-03-09 18:48:59 -08:00
Jason Volk
1381524f95 ircd:Ⓜ️:device: Add has(user, device_id, property) overload to interface suite. 2019-03-09 18:48:32 -08:00
Jason Volk
d8da7814e8 modules/client/rooms/messages: Consider the from token inclusive. 2019-03-09 18:48:08 -08:00
Jason Volk
811e4f8c03 modules/client/rooms/context: Omit pagination tokens for ends of iteration. 2019-03-09 18:16:27 -08:00
Jason Volk
79782958fc modules/client/sync/rooms/timeline: Add conf item for default limit. 2019-03-09 17:37:48 -08:00
Jason Volk
5cbc35298d modules/console: Allow empty string value param to conf set cmd. 2019-03-09 17:21:09 -08:00
Jason Volk
45840a3393 modules/console: Use dynamic for tokenization here. 2019-03-09 16:45:42 -08:00
Jason Volk
9981ab7b12 modules/m_presence: Add named logger for presence. 2019-03-09 16:05:45 -08:00
Jason Volk
db8c91661e ircd::log: Increase the logger name width. 2019-03-09 16:05:45 -08:00
Jason Volk
ce8824a1bd modules/client/sync/rooms: Reenable per-room debug stats. 2019-03-09 15:17:21 -08:00
Jason Volk
197168059b ircd:Ⓜ️:vm: Create a conform hook; move checks into conform hookfns. 2019-03-09 14:00:00 -08:00
Jason Volk
e501c6434a modules/vm: Rename commit hook to issue hook; add opts toggle. 2019-03-09 12:13:21 -08:00
Jason Volk
0a8bb92e6d modules/client/rooms/send: Use vm.post hook site to save transaction_id before notifies. 2019-03-09 12:09:07 -08:00
Jason Volk
79eed85397 modules/vm: Add a post-write pre-notify hook site. 2019-03-09 12:08:05 -08:00
Jason Volk
58159d3ee6 modules/client/sync: Fix condition to skip linear for longpoll. 2019-03-08 17:47:29 -08:00
Jason Volk
e2d2c7f376 ircd:Ⓜ️:v1::user: Default to dynamic content buffering; adjust callsite buffer sizes. 2019-03-08 17:11:42 -08:00
Jason Volk
8e2aef32ef modules/client/sync: Consistent display of next_batch values in debug log msgs. 2019-03-08 15:29:10 -08:00
Jason Volk
fcfcb83d42 modules/client/sync/rooms/timeline: Log dwarning message when transaction_id missing. 2019-03-08 15:02:48 -08:00
Jason Volk
78c888ffae modules/client/users/openid: Return a better http code here. 2019-03-08 14:33:54 -08:00
Jason Volk
c0d0599b19 modules/client/sync: Tweak next_batch case; add debuglog on timeout branch. 2019-03-08 14:26:23 -08:00
Jason Volk
2b1c6682e6 modules/m_receipt: Remove the m.receipt eval for client syncs; ircd.read is used instead. 2019-03-08 14:19:04 -08:00
Jason Volk
187eca0e4e modules/client/sync: Refactor linear sync handlers to assume no implicit path. 2019-03-08 14:19:04 -08:00
Jason Volk
8230819edf modules/client/sync: Optimize these user state iterations. 2019-03-08 13:42:24 -08:00
Jason Volk
9028f63d35 modules: Add preliminary prometheus metrics endpoint. 2019-03-08 12:31:08 -08:00
Jason Volk
d1e0864590 modules/client/profile: Optimize the user profile iteration. 2019-03-08 11:25:38 -08:00
Jason Volk
cdac039658 modules/client/rooms/leave: Simplify leave endpoint handler. 2019-03-08 10:07:17 -08:00
Jason Volk
60c48d2a83 modules/client/rooms/unban: Implement 10.4.4.2 POST unban. 2019-03-08 09:57:43 -08:00
Jason Volk
cb2c65e8e2 modules/client/rooms/kick: Simplify endpoint handler. 2019-03-08 09:45:50 -08:00
Jason Volk
47216cba91 modules/client/rooms/ban: Implement 10.4.4.1 POST ban. 2019-03-08 09:43:30 -08:00
Jason Volk
3fdb3a420a modules/client/rooms/forget: Implement 10.4.3.2 POST forget. 2019-03-07 16:26:04 -08:00
Jason Volk
59124a0fe1 modules/client/createroom: Differentiate between spec preset and internal preset strings. 2019-03-07 15:40:45 -08:00
Jason Volk
864c6cc889 modules/client/rooms/send: urldecode type and txnid path parameters. 2019-03-07 15:32:03 -08:00
Jason Volk
7ea83597e5 modules/media: Assert and condition remote download request isn't for my_host(). 2019-03-07 15:11:27 -08:00
Jason Volk
80743b2fd5 modules/media: Throw better http codes for downloading media. 2019-03-07 15:11:27 -08:00
Jason Volk
cc14164dc8 modules/client/profile: Reuse the profile::set() path in fetch(). 2019-03-07 12:14:01 -08:00
Jason Volk
5adfb3ba43 modules/client/sync: Add conf items which override the sync mode selection. 2019-03-07 11:53:58 -08:00
Jason Volk
34561a5659 modules/client/profile: Fix JSON string type assumption for profile values. 2019-03-06 18:17:46 -08:00
Jason Volk
faf0914f23 modules/console: Add cmd to trigger m::user::profile::fetch(). 2019-03-06 18:17:32 -08:00
Jason Volk
33d3764c71 modules/client/createroom: Make special conditions to optimize user's user rooms. 2019-03-06 17:41:56 -08:00
Jason Volk
654901d7df modules/vm: Include empty auth_events array in create event rather than undefined. 2019-03-06 15:02:43 -08:00
Jason Volk
90752f1fb4 modules/federation/send_join: Add required spec "origin" in response. 2019-03-06 15:02:43 -08:00
Jason Volk
0c38d78bba modules/federation/send_leave: Respond with so-called empty response. 2019-03-06 15:02:43 -08:00
Jason Volk
9f4890a517 ircd:Ⓜ️ Unify room create interface and paths around createroom tuple. 2019-03-06 15:02:43 -08:00
Jason Volk
85c041c27b ircd:Ⓜ️:room Update version query based on spec room version grammar (string type). 2019-03-06 15:02:43 -08:00
Jason Volk
dd961fc53d modules/client/profile: Remove attempt at non-trivial designated initializers. 2019-03-06 10:50:42 -08:00
Jason Volk
09c2d7cbe5 modules/federation: Minor cleanup/simplification. 2019-03-06 00:22:18 -08:00
Jason Volk
c2966275c6 ircd:Ⓜ️:room::head: Improve interface/linkage for head utils / prev_events generation. 2019-03-06 00:22:18 -08:00
Jason Volk
1a1939e2c7 ircd:Ⓜ️:room::auth: Improve interface/linkage for auth_events generation. 2019-03-06 00:22:18 -08:00
Jason Volk
eb050591c9 modules/client/profile: Improve profile related for remote users. 2019-03-06 00:12:21 -08:00
Jason Volk
094ae6e997 ircd:Ⓜ️:user::profile: Add interface for remote profile fetch(). 2019-03-06 00:12:21 -08:00
Jason Volk
1f82b884ff ircd:Ⓜ️ Implement 14.18 Room Tagging. 2019-03-05 18:42:04 -08:00
Jason Volk
9e884b326d modules/webhook: Handle github issue_comment / created action. 2019-03-05 15:23:15 -08:00
Jason Volk
8b32f0558d modules/client/sync/rooms/state: Add unsigned addendum to event output. 2019-03-05 14:43:00 -08:00
Jason Volk
6fed8cc360 modules/client/createroom: Forbid guest access on all presets in violation of the spec. 2019-03-05 14:27:52 -08:00
Jason Volk
00da74fa27 modules/client/createroom: Improve error reporting; add derror log message. 2019-03-05 14:24:31 -08:00
Jason Volk
85b66e2d55 modules/client/sync/rooms/timeline: For non-longpoll, attempt to query transaction_id. 2019-03-05 14:24:08 -08:00
Jason Volk
d30e053e42 modules/client/rooms/send: Save transaction_id's to user's user room. 2019-03-05 14:24:08 -08:00
Jason Volk
78eab2fbcd modules/client/createroom: Implement the preset string behavior. 2019-03-05 14:24:08 -08:00
Jason Volk
d4b8a8089e ircd:Ⓜ️:createroom: Generate default power_levels w/ option for content_override. 2019-03-05 14:24:08 -08:00
Jason Volk
bbaf38937b ircd:Ⓜ️:room::power: Add util to generate spec-default power_levels content. 2019-03-05 14:24:08 -08:00
Jason Volk
c972683e2c modules/client/createroom: Set the visibility in the public rooms list; minor cleanup. 2019-03-05 12:51:48 -08:00
Jason Volk
70484be697 modules/client/createroom: Add graceful error handling and granular reporting to client. 2019-03-05 12:42:53 -08:00
Jason Volk
f0598bb27a modules/client/createroom: Set initial room state from supplied request data.
modules/client/createroom: Set the room name and topic if supplied in request.

modules/client/createroom: Set any state events from supplied initial_state.

modules/client/createroom: Invite any users in the supplied invite array.

modules/client/createroom: Set the room's initial guest_access if supplied by user.
2019-03-05 12:23:49 -08:00
Jason Volk
025313b6fe modules/webhook: Handle github issue labeled. 2019-03-05 11:14:29 -08:00
Jason Volk
6be111ac0b Revert "modules/m_room_member: Remove membership rule on can_join hook."
This reverts commit 6d6fb8b0d3.
2019-03-05 08:51:00 -08:00
Jason Volk
d8a9f484a4 modules/client/rooms/messages: Simplify the messages iteration. 2019-03-04 15:46:44 -08:00
Jason Volk
1dcf36adc8 modules/client/rooms/event: Fix param missing error message. 2019-03-04 14:36:49 -08:00
Jason Volk
19e09b0ad5 ircd:Ⓜ️:login: Support identifier typed login. 2019-03-04 13:16:14 -08:00
Jason Volk
6d6fb8b0d3 modules/m_room_member: Remove membership rule on can_join hook. 2019-03-04 12:52:13 -08:00