summaryrefslogtreecommitdiff
path: root/README
AgeCommit message (Collapse)Author
2024-01-29Set CURLOPT_INFILESIZE on HTTP file uploadHEADmasterdefanor
2023-11-17Implement MUC self-ping (XEP-0410)defanor
2023-09-29Add more checks, tests, and documentationdefanor
2023-09-28Support Nettle and OpenSSL for hashing, in addition to Libgcryptdefanor
2023-09-26Support OpenSSL for DTLS-SRTPdefanor
2023-09-21Handle audio I/O, codecs, and RTP for Jingle callsdefanor
2023-09-09Use rxml for XML parsing when building with Rustdefanor
2023-09-08Support libexpat as an alternative XML parserdefanor
2023-05-23Replace libxml2's xmlNode with a custom XML structuredefanor
The new structure (rexmpp_xml) is simpler, and should allow manipulation from Rust without any dependency on libxml2 from the Rust code (while Rust has its own parsers, such as rxml). Alternative XML parsers (e.g., libexpat) now can be used from the C code. The replacement/abstraction is not quite complete yet: the parsing process itself (xmlParseChunk and friends) should be abstracted out.
2023-05-05Introduce an alternative implementation of rexmpp_socks in Rustdefanor
Possibly other modules will follow. Aiming to provide memory-safe(r) alternatives, while keeping the C versions as well.
2022-01-10Add a basic testdefanor
2021-10-13Implement Jingle RTP sessions with ICE-UDP and DTLS-SRTPdefanor
Works with Dino and Conversations, but currently relying on external players and streamers for actual audio playback and capture. For now requiring GnuTLS and libnice for calls; OpenSSL should be supported as an alternative to the former, and the latter should be made optional, maybe with libjuice as an alternative.
2021-10-02Make libgsasl optionaldefanor
Only EXTERNAL and PLAIN mechanisms are supported without it for now.
2021-10-02Use libgcrypt for hashing and randomdefanor
Libgsasl will probably be made optional, so another source of random is needed. Libgsasl uses libgcrypt underneath. Gcrypt, unlike nettle, handles random seeding on its own, which would be annoying to implement for different platforms otherwise.
2021-10-01Add Jingle file transfer over IBBdefanor
2021-09-25Implement XEP-0363: HTTP File Uploaddefanor
2021-09-25Add recursive feature search (rexmpp_disco_find_feature)defanor
2021-09-25Introduce IQ cachingdefanor
Aiming its usage for service discovery, and possibly similar information retrieval activities.
2021-09-23Handle XEP-0092: Software Versiondefanor
2021-09-22Reintroduce c-ares as an option for DNS lookupsdefanor
2021-09-21Make libunbound optionaldefanor
Just use gethostbyname when it's disabled. Possibly will add c-ares, getaddrinfo_a, and other options in the future.
2021-09-20Update README, comments, help stringsdefanor
2021-09-19Make GPGME optionaldefanor
2021-09-19Allow to build without ICU (and JID checks)defanor
2021-09-19Introduce OpenSSL and no-TLS options, in addition to GnuTLSdefanor
Also an option to require TLS is added. There's no DANE TLSA checks with OpenSSL yet, TLS session resumptions and ALPN aren't used with it; just basic connections with certificate verification are added. And now SASL EXTERNAL authentication isn't quite usable.
2021-08-29Update to Debian 11 versions of dependenciesdefanor
Now it builds with newer compiler and library versions, the ones from Debian 11 repositories.
2021-02-28Add the initial Emacs interfacedefanor
2021-02-15Add optional text console usage into basic.cdefanor
Now it should be usable as a basic CLI client, in addition to an XML console.
2021-02-12Add a few XEP-0060 (pubsub) helper functionsdefanor
2021-02-11Add initial JID checksdefanor
The rexmpp_jid_check function now ensures that JID parts are valid UTF-8 strings, and that only allowed code points (per RFC 8265) are used in those. Though there is a few more checks to perform still.
2021-02-08Adjust and document XEP-0373 APIdefanor
2020-11-30Reconnect on "reset" and "system-shutdown" stream errorsdefanor
2020-11-22Increase the supported XEP-0373 versiondefanor
2020-11-22Add the console moduledefanor
2020-11-22Mention implemented XEP versionsdefanor
2020-11-20Handle XEP-0402: PEP Native Bookmarksdefanor
2020-11-19Implement XEP-0373: OpenPGP for XMPPdefanor
Various checks and utility functions should still be added, and it currently relies on gpg(1) for key generation and validation, but PEP-based key distribution and basic OpenPGP functionality are there.
2020-11-17Support XEP-0163 (PEP) and XEP-0172 (User Nickname)defanor
2020-11-17Add initial JID parsingdefanor
2020-11-16Update the roadmapdefanor
2020-11-14Remove the c-ares dependencydefanor
2020-11-13Switch from c-ares to libunbounddefanor
libunbound supports DNSSEC, which is needed for DANE TLSA: GnuTLS verifies a certificate for the final host, but SRV and A/AAAA records leading to it should be verified as well. c-ares is still used to parse domain names in SRV records, but should be replaced soon.
2020-11-12Check server certificates using DANE (TLSA)defanor
Currently it is just experimental and does not affect the verification (except for adding a delay); perhaps the verification should be made configurable, including an option to rely on DANE.
2020-10-02Update the roadmapdefanor
2020-07-05Add presence trackingdefanor
Presence of roster contacts is tracked by rexmpp now (optionally, by default), and the weechat plugin marks online contacts with the "+" prefix.
2020-06-04Implement XEP-0199: XMPP Pingdefanor
2020-06-01Add a crude WeeChat plugindefanor
Only usable as an XML console and for basic one-to-one chats, and quite messy, but probably will be extended and refactored later.
2020-04-02Fix a typodefanor
2020-03-31Introduce a Texinfo manualdefanor
2020-03-29Add initial Entity Capabilities supportdefanor
Only announcing our own capabilities in the initial <presence>.