-
Notifications
You must be signed in to change notification settings - Fork 35
Home
Welcome to the DJabberd wiki!
For general information look at README
See XEP Coverage for the list of available plugins covering various extensions.
DJabberd was written to be compliant with older RFC3920/21 mostly, however newer RFC6120/6121 is compatible in many places with older specification and with a time DJabberd has grown to support many missing elements.
DJabberd does maintain compatibility with obsolete RFC3920/3921 (aka stream v0.9) as well as almost all mandatory features outlined in RFC6120 and RFC6121. However since DJabberd core implements only the foundation for XMPP it may not directly support all of the features of the respective RFCs - instead the implementation could be delegated to plugins.
RFC | Status | Description |
---|---|---|
RFC3920 | Supported | (Obsolete) XMPP Core - the base of DJabberd implementation |
RFC3921 | Supported | (Obsolete) XMPP IM - the base of DJabberd implementation |
RFC6120 | Supported | XMPP Core - Since version 0.90 should be mostly compliant except the Missing Features below |
RFC6121 | Supported | XMPP IM - Since version 0.90 should be mostly compliant except the Missing Features below |
RFC6122 | Supported | (Obsolete) XMPP Address Format |
RFC7622 | Partially | XMPP Address Format - still follows 6122, needs facelift to the latest stringprep/PRECIS |
RFC7712 | Partially | XMPP Domain Name Association (DNA) - Only supports PKIX and Dialback proofs (as per XMPP Core) |
RFC7950 | Supported | Recommendations for using TLS with XMPP. DJabberd follows those recommendations (at least gives controls for system administrator to apply them) |
RFC8553 | Partially | The SRV record lookup as per defined registery is used to discover TCP endpoint. TXT lookup is not supported. |
Following optional features are supported by the core implementation:
- S2S Connection - disabled by default but are shipped out of the box with Server Dialback [XEP-0220] and SASL EXTERNAL [XEP-0178] authentication
- Roster Versioning - the core supports ver attribute and handles versioned roster items, however RosterStorage must support them as well.
- SCRAM-SHA-256-PLUS - RFC 6120 mandates SCRAM-SHA-1 at the least, -PLUS is supported with tls-unique, tls-server-end-point and tls-exporter binding types.
- Pre-approved subscription