Commit Graph

45 Commits

Author SHA1 Message Date
Matthias Ahouansou
62f1da053f feat(appservice): support timestamped messaging 2024-06-25 10:25:58 +01:00
Matthias Ahouansou
c453d45598 fix(keys): only use keys valid at the time of PDU or transaction, and actually refresh keys
Previously, we only fetched keys once, only requesting them again if we have any missing, allowing for ancient keys to be used to sign PDUs and transactions
Now we refresh keys that either have or are about to expire, preventing attacks that make use of leaked private keys of a homeserver
We also ensure that when validating PDUs or transactions, that they are valid at the origin_server_ts or time of us receiving the transaction respectfully
As to not break event authorization for old rooms, we need to keep old keys around
We move verify_keys which we no longer see in direct requests to the origin to old_verify_keys
We keep old_verify_keys indefinitely as mentioned above, as to not break event authorization (at least until a future MSC addresses this)
2024-06-12 19:41:43 +02:00
Matthias Ahouansou
144d548ef7 fix: permission checks for aliases 2024-06-12 19:41:31 +02:00
Matthias Ahouansou
19154a9f70 refactor: add server_user to globals 2024-05-31 21:56:11 +01:00
Matthias Ahouansou
6c2eb4c786 feat(admin): remove alias command 2024-05-29 17:49:51 +01:00
tony
6bcc2f80b8 add command to set the allow registration status
Co-Authored-By: Matthias Ahouansou <matthias@ahouansou.cz>
2024-05-29 09:25:08 +01:00
Matthias Ahouansou
8876d54d78 feat(admin): add hash-and-sign-event command 2024-05-05 17:35:02 +01:00
Matthias Ahouansou
9db1f5a13c fix(admin): don't allow creation of remote users 2024-05-02 10:45:04 +01:00
Matthias Ahouansou
ab8592526f Replace panic!() with unreachable!() 2024-04-12 05:14:39 +00:00
Val Lorentz
b5e21f761b Merge branch 'next' into 'room-v11'
# Conflicts:
#   src/service/rooms/timeline/mod.rs
#   src/utils/error.rs
2024-04-11 17:34:42 +00:00
Matthias Ahouansou
110b7e10e6 fix: do not allow administration of remote users 2024-04-05 10:56:28 +01:00
Matthias Ahouansou
b20483aa13 refactor(appservices): avoid cloning frequently 2024-03-22 20:53:27 +00:00
Matthias Ahouansou
fa930182ae fix(appservices): don't panic on empty registration url
perf(appservices): cache regex for namespaces
2024-03-10 13:27:48 +00:00
Matthias Ahouansou
becaad677f refactor: use async-aware RwLocks and Mutexes where possible 2024-03-05 14:23:59 +00:00
Matthias Ahouansou
4934020ee7 style: remove unnecessary else block 2024-03-04 09:33:03 +00:00
Matthias Ahouansou
da5975d727 fix: avoid panics when admin room is not available 2024-03-03 22:42:24 +00:00
Matthias Ahouansou
e06e15d4ec fix(accounts): don't give guests admin 2024-03-03 11:26:58 +00:00
strawberry
a2ac491c54 bump ruma, add wrong room keys error code, tiny logging change
can't update ruma to very latest commit because of the weird JsOption thing for syncv4 that i can't wrap my head around how to use, not important anyways

Signed-off-by: strawberry <strawberry@pupbrain.dev>
2024-02-16 20:45:27 +00:00
Charles Hall
0d17aedae5 fix cargo doc lints
Rustdoc (rightfully) thought the `[commandbody]` "tags" were broken
links, so I've just made them links to nothing instead.
2024-01-24 07:22:37 -08:00
Val Lorentz
8175bc1246 Explicitly match RoomVersionId::V11 2023-12-24 19:04:48 +01:00
Val Lorentz
d39d30008a Remove "creator" property from rooms >= v11 2023-12-01 15:11:26 +01:00
Timo Kösters
75c80df271 Sliding sync improvements and redaction fixes 2023-09-13 20:54:53 +02:00
Timo Kösters
606b25b9e7 improvement: more forgiving admin command syntax 2023-08-10 17:26:55 +02:00
Timo Kösters
da907451e7 Admin commands to sign and verify jsons 2023-07-29 20:00:12 +02:00
Timo Kösters
a2c3256ced improvement: better memory usage and admin commands to analyze it 2023-07-03 19:41:07 +02:00
Kévin Commaille
f53ecaa97d Bump Ruma 2023-03-18 15:03:56 +01:00
Timo Kösters
fc0aff20cf fix: allow reactivation of users using reset-password admin command 2023-02-11 12:43:41 +01:00
Nyaaori
c86313d4fa chore: code cleanup
https://rust-lang.github.io/rust-clippy/master/index.html#op_ref

https://rust-lang.github.io/rust-clippy/master/index.html#str_to_string

https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
2022-12-21 10:42:12 +01:00
Nyaaori
66bc41125c refactor: cleanup 2022-11-21 20:50:39 +01:00
Nyaaori
cc3e1f58cc Bump default room version to V9; per matrix spec recommendation 2022-10-15 12:16:02 +02:00
Charles Hall
7ef9fe3454 add regression tests
This way we don't regress on accident again in the future.
2022-10-12 17:58:43 -07:00
Charles Hall
fc852f8be6 resolve cargo check --features clap/deprecated
This has no functional effects.
2022-10-12 17:55:12 -07:00
Jim
df8703cc13 Lightning bolt optional 2022-10-10 14:34:28 +02:00
Nyaaori
f430b87459 cargo clippy 2022-10-10 14:09:11 +02:00
Timo Kösters
6b131202b9 Bump ruma 2022-10-10 14:02:04 +02:00
Timo Kösters
8b5b7a1f63 fix: panic on launch
Now we start the admin and sending threads at a later time.
2022-10-10 14:02:02 +02:00
Timo Kösters
7822a385bb cargo fmt 2022-10-10 14:02:02 +02:00
Timo Kösters
d5b4754cf4 0 errors left! 2022-10-10 14:02:02 +02:00
Timo Kösters
f47a5cd5d5 cargo fix 2022-10-10 14:02:01 +02:00
Timo Kösters
a4637e2ba1 cargo fmt 2022-10-10 14:02:01 +02:00
Timo Kösters
44fe6d1554 127 errors left 2022-10-10 14:02:00 +02:00
Timo Kösters
cff52d7ebb messing around with arcs 2022-10-10 14:02:00 +02:00
Timo Kösters
8708cd3b63 431 errors left 2022-10-10 14:02:00 +02:00
Timo Kösters
bd8b616ca0 Fixed more compile time errors 2022-10-10 13:54:00 +02:00
Nyaaori
e1e87b8d0c refactor: prepare service/admin/mod.rs from service/admin.rs 2022-10-10 13:52:07 +02:00