Commit Graph
100 Commits
Author SHA1 Message Date
louiz’ 0b1bf92479 e2e: possibility to extract a value from a stanza and reuse it in send_stanza 2016-05-13 15:17:29 +02:00
louiz’ fdddd447b3 Use “using” instead of typedef 2016-05-13 01:22:49 +02:00
louiz’ ce2b8a15f1 ci: Have two builds: on fedora and on debian 2016-05-12 11:41:54 +02:00
louiz’ e8e60b715c Add a Dockerfile for biboumi-test-debian 2016-05-12 11:41:34 +02:00
louiz’ cef238e700 Do not use std::endl for each line when saving the conf file 2016-05-11 00:56:49 +02:00
louiz’ ce798b1e8c Fix build with POLLER=POLL 2016-05-10 12:50:05 +02:00
louiz’ 06439fa2fc Run e2e in a subdirectory and lighten the build artifacts 2016-05-04 14:25:30 +02:00
louiz’ af42073830 Style fix
Move all constructors at the top of classes
2016-05-04 14:16:40 +02:00
louiz’ 305e01c0b5 Update .gitignore 2016-04-28 15:52:30 +02:00
louiz’ 98517e9a7b Change the name of the DB in the e2e tests 2016-04-27 11:04:05 +02:00
louiz’ 1e56c59e82 Include the Configure ad-hoc command on biboumi's JID for fixed_irc_server
Because a jid like “freenode.example.org” is both the JID for the configured
IRC server, and biboumi’s JID.

fix #3175
2016-04-27 11:03:52 +02:00
louiz’ 82e0cf99b0 Trivial cleanup 2016-04-25 10:43:20 +02:00
louiz’ d452c2ff18 Add e2e tests for the ad-hoc listing on the server jid 2016-04-25 10:43:20 +02:00
louiz’ b98402c972 Remove a forgotten comment
[ci skip]
2016-04-22 15:06:45 +02:00
louiz’ 254249dd78 Test the the virtual channel 2016-04-22 15:03:29 +02:00
louiz’ 376b28172b tests: Split the connection sequence into two
We can now insert steps between the two parts
2016-04-22 15:02:28 +02:00
louiz’ 38a59c38ff Add a Dockerfile to build a biboumi-test image 2016-04-22 11:58:18 +02:00
louiz’ 3fe55ab0b3 Remove an unused variable 2016-04-22 11:57:58 +02:00
louiz’ 439ea26223 Add a basic fixed_server e2e scenario 2016-04-22 11:57:58 +02:00
louiz’ ea35a12d5b Each e2e scenario can provide its own config name 2016-04-22 11:57:32 +02:00
louiz’ 747f04ee6d Move the e2e tests out of make check 2016-04-22 10:49:07 +02:00
louiz’ 3119ec72f3 Force LANG to en_US when generating biboumi.spec (fixes the date format) 2016-04-22 10:49:07 +02:00
louiz’ 327c821f46 Write irc output into a file 2016-04-22 10:49:07 +02:00
louiz’ ee9b7f55bb Run make rpm, in the ci 2016-04-22 10:49:07 +02:00
louiz’ 3ddca86851 Debug and exit if IRC server startup fails 2016-04-22 10:49:07 +02:00
louiz’ 71b3f8f50b Correct charybdis config file path 2016-04-22 10:49:07 +02:00
louiz’ 04facc515c Provide a conf for charybdis 2016-04-22 10:49:07 +02:00
louiz’ 04d28f968b Forward the topic authors, handle the author from 333 messages
fix #2
2016-04-22 10:49:07 +02:00
louiz’ 64f341ee80 e2etests: Use charybdis and update the scenarios accordingly 2016-04-22 10:49:06 +02:00
louiz’ bd625aa59b e2etests: we are able to receive optional stanzas 2016-04-22 10:49:06 +02:00
louiz’ 45f442b67d More tests 2016-04-22 10:49:06 +02:00
louiz’ e0ee881f10 Remove localdomain 2016-04-22 10:49:06 +02:00
louiz’ 065f52a0b3 Add mammond conf 2016-04-22 10:49:06 +02:00
louiz’ 464261d4ed Support RPL_NOTPIC and 005 2016-04-22 10:49:06 +02:00
louiz’ 606700f4c5 Improve e2e test, start mammond ourself, etc 2016-04-22 10:49:06 +02:00
louiz’ 73ad709ddf Add a TEMPORARY work-around for botan 1.11.29 2016-04-22 10:49:06 +02:00
louiz’ d57b8bb8c3 Trivial formatting 2016-04-22 10:49:06 +02:00
louiz’ b32729fb8a Convert README, INSTALL etc to markdown 2016-04-22 10:49:06 +02:00
louiz’ 14930284a7 Fetch Catch from our own clone, instead of the github one.
Avoids:

