Skip to main content

mail4agent_server/
lib.rs

1//! Messenger homeserver: protocol decisions and the Client-Server HTTP routes.
2//!
3//! Decision functions take an already-open `rusqlite::Connection`.
4//! [`http::router`] mounts those decisions on axum. The process opens the
5//! store with [`store::open_messenger_db`] (tesserax-store: SQLCipher, one
6//! writer; [`store::open_read_pool`] adds parallel readers), calls
7//! [`store::set_matrix_server_name`] once, and serves [`http::Homeserver`].
8//! There is no tariff logic and no product identity database; products plug in through
9//! [`identities`] (signed assertions from `m4a-seam`) and [`policy`].
10
11pub mod account;
12pub mod identities;
13pub mod policy;
14pub mod ephemeral;
15pub mod error;
16pub mod dag_schema;
17pub mod events;
18#[cfg(feature = "f3-hash-ids")]
19pub mod f3;
20pub mod fed_edus;
21pub mod schema_guard;
22pub mod fed_rooms;
23pub mod federation;
24pub mod http;
25pub mod key_ops;
26pub mod keys;
27pub mod live;
28pub mod messaging;
29pub mod nick;
30mod push;
31pub mod retention;
32pub mod public_channels;
33pub mod spaces;
34pub mod media;
35pub mod public_forum;
36pub mod rooms;
37pub mod store;
38pub mod sync;
39pub mod sync_token;
40pub mod typing;
41
42pub use error::MatrixError;
43pub use http::{router, Homeserver};
44pub use typing::TypingRegistry;