Skip to main content

Module groups

Module groups 

Source

Re-exports§

pub use self::group_permissions::PreconfiguredPolicies;
pub use intents::UpdateGroupMembershipResult;

Modules§

app_data
App-data plumbing for moving group state from group context extensions onto OpenMLS AppDataUpdate proposals.
change_callbacks
Unstable: post-commit notification of group-state changes.
commit_log
commit_log_key
group_membership
group_permissions
intents
members
message_list
oneshot
send_message_opts
summary
validated_commit
welcome_pointer
welcome_sync

Structs§

ConversationDebugInfo
ConversationListItem
EnableProposalsOptions
Options for MlsGroup::enable_proposals.
FailedInstallationIds
Installation IDs that failed key package verification during a membership update.
GroupMembershipCapabilities
A generic membership/capability snapshot for a group.
InboxCapabilities
Per-inbox grouping of installation capabilities. Callers map inbox_id back to a profile to attribute capabilities to a person.
InitialMembershipValidator
Check every installation against the exact identity state named by the Welcome.
InstallationCapabilities
Capability snapshot for a single installation (device) of a member.
MlsGroup
An LibXMTP MlsGroup NOTE: The Eq implementation compares GroupId, so a dm group with the same identity will be different. the Hash implementation hashes the GroupId
QueryableContentFields
Fields extracted from content of a message that should be stored in the DB
WelcomeMembership
Public membership data from a trial decode. It contains no mutable MLS state.
XmtpWelcome
Create a group from a decrypted and decoded welcome message. An existing group can be replaced only after its removal has been processed.
XmtpWelcomeBuilder
Builder for XmtpWelcome.

Enums§

DeleteMessageError
DmValidationError
GroupError
GroupLeaveValidationError
MetadataPermissionsError
MlsExtensionType
An MLS extension type advertised by an installation’s key package or present in a group’s context.
UpdateAdminListType

Traits§

ValidateGroupMembership
Validate public trial membership, then recheck exact proofs under the writer.

Functions§

build_dm_mutable_metadata_extension_default
build_extensions_for_admin_lists_update
build_extensions_for_membership_update
Build extensions with updated group membership for a GroupContextExtensions proposal. This is used when proposing to add or remove members to include the membership update alongside the Add/Remove proposals.
build_extensions_for_metadata_update
build_extensions_for_permissions_update
build_group_membership_extension
build_mutable_metadata_extension_default
build_starting_group_membership_extension
check_proposals_enabled
Check if the given extensions belong to a migrated group.
filter_inbox_ids_needing_updates
update_required_capabilities_for_bootstrap
Update RequiredCapabilities for the bootstrap commit:
update_required_capabilities_for_proposals
Update the RequiredCapabilities extension to add or remove ExtensionType::AppDataDictionary. Per MLS RFC 9420 §7.2, unknown extensions in the group context MUST be listed in the required capabilities, so this must be called whenever the AppData dictionary extension is added to or removed from the group context.