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.