Rather than trying and hoping the server gives a proper failure, just
fail early and avoid the whole mess. Some servers will instead send
messages to the user, etc, which is not very helpful.
* 'user/luca/xmpp-caps' of https://codeberg.org/aninternettroll/biboumi:
Don't hardcode ver, update node name, and add tests
Allow disco queries with a node (needed for CAPS)
Add gateway/irc and caps
* https://codeberg.org/poezio/biboumi: (65 commits)
build: fix wrong constextpr preventing some compilers from building biboumi
database: various optimizations for SQLite and PostgreSQL
doc(admin): format verify_certificate documentation into a list
Fix RPM builds on Fedora Linux
Systemd service dir is /usr/lib/systemd/system
cmake: Explicitly search for Catch2 version 3
add CAP LS 302 support and max-lines support for draft/multiline messages
install files using GNUInstallDirs
change to direct /doc/
Fix link to documentation
fix multiline private messages
add archive_expires_after option
Fix documentation warnings
fix fedora package
add ctest support and remove absolute path from etc directory
Rename Ports to Unencrypted ports
build docker image from local files, not git clone
update some version strings
add default_persistence_allowed
add persist_user_denylist and persist_user_allowlist
...
On IRC it is confusing when an XMPP user "corrects" a message, but on
the other side a new message is sent. To prevent spam and confusion, do
not allow message corrections at all, and instead return an error if
attempted.
Fixes: #3436Fixes: #3480
RFC 2812 specifies in §1.3 that “Channels names are strings (beginning
with a '&', '#', '+' or '!' character) of length up to fifty (50)
characters.”
We previously only allowed the first two prefix characters, or any other
one if the server overrides the list with ISUPPORT.
The botan dependency has introduced a number of breaking changes with
version 3, a couple of which impact biboumi as well
This patch makes biboumi compatible with botan 3 and drops support for
botan 2 at the same time
As a consequence of the botan dependency update, C++ version has to be
upgraded to C++ 20
https://botan.randombit.net/handbook/migration_guide.html
This reverts commit 248e25c22f.
In preparation for the botan 3 update `IrcClient` must be made into a
`shared_ptr`, which will then allow us to pass a `shared_ptr` of
callbacks to `Botan::TLS::Client`
* 'master' of https://git.louiz.org/biboumi:
Follow-up of the previous on: also catch that on recv events
Catch all botan exception when sending data, not just TLS
Adding a -t configuration flag that will make biboumi check the
configuration file syntax.
Such a syntax check is handy for some deployment tools. It helps the
tooling to statically analyse the configuration file and prevent
unecessesary deployments when the configuration file is clearly
incorrect.
Updating the synopsis with this new flag.