Skip to main content

xmtp_configuration/common/
metadata.rs

1pub const DEFAULT_GROUP_NAME: &str = "";
2pub const DEFAULT_GROUP_DESCRIPTION: &str = "";
3pub const DEFAULT_GROUP_IMAGE_URL_SQUARE: &str = "";
4
5/// MLS Extension Types
6///
7/// Copied from draft-ietf-mls-protocol-16:
8///
9/// | Value            | Name                     | Message(s) | Recommended | Reference |
10/// |:-----------------|:-------------------------|:-----------|:------------|:----------|
11/// | 0x0000           | RESERVED                 | N/A        | N/A         | RFC XXXX  |
12/// | 0x0001           | application_id           | LN         | Y           | RFC XXXX  |
13/// | 0x0002           | ratchet_tree             | GI         | Y           | RFC XXXX  |
14/// | 0x0003           | required_capabilities    | GC         | Y           | RFC XXXX  |
15/// | 0x0004           | external_pub             | GI         | Y           | RFC XXXX  |
16/// | 0x0005           | external_senders         | GC         | Y           | RFC XXXX  |
17/// | 0xff00  - 0xffff | Reserved for Private Use | N/A        | N/A         | RFC XXXX  |
18pub const MUTABLE_METADATA_EXTENSION_ID: u16 = 0xff00;
19pub const GROUP_MEMBERSHIP_EXTENSION_ID: u16 = 0xff01;
20pub const GROUP_PERMISSIONS_EXTENSION_ID: u16 = 0xff02;
21pub const WELCOME_WRAPPER_ENCRYPTION_EXTENSION_ID: u16 = 0xff03;
22pub const WELCOME_POINTEE_ENCRYPTION_AEAD_TYPES_EXTENSION_ID: u16 = 0xff04;
23// 0xff05 was the custom XMTP `PROPOSAL_SUPPORT` extension id, removed
24// in favor of the standard MLS `ExtensionType::AppDataDictionary`
25// advertisement + `RequiredCapabilities` mechanism. Do not reuse this
26// id — any historical artifact carrying it on the wire should be
27// treated as a no-op opaque extension by the unknown-component
28// tolerance machinery.