- Relying on github’s services
- Fetching a new (malicious) version, automatically, without any “check”
2016-03-24 10:06:02 +01:00
Florent Le Coz 55d1d81771 Provide a better way to check stanzas at each step of the end_to_end test 2016-02-29 17:59:47 +01:00
Florent Le Coz 13eceeeecf Include a note on own to contribute changes 2016-02-28 21:56:50 +01:00
Florent Le Coz b47179f125 Fix the ordering of poll callbacks, with ppoll too 2016-02-24 09:31:30 +01:00
Florent Le Coz b29d94444d Close the epoll fd 2016-02-24 09:31:30 +01:00
Florent Le Coz 1f1a27c930 Fix a few ci things 2016-02-24 09:31:30 +01:00
Florent Le Coz 1ee5f8e01a end_to_end creates a config file before running biboumi 2016-02-24 09:31:30 +01:00
Florent Le Coz 51a34f83f9 Add a basic integration test in python 2016-02-24 09:30:37 +01:00
Florent Le Coz 37fd6ff18a log the handshake + stream opening/close in a more consistent way 2016-02-22 17:03:15 +01:00
Florent Le Coz 6ee80ad268 Fix the ordering of poll callbacks (recv, connect, send)
Because if we have a send event to signal the connection sucess + a recv
event to signal something to read on the socket, we need to first finish the
connect process before reading the available data. That’s what we do now.
2016-02-22 17:03:15 +01:00
Florent Le Coz 4cd97f7e88 Simplify the ci file 2016-02-17 20:21:02 +01:00
Florent Le Coz 339176449f Remove the clang ci test that won’t work for a mysterious reason in my docker 2016-02-12 10:09:41 +01:00
Florent Le Coz 218260362f Remove unused xml_unescape() function 2016-02-10 20:23:27 +01:00
Florent Le Coz a13285d0ff Rename BasicCredentialManager 2016-02-10 20:10:40 +01:00
Florent Le Coz 0a352e557d Move the irc callbacks into the cpp file 2016-02-10 19:19:21 +01:00
Florent Le Coz 8c249f1447 Build the rpm with gitlab-ci 2016-01-21 16:54:42 +01:00
Florent Le Coz 6770629bd7 Fix a clang-check warning
I think it was a UB
2016-01-21 16:53:29 +01:00
Florent Le Coz 85867976dc Add a “rpm” target in the makefile, building a RPM 2016-01-21 16:53:29 +01:00
Florent Le Coz ae7c54f373 Spec file becomes a template, auto filled with the date and version 2016-01-21 16:53:29 +01:00
Florent Le Coz 0c85ed128a Remove the localhost6 test, that’s not portable at all 2016-01-15 12:14:49 +01:00
Florent Le Coz ccfdb60cc1 Fix a build when litesql is found but not botan
fix #3157
2016-01-15 11:54:33 +01:00
Florent Le Coz d58dcde856 Only activate systemd’s watchdog if we are compiling with systemd
ref #3152
2016-01-14 14:39:06 +01:00
Florent Le Coz 0864f2ab99 Quiet a warning 2016-01-13 16:39:08 +01:00
Florent Le Coz ed49e067a0 Compile with smp_mflags for tests as well 2016-01-13 16:32:04 +01:00
Florent Le Coz 1f8e243164 Display an info message on make dist 2016-01-13 16:28:54 +01:00
Florent Le Coz 3fdc4cb334 Install the unit file in lib/, not etc/ 2016-01-13 16:25:17 +01:00
Florent Le Coz 85dfe06665 Include catch.hpp in the dist tarball 2016-01-13 16:14:10 +01:00
Florent Le Coz 3497b330dc If catch.hpp is found in tests/, use it without cloning the git repo 2016-01-13 16:14:10 +01:00
Florent Le Coz 5da0158fdb Use make check in the spec file 2016-01-13 14:01:05 +01:00
Florent Le Coz 6bebb2f67b Remove the second '-' from the package when ~dev is there 2016-01-13 14:01:05 +01:00
Florent Le Coz 1e79705628 Build the doc with the default make target 2016-01-13 14:01:05 +01:00
Florent Le Coz 25475b60ab Generate systemd file from template and make installs it and the conf
The unit file Type=, as well as the executable path should now be correct
with a simple “make install”, whatever the install prefix and the DESTDIR
values are.

