xmppo / go-xmpp

Go XMPP Library (From Yasuhiro Matsumoto and based on the code from Russ Cox)
https://golang.org/
BSD 3-Clause "New" or "Revised" License
526 stars 170 forks source link

Add support for SASL2 and BIND2 #187

Closed mdosch closed 5 months ago

mdosch commented 5 months ago

I added some basic support for XEP-0388: Extensible SASL Profile and XEP-0386: Bind 2.

@mattn as this would introduce a new dependency (google/uuid as XEP-0388 requires the use of a valid UUIDv4) I'd like to ask your opinion.

mdosch commented 5 months ago

I realized that the id is supposed to be a stable per installation client identifier:

The 'id' attribute is RECOMMENDED, and if present contains a unique stable identifier for the client installation. The contents of the 'id' attribute MUST be a UUID v4. Therefore the ID should be supplied by the client (the user of the lib) and not generated by the lib, so I dropped the dependency on google/uuid.