First code for inbuxa-relay: a new crate, crates/relay-proto, shared by the relay and the server. JMAP envelope and RFC 8887 frames, the relay types, the join token and proof (RL-8), recipient hashing and lookup (RL-1, RL-11), and HPKE sealing of the inbound spool (RL-21), checked against the RFC 9180 A.2.1 vectors. 20 tests. Nothing uses it yet, so the server build is unchanged.
First code for inbuxa-relay: a new crate, `crates/relay-proto`, shared by the relay and the server. JMAP envelope and RFC 8887 frames, the relay types, the join token and proof (RL-8), recipient hashing and lookup (RL-1, RL-11), and HPKE sealing of the inbound spool (RL-21), checked against the RFC 9180 A.2.1 vectors. 20 tests. Nothing uses it yet, so the server build is unchanged.
The first code for inbuxa-relay (docs/spec/features/relay.md), shared by
the relay and the server:
- jmap: requests, responses, RFC 8887 WebSocket frames, the session,
and the relay's method names
- types: Relay settings and status, RecipientDomain, Inbound with its
RFC 8621 Envelope and session, Verdict, RelayEvent
- token: the join token and its HMAC proof (RL-8)
- recipient: normalizing, hashing and deciding recipients (RL-1, RL-11)
- seal: HPKE base mode (X25519, HKDF-SHA256, ChaCha20-Poly1305) over a
chunked stream bound to the message id (RL-21), checked against
RFC 9180 A.2.1
- pin, time: key pins and JMAP UTCDate
Depends only on aws-lc-rs, base64 and serde, all already in the tree.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
First code for inbuxa-relay: a new crate,
crates/relay-proto, shared by the relay and the server. JMAP envelope and RFC 8887 frames, the relay types, the join token and proof (RL-8), recipient hashing and lookup (RL-1, RL-11), and HPKE sealing of the inbound spool (RL-21), checked against the RFC 9180 A.2.1 vectors. 20 tests. Nothing uses it yet, so the server build is unchanged.