Philipp Hörist pushed to branch master at gajim / python-nbxmpp
Commits:
a108b3d6 by Philipp Hörist at 2026-03-05T22:00:24+01:00
feat: Implement XEP-445 Pre-Auth IBR
- - - - -
648b3376 by Philipp Hörist at 2026-03-05T22:01:44+01:00
other: Update python-nbxmpp.doap
- - - - -
4 changed files:
- nbxmpp/modules/register/register.py
- nbxmpp/namespaces.py
- nbxmpp/protocol.py
- python-nbxmpp.doap
Changes:
=====================================
nbxmpp/modules/register/register.py
=====================================
@@ -42,6 +42,19 @@ class Register(BaseModule):
response = yield _make_unregister_request(jid)
yield process_response(response)
+ @iq_request_task
+ def send_preauth(self, token: str, jid: JID | None = None):
+ _task = yield
+
+ if jid is None:
+ jid = self._client.domain
+
+ iq = Iq("set", to=jid)
+ iq.addChild("preauth", namespace=Namespace.PARS, attrs={"token":
token})
+
+ response = yield iq
+ yield process_response(response)
+
@iq_request_task
def request_register_form(self, jid: JID | None = None):
_task = yield
=====================================
nbxmpp/namespaces.py
=====================================
@@ -73,6 +73,7 @@ class _Namespaces:
HTTPUPLOAD_0: str = "urn:xmpp:http:upload:0"
HTTP_AUTH: str = "http://jabber.org/protocol/http-auth"
IBB: str = "http://jabber.org/protocol/ibb"
+ IBR_TOKEN = "urn:xmpp:ibr-token:0" # noqa: S105
IDLE: str = "urn:xmpp:idle:1"
JINGLE: str = "urn:xmpp:jingle:1"
JINGLE_BYTESTREAM: str = "urn:xmpp:jingle:transports:s5b:1"
=====================================
nbxmpp/protocol.py
=====================================
@@ -2032,6 +2032,9 @@ class Features(Node):
def has_register(self) -> bool:
return self.getTag("register", namespace=Namespace.REGISTER_FEATURE)
is not None
+ def has_ibr_token(self) -> bool:
+ return self.getTag("register", namespace=Namespace.IBR_TOKEN) is not
None
+
def has_anonymous(self) -> bool:
return "ANONYMOUS" in self.get_mechs()
=====================================
python-nbxmpp.doap
=====================================
@@ -373,6 +373,13 @@
<xmpp:note>Basic Spam/Abuse reporting via XEP-0191</xmpp:note>
</xmpp:SupportedXep>
</implements>
+ <implements>
+ <xmpp:SupportedXep>
+ <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0379.html"/>
+ <xmpp:status>complete</xmpp:status>
+ <xmpp:version>0.3.3</xmpp:version>
+ </xmpp:SupportedXep>
+ </implements>
<implements>
<xmpp:SupportedXep>
<xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0380.html"/>
@@ -451,6 +458,13 @@
<xmpp:version>0.1.0</xmpp:version>
</xmpp:SupportedXep>
</implements>
+ <implements>
+ <xmpp:SupportedXep>
+ <xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0445.html"/>
+ <xmpp:status>complete</xmpp:status>
+ <xmpp:version>0.2.0</xmpp:version>
+ </xmpp:SupportedXep>
+ </implements>
<implements>
<xmpp:SupportedXep>
<xmpp:xep rdf:resource="https://xmpp.org/extensions/xep-0461.html"/>
View it on GitLab:
https://dev.gajim.org/gajim/python-nbxmpp/-/compare/8ec6c9d0d0a52cec91d9e7efd0babf88ea9ff311...648b3376239fc1c59cd2a5bc23285a36741b70be
--
View it on GitLab:
https://dev.gajim.org/gajim/python-nbxmpp/-/compare/8ec6c9d0d0a52cec91d9e7efd0babf88ea9ff311...648b3376239fc1c59cd2a5bc23285a36741b70be
You're receiving this email because of your account on dev.gajim.org.
_______________________________________________
Commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]