ref #3152
2016-01-13 14:01:04 +01:00
Florent Le Coz 4233e1f653 Do not fail to build when litesql is not used
fix #3151
2016-01-09 17:01:22 +01:00
Florent Le Coz 8ca818f8ab Document the Configure ad-hoc commands 2016-01-04 13:47:28 +01:00
Florent Le Coz 1f8333f23f Support a trusted SHA1 fingerprint to be configured for each IRC server 2016-01-04 13:47:27 +01:00
Florent Le Coz a38b17692e Support multi-prefix
See http://ircv3.net/specs/extensions/multi-prefix-3.1.html
ref #3103
2016-01-04 13:47:27 +01:00
Florent Le Coz dfcb0a6e0e This is no longer true, with the recent xmpp_server_ip configuration option 2016-01-04 13:47:27 +01:00
Florent Le Coz 79cdf170d2 Use the configured encoding value when decoding received messages 2016-01-04 13:47:26 +01:00
Florent Le Coz b0c3aa0be9 Defaults the encoding in the DB to latin-1 2016-01-04 13:47:26 +01:00
Florent Le Coz cb0209bbbe Also provide in and out encoding configure options for IRC servers 2016-01-04 13:47:26 +01:00
Florent Le Coz 1fc3fa1bd8 Add an ad-hoc configure command on IRC channels
Include encodingIn and encodingOut options, unused at the moment
2016-01-04 13:47:26 +01:00
Florent Le Coz 421c960df5 Add a ChannelOptions table in the DB
And a way to retrieve its values, defaulting on the ServerOptions for unset
values.
2016-01-04 13:47:26 +01:00
Florent Le Coz 9ac0d3a576 A few cleanups, and make a few things more modern 2015-12-23 11:05:55 +01:00
Florent Le Coz 9167cdf126 Notify systemd when the process is stopping 2015-12-23 11:05:55 +01:00
Florent Le Coz 9714d02018 Also store a reference instead of a pointer, in AdhocCommandsHandler 2015-12-23 11:05:54 +01:00
Florent Le Coz 7e2427148e Use references instead of raw pointer, to store the “parent” object
In Bridge and IrcClient
2015-12-21 14:51:26 +01:00
Florent Le Coz 1f6eea62f4 Add an ad-hoc command to disconnect a user from one or more IRC server
fix #3077
2015-12-03 21:15:22 +01:00
Florent Le Coz 700a6c7bc3 JID class provides bare() and full() methods 2015-12-03 21:15:22 +01:00
Florent Le Coz 756b297045 Small cleanup 2015-12-03 21:09:03 +01:00
Florent Le Coz 284af79128 Provide a “var” map in AdhocSession objects, to save values between each step 2015-12-03 21:08:04 +01:00
Florent Le Coz 6a7cd5eecf Do not forget to call freeaddrinfo, fix a memleak
For the getaddrinfo call we added in the previous commit, to convert the IP
provided in the conf.
2015-12-03 20:41:48 +01:00
Florent Le Coz 05a82b810f Display a better error when connection fails
The error should not tell “while reading” when we are just connecting.
2015-12-01 16:09:21 +01:00
Florent Le Coz 241768836d Add the outgoing_bind option
Lets the admin choose a local address to bind each outgoing (IRC) socket.
2015-12-01 16:08:40 +01:00
Florent Le Coz 6dcb21a032 Document the fact that the joining-nick is ignored
fix #2695
2015-11-30 21:29:50 +01:00
Florent Le Coz a2fb3d0520 Rename the CI build where we run the coverage 2015-11-30 05:07:01 +01:00
Florent Le Coz 87d00ebe2d Coverage cannot run with clang++ 2015-11-30 05:06:23 +01:00
Florent Le Coz 296a16fa75 Do not segfault when trying to send TLS data over a not-yet connected socket 2015-11-30 03:23:42 +01:00
Florent Le Coz 0620c8e589 Avoid leaking socket filedescriptors
When trying the various results of getaddrinfo, we forgot to close the
socket when one fails, before trying the next one.

Also use the destructor to make sure we do not have some other unrelated
leak.
2015-11-07 23:41:06 +01:00
Florent Le Coz 5027b21fd1 Add verifyCert field into the database 2015-11-05 19:08:19 +01:00
Florent Le Coz 73dffca24e Only include the coverage flags when compiling with gcc 2015-11-05 16:40:09 +01:00
Florent Le Coz de6335b994 Fix a clang warning 2015-11-05 02:37:46 +01:00
Florent Le Coz a44372e1b1 Add a CI build with clang 2015-11-05 02:22:00 +01:00