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

1517 commits

Author SHA1 Message Date
Jason Volk
09519174e2 ircd:Ⓜ️ Move room create() definition to modules/client/createroom. 2018-02-22 20:21:47 -08:00
Jason Volk
0569b41f4b ircd::mods: Add sym_ptr / import_shared reference ctors. 2018-02-22 14:30:11 -08:00
Jason Volk
8ae1e735f2 construct/ircd: Minor update stale comments. 2018-02-22 01:33:25 -08:00
Jason Volk
ec4a631608 ircd:Ⓜ️🆔 Update generator constructor; add room_id generator; minor cleanup. 2018-02-22 00:38:25 -08:00
Jason Volk
f235fc155e ircd::server: Close and remove node on name resolution error. 2018-02-21 17:44:08 -08:00
Jason Volk
52cbf0fc70 ircd: Condition client timeout for longpoll; fix resource request reference. 2018-02-21 17:43:29 -08:00
Jason Volk
d50ef4b45f ircd::log: Add interface to toggle facility to console. 2018-02-21 16:13:49 -08:00
Jason Volk
bae8e3b869 ircd:Ⓜ️ Add reverse reflection for event::conforms code. 2018-02-21 15:05:27 -08:00
Jason Volk
4f4b53416c ircd:Ⓜ️ Add more event::conforms checks; add skip-checks constructor. 2018-02-21 15:05:27 -08:00
Jason Volk
a00e305442 ircd:Ⓜ️ Rename event::errors to event::conforms. 2018-02-21 13:43:33 -08:00
Jason Volk
c72f7f1e96 ircd:Ⓜ️ Begin an event::errors fundamental conformity report. 2018-02-21 00:13:18 -08:00
Jason Volk
1bf9997086 ircd:Ⓜ️ Deinline these m::event related. 2018-02-20 18:26:54 -08:00
Jason Volk
198aea3e8f ircd:Ⓜ️ Fix warning from 329b1dc5. 2018-02-20 15:40:40 -08:00
Jason Volk
4de2479f73 ircd:Ⓜ️ Add missing characters to user mxid grammar. 2018-02-20 15:40:40 -08:00
Jason Volk
e5bc194fe5 ircd:Ⓜ️ Have id sigil grammar convert and return the enum. 2018-02-19 20:56:45 -08:00
Jason Volk
3d1409b243 ircd:Ⓜ️ Tighten exception specification for user::is_password(). 2018-02-19 19:45:44 -08:00
Jason Volk
329b1dc514 ircd:Ⓜ️ Add nothrow stack to complement head(room). 2018-02-19 19:45:44 -08:00
Jason Volk
36363134e5 ircd::aio: Cleanup / further simplify. 2018-02-19 19:45:44 -08:00
Jason Volk
f620bdcb3a ircd:Ⓜ️:v1: Add version request. 2018-02-19 19:45:44 -08:00
Jason Volk
eaf8df25c2 ircd::info: Add name string / agency strings. 2018-02-19 16:51:28 -08:00
Jason Volk
a21b2b28fa ircd::info: Minor reorg / cleanup. 2018-02-19 13:32:34 -08:00
Jason Volk
7142cbf735 ircd: Move magic out of fs::. 2018-02-18 22:54:54 -08:00
Jason Volk
fbafdaa851 ircd::mods: Disable the mangles map for now. 2018-02-18 22:38:23 -08:00
Jason Volk
de08752853 ircd::net: Remove unused/erroneous has_timeout(). 2018-02-18 22:38:23 -08:00
Jason Volk
5a16a5ded9 ircd::json: Indicate static duration for these printer closures. 2018-02-18 22:35:35 -08:00
Jason Volk
f8e5ca20d3 ircd::json: Remove the double-indirected member stringify. 2018-02-18 22:35:35 -08:00
Jason Volk
89ca9c9b24 ircd::json: Allow multiple attributes to the printer; simplify printer stack. 2018-02-18 22:35:27 -08:00
Jason Volk
42a22a6c79 ircd::json: Use consumption protocol for create_string closure. 2018-02-18 22:22:38 -08:00
Jason Volk
0e526484ea ircd::json: Ensure iov's are in a fixed location. 2018-02-18 22:18:52 -08:00
Jason Volk
f5197cc8ff ircd::fs: Add magic interface. 2018-02-18 01:12:09 -08:00
Jason Volk
b5cb40e63d configure.ac: Support libmagic. 2018-02-17 21:42:27 -08:00
Jason Volk
2be465d67f ircd::aio: Zero-length IO is very much a thing. 2018-02-17 17:14:15 -08:00
Jason Volk
62f4db4cce ircd:Ⓜ️ Fix/cleanup m::id generator ctor. 2018-02-17 16:17:59 -08:00
Jason Volk
9173c13b89 ircd: Move resource::request related off the stack into client. 2018-02-17 16:17:59 -08:00
Jason Volk
e149f38d79 ircd::json: This has to be more relaxed for now here. 2018-02-17 16:17:59 -08:00
Jason Volk
7e89baf369 ircd: Add resource::method::CONTENT_DISCRETION option flag. 2018-02-17 14:38:49 -08:00
Jason Volk
3709bd5612 ircd: Improve+rename client/resource head_buffer/content_buffer related. 2018-02-17 14:28:06 -08:00
Jason Volk
3c359e1dcc ircd:Ⓜ️ Add RoomEventFilter matcher. 2018-02-17 13:08:59 -08:00
Jason Volk
d89eaf338c ircd:Ⓜ️ 5 Filter (m::event_filter) matching (without globular). 2018-02-17 13:08:17 -08:00
Jason Volk
7a08fe8181 ircd:Ⓜ️ Deinline these request ctors. 2018-02-16 16:44:57 -08:00
Jason Volk
ca7f32a89b ircd:Ⓜ️🆔 Minor cleanup. 2018-02-16 16:33:28 -08:00
Jason Volk
bd6d0903a8 ircd:Ⓜ️: Fix stupid. 2018-02-16 13:33:19 -08:00
Jason Volk
acdb99887f ircd: Remove redundant sentence from README. 2018-02-16 11:26:43 -08:00
Jason Volk
00e90865d2 ircd:Ⓜ️ Add linear query suite to room interface. 2018-02-15 19:17:09 -08:00
Jason Volk
dbf6453171 ircd: Move IRCd Library section from top README. 2018-02-15 18:32:03 -08:00
Jason Volk
01251573bc ircd:Ⓜ️ Add redacts to main event; add redact(room, ...) committer. 2018-02-15 16:35:50 -08:00
Jason Volk
2921692571 ircd: Update Makefile ordering. 2018-02-15 14:07:25 -08:00
Jason Volk
d366523b64 ircd:Ⓜ️ Move sigil prefixing out of the random functors in generate_t ctor. 2018-02-15 13:55:09 -08:00
Jason Volk
eab4aef7e6 ircd:Ⓜ️/modules/client: Add device ID generation; use token/password helpers; various comments/cleanup. 2018-02-15 13:55:09 -08:00
Jason Volk
6ece5db391 ircd:Ⓜ️ Add user::room wrapping m::room with buffer of user's user room_id. 2018-02-15 13:40:08 -08:00
Jason Volk
050eacd142 ircd:Ⓜ️ Add m::user helpers to generate password hash and access tokens. 2018-02-15 13:05:00 -08:00
Jason Volk
51b2cafc74 ircd:Ⓜ️ Add experimental sigiled and qualified device MXID. 2018-02-15 13:01:07 -08:00
Jason Volk
08335c3883 ircd:Ⓜ️ Add random alpha-based ID generator. 2018-02-15 13:00:23 -08:00
Jason Volk
7b0c53501a ircd::rand: Modernize interface. 2018-02-15 12:53:00 -08:00
Jason Volk
a7c662529d ircd:Ⓜ️:vm: Remove the fronts map. 2018-02-14 22:07:01 -08:00
Jason Volk
a66f0f9423 ircd::json: Update the generator grammar. 2018-02-13 21:14:52 -08:00
Jason Volk
333d7a81f5 ircd: Move ircd::db::init up in the main sequence. 2018-02-13 20:38:55 -08:00
Jason Volk
d32f990c6a ircd:Ⓜ️ Improve room::messages interface as a bidirectional STL iterator. 2018-02-13 14:25:01 -08:00
Jason Volk
6f0ca19df6 ircd:Ⓜ️ Cleanup cruft from m::room; comments; minor. 2018-02-13 14:23:56 -08:00
Jason Volk
ad56d381a5 ircd:Ⓜ️:dbs: Add a room_events_key generator which doesn't require event_id. 2018-02-13 14:21:57 -08:00
Jason Volk
032156a18e ircd:Ⓜ️ Force json::STRING on event.content.body so purely numerical messages are quoted. 2018-02-12 19:52:10 -08:00
Jason Volk
2be10ef206 ircd: Fix/Address client current request flow for longpolls. 2018-02-12 19:30:44 -08:00
Jason Volk
67fba3cd7b ircd:Ⓜ️ Move filters into the user's user room. 2018-02-11 19:46:31 -08:00
Jason Volk
dbdc4a94d2 ircd:Ⓜ️:state: Use the appropriate codepath for undefined key dfs. 2018-02-11 15:47:25 -08:00
Jason Volk
bbbb88fe46 modules/client/user: Reactivate the get filter endpoint. 2018-02-11 15:47:25 -08:00
Jason Volk
830a4b92a1 ircd:Ⓜ️ Add preliminary !@user:host "user's room" to database all things user. 2018-02-11 15:47:24 -08:00
Jason Volk
085776655c ircd: These const_buffer casts are no longer necessary. 2018-02-11 15:47:24 -08:00
Jason Volk
939957c02a ircd:Ⓜ️ Split filter into compilation unit; reactivate interface. 2018-02-11 15:47:24 -08:00
Jason Volk
f770a1638e ircd: Update Makefile ordering to reflect current header ordering; commentary. 2018-02-11 15:47:24 -08:00
Jason Volk
b94d0b8ce6 ircd:Ⓜ️ Split m::user compilation unit. 2018-02-11 12:02:49 -08:00
Jason Volk
0afaa70ccf ircd: Refer to the right access_token in the resource::request struct. 2018-02-10 22:07:06 -08:00
Jason Volk
b1d257c93a ircd: Support authorization: bearer access tokens. 2018-02-10 22:03:39 -08:00
Jason Volk
8044fdb3ce ircd: Reenable access token authentication. 2018-02-10 22:03:31 -08:00
Jason Volk
3e603b86e9 ircd:Ⓜ️ Add the m::room::has(type, state_key) passthru. 2018-02-10 21:42:16 -08:00
Jason Volk
a3a3239e6e ircd:Ⓜ️ Add room::messages interface; comment on room::state. 2018-02-10 19:50:53 -08:00
Jason Volk
0dc8593b9c ircd::net: Add open() option to allow expired certificates. 2018-02-10 18:37:06 -08:00
Jason Volk
9ddf83c73c ircd:Ⓜ️ Retool the local query to the m::keys room. 2018-02-10 18:37:06 -08:00
Jason Volk
43d581f1e9 ircd:Ⓜ️ Add room::get() passthru interface to room::state. 2018-02-10 18:37:06 -08:00
Jason Volk
605fbe1859 ircd:Ⓜ️ Use member buffer caches in m::room::state for the state root/head event. 2018-02-10 18:37:06 -08:00
Jason Volk
e368101e54 ircd:Ⓜ️:state: Might as well typedef this id. 2018-02-10 17:33:17 -08:00
Jason Volk
6c6069fc2c ircd:Ⓜ️ Reflect sigil in m::id parse failure here. 2018-02-10 17:00:20 -08:00
Jason Volk
3597d1eb6b ircd:Ⓜ️ Elaborate the event::prev interface with pattern conveniences. 2018-02-10 13:44:54 -08:00
Jason Volk
b238818522 ircd:Ⓜ️ Convert room::members/origins iters to test proto; console update; various. 2018-02-10 13:05:01 -08:00
Jason Volk
23387155df ircd:Ⓜ️ Candidate split room::state interface (const part). 2018-02-10 00:41:10 -08:00
Jason Volk
9405166a7a ircd:Ⓜ️:state: Add an unconditional for_each. 2018-02-10 00:41:06 -08:00
Jason Volk
98d3b8bc65 ircd:Ⓜ️:state: Make each() into test() protocol. 2018-02-10 00:38:36 -08:00
Jason Volk
0bf053197c ircd::json: Massage away json::value template ctor. 2018-02-09 21:33:06 -08:00
Jason Volk
063644feaa ircd:Ⓜ️ Abort the current sorry state of m::io. 2018-02-09 21:33:06 -08:00
Jason Volk
6ff27aa45c ircd:Ⓜ️ Add room.root(); crush pattern. 2018-02-09 13:08:41 -08:00
Jason Volk
dd582bd21d ircd:Ⓜ️ Retool the user password check in the accounts room. 2018-02-09 12:24:13 -08:00
Jason Volk
0906db32d0 ircd:Ⓜ️ Reenable the state test/for_each; ensure any value unquote(); minor. 2018-02-09 12:24:13 -08:00
Jason Volk
366716c890 ircd:Ⓜ️:room: Reenable the has state query; apply state::get(nothrow) in places. 2018-02-09 12:24:13 -08:00
Jason Volk
cf18cdfcb7 ircd:Ⓜ️:state: Add nothrow overloads for value get() suite. 2018-02-09 11:55:49 -08:00
Jason Volk
cee2b5d561 ircd:Ⓜ️ Reenable the room membership test using state b-tree query. 2018-02-09 11:33:48 -08:00
Jason Volk
45f165b462 ircd:Ⓜ️ Add event::fetch: db::cell/db::row aggregate; apply to all pattern. 2018-02-09 11:22:46 -08:00
Jason Volk
25ce5e76a6 ircd:Ⓜ️ Reenable the other other (sic) m::room::members iteration. 2018-02-09 00:03:08 -08:00
Jason Volk
9ac16d14d4 ircd::mods: Split into internal header. 2018-02-08 23:36:04 -08:00
Jason Volk
e0df498415 ircd:Ⓜ️:room: Plug more stuff back in. 2018-02-08 23:23:50 -08:00
Jason Volk
a32f93c357 ircd:Ⓜ️:vm: Add specific exception; checkpoint incomplete eval; fix dbref. 2018-02-08 23:23:50 -08:00
Jason Volk
62dbef1df6 ircd:Ⓜ️ Reenable one of the m::room::members iterations now over the state b-tree. 2018-02-08 21:03:44 -08:00
Jason Volk
9d22fe725a ircd:Ⓜ️ Reenable the exists(room) query. 2018-02-08 21:01:52 -08:00
Jason Volk
39fed550cd ircd:Ⓜ️ Elaborate room.maxdepth() into the m::head(room)/m::depth(room) (non-array) suite. 2018-02-08 20:59:48 -08:00
Jason Volk
fd7792d32b ircd:Ⓜ️ Reenable the room::maxdepth() query with efficiency. 2018-02-08 17:19:12 -08:00
Jason Volk
2db910adea ircd:Ⓜ️:dbs: Add room_events key extractor for use with db::index::iterator. 2018-02-08 17:19:04 -08:00
Jason Volk
c7d7995772 ircd:Ⓜ️:dbs: Use better temporary prefix delimiter sequence. 2018-02-08 17:19:03 -08:00
Jason Volk
6e34a4a399 ircd:Ⓜ️:dbs: Add highest->lowest depth comparator for room_events meta. 2018-02-08 17:19:03 -08:00
Jason Volk
2f0c4e004e ircd:Ⓜ️:dbs: Treat room_events as an index column for better behavior. 2018-02-08 16:36:09 -08:00
Jason Volk
4540a32948 ircd:Ⓜ️ Events database interface to m::dbs; trim vm; [inconsistent]. 2018-02-08 13:27:49 -08:00
Jason Volk
7346d9dcdb ircd:Ⓜ️:state: Rename head to root. 2018-02-08 13:27:49 -08:00
Jason Volk
5c968f0949 ircd:Ⓜ️:state: Distill out any DB/IO for tree root; split out create(); remove init. 2018-02-08 13:27:49 -08:00
Jason Volk
f04ba38b42 ircd: Rename the stream_buffer to window_buffer. 2018-02-07 21:54:41 -08:00
Jason Volk
09b0c3d20d ircd::net::dns: Don't log.error common NXDOMAIN rcodes. 2018-02-07 12:16:17 -08:00
Jason Volk
45e9f7304f ircd: Call log::fini; flushing on runlevel change / halt. 2018-02-07 12:16:17 -08:00
Jason Volk
353ee9b80d ircd::ctx: Spawn OLE thread lazily. 2018-02-07 12:16:17 -08:00
Jason Volk
12f1bf97b4 ircd::net: Move the timedout nulling to here. 2018-02-07 12:16:17 -08:00
Jason Volk
dc4d827def ircd::net::dns: Improve the resolution handlers and callback chain. 2018-02-07 00:24:54 -08:00
Jason Volk
4623e4448f ircd::http: Add 502 Bad Gateway. 2018-02-07 00:24:54 -08:00
Jason Volk
cf112ec26e ircd::http: Better handling of unrecognized HTTP status code to reason string. 2018-02-07 00:24:54 -08:00
Jason Volk
24fdfdd9fe ircd::server: Fix error; fix regression. 2018-02-07 00:24:54 -08:00
Jason Volk
7b4906e85f ircd::net: Throw net::not_found for the ipport_one convenience if no A record. 2018-02-06 13:20:24 -08:00
Jason Volk
4a56c0a1cd ircd::fs: Asynchronous writes to local filesystem. 2018-02-06 00:02:18 -08:00
Jason Volk
1bb9624bce ircd: Give AIO its own TRU. 2018-02-05 23:00:55 -08:00
Jason Volk
79198527a7 configure/ircd: Consider all boost headers unconditional. 2018-02-05 21:24:36 -08:00
Jason Volk
230eb3fc7a ircd::ctx::prof: Consistent warning message strings. 2018-02-05 21:24:36 -08:00
Jason Volk
af62b5f089 ircd:Ⓜ️:state: Proper typedef for value closures. 2018-02-05 21:24:36 -08:00
Jason Volk
57ed24f868 ircd::db: Reenable the background work cancel for shutdown sequence. 2018-02-05 21:24:36 -08:00
Jason Volk
49027cc312 ircd:Ⓜ️:state: Optimize DFS branches recursed based on key argument prefix. 2018-02-05 21:24:36 -08:00
Jason Volk
025e1d7c78 ircd:Ⓜ️ Move events database description and instance to libircd. 2018-02-05 21:24:36 -08:00
Jason Volk
5cf77cf87c ircd::db: Don't silently refuse seek() when no snapshot. 2018-02-05 21:24:36 -08:00
Jason Volk
06816f9e33 ircd::db: Allow gopts parameter to the cell::seek(). 2018-02-05 21:24:36 -08:00
Jason Volk
9c03fcdb95 ircd:Ⓜ️:state: Basic util suite. 2018-02-05 21:24:36 -08:00
Jason Volk
ea35ea5863 ircd:Ⓜ️:state: Cache DB column refs statically and away from API surface. 2018-02-05 21:24:35 -08:00
Jason Volk
efeaf3475a ircd:Ⓜ️:state: Move DFS recursor out of closure. 2018-02-05 21:24:35 -08:00
Jason Volk
69427d7e43 ircd::ctx: Enable ctx::prof on debug builds only. 2018-02-05 21:24:35 -08:00
Jason Volk
3ba527079b ircd::ctx: Sample rdtsc to complement profile warning output. 2018-02-05 21:24:35 -08:00
Jason Volk
7b48bc9f40 ircd:Ⓜ️:dbs: Checkpoint the meta-index "state_head for event_id in room_id" 2018-02-05 21:24:35 -08:00
Jason Volk
42bd702d8f ircd:Ⓜ️:state: Adjust interface for event insertions from m::dbs. 2018-02-05 21:24:35 -08:00
Jason Volk
b97f6bf7a9 ircd:Ⓜ️:state: Improve buffer related; fix issues. 2018-02-05 21:24:35 -08:00
Jason Volk
d4eeeacdec ircd:Ⓜ️:state: Tweak some issues. 2018-02-05 21:24:35 -08:00
Jason Volk
dc361284f0 ircd:Ⓜ️:state: Add a DFS with closure; comments; cleanup. 2018-02-05 21:24:35 -08:00
Jason Volk
be624ca7f6 Update Copyrastafaris. 2018-02-05 21:24:34 -08:00
Jason Volk
6b7b3b2db7 ircd:Ⓜ️:state: Cleanup; break down operations. 2018-02-05 18:54:56 -08:00
Jason Volk
565a760255 ircd::net: Integrate SRV query composition; RFC1035 records to the user interface. 2018-02-05 18:54:56 -08:00
Jason Volk
b00129071e ircd::rfc1035: Remove the trailing null from the name view. 2018-02-05 18:54:55 -08:00
Jason Volk
3441368b25 ircd::net: Use "service" string in net::hostport. 2018-02-05 18:54:55 -08:00
Jason Volk
a9ac7fd8d9 ircd::net: Add constructions for ipport from rfc1035 resource records. 2018-02-05 18:54:55 -08:00
Jason Volk
46bf944227 ircd::rfc1035: Dynamic abstraction for resource records; minor comments. 2018-02-05 18:54:55 -08:00
Jason Volk
d53eef4ab6 ircd: Eliminate the raw_buffer concept. 2018-02-05 18:54:55 -08:00
Jason Volk
287331d757 ircd::rfc1035: Simplify the answer record results with a string_view. 2018-02-03 14:10:49 -08:00
Jason Volk
cde4507ef6 ircd::rfc1035: Put the record structs into record:: for possible vtable opportunity. 2018-02-03 14:10:49 -08:00