Crate xmpp

Source
Expand description

§Cargo features

§TLS backends

  • aws_lc_rs (default) enables rustls with the aws_lc_rs backend.
  • ring enables rustls with the ring backend`.
  • rustls-any-backend enables rustls, but without enabling a backend. It is the application’s responsibility to ensure that a backend is enabled and installed.
  • ktls enables the use of ktls. Important: Currently, connections will fail if the tls kernel module is not available. There is no fallback to non-ktls connections!
  • native-tls enables the system-native TLS library (commonly libssl/OpenSSL).

Note: It is not allowed to mix rustls-based TLS backends with tls-native. Attempting to do so will result in a compilation error.

Note: The ktls feature requires at least one rustls backend to be enabled (aws_lc_rs or ring).

Note: When enabling not exactly one rustls backend, it is the application’s responsibility to make sure that a default crypto provider is installed in rustls. Otherwise, all TLS connections will fail.

§Certificate validation

When using native-tls, the system’s native certificate store is used. Otherwise, you need to pick one of the following to ensure that TLS connections will succeed:

§Other features

  • starttls (default): Enables support for <starttls/>. Required as per RFC 6120.
  • avatars (default): Enables support for avatars.
  • serde: Enable the serde feature in tokio-xmpp.

Re-exports§

pub use agent::Agent;
pub use builder::ClientBuilder;
pub use builder::ClientType;
pub use event::Event;
pub use feature::ClientFeature;
pub use tokio_xmpp;
pub use tokio_xmpp::jid;
pub use tokio_xmpp::minidom;
pub use tokio_xmpp::parsers;

Modules§

agent
builder
delay
disco
event
feature
iq
message
muc
presence
pubsub
stream
upload

Structs§

RoomNick
Nickname for a person in a chatroom.

Type Aliases§

Error