Commit Graph
411 Commits
Author SHA1 Message Date
louiz’ 80d0c19c5a Refactor, test and improve the way we cut too-long messages for IRC 2016-06-14 20:14:36 +02:00
louiz’ e8671042f7 Improve the signal handling by disabling them while an handler is running 2016-06-14 12:15:31 +02:00
louiz’ 46ff73662c Clean the Config module, use static things instead of a stupid singleton 2016-06-14 03:02:36 +02:00
louiz’ 5a2e611617 Show off, with some variadic templates, for the logger module 2016-06-13 20:46:30 +02:00
louiz’ 272c0e4995 Reset the preferred private JID when all resources leave a room
For example if we are talking in private with nick Joe from
room #foo, and then we leave that room, we start receiving Joe’s
message from the server-wide JID

e2e tests included!!!
2016-06-10 10:00:48 +02:00
louiz’ 2d11a5f494 Support multiple nick session, except for IQs
ref #2556
2016-06-08 01:42:43 +02:00
louiz’ 507d0c2cbe Forward everything to all concerned XMPP resources 2016-06-08 01:42:43 +02:00
louiz’ 66609cfba2 Remove all usage of std::list 2016-06-08 01:42:43 +02:00
louiz’ 711861d40e Add methods to know which resource is on which server or channel 2016-06-08 01:42:43 +02:00
louiz’ 367de4826c Associate a bridge with a bare JID instead of a full JID
ref #2556
2016-06-08 01:42:43 +02:00
louiz’ fdddd447b3 Use “using” instead of typedef 2016-05-13 01:22:49 +02:00
louiz’ af42073830 Style fix
Move all constructors at the top of classes
2016-05-04 14:16:40 +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’ 04d28f968b Forward the topic authors, handle the author from 333 messages
fix #2
2016-04-22 10:49:07 +02:00
louiz’ 464261d4ed Support RPL_NOTPIC and 005 2016-04-22 10:49:06 +02:00
Florent Le Coz 0a352e557d Move the irc callbacks into the cpp file 2016-02-10 19:19:21 +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 4233e1f653 Do not fail to build when litesql is not used
fix #3151
2016-01-09 17:01:22 +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 79cdf170d2 Use the configured encoding value when decoding received messages 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 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 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 de6335b994 Fix a clang warning 2015-11-05 02:37:46 +01:00
Florent Le Coz e8386bd14e Provide an adhoc option to let user pass the cert verif for some IRC servers 2015-11-05 02:17:19 +01:00
Florent Le Coz 0a4041f7e9 Fix the initial IRC nickname (was using realname, by mistake) 2015-11-02 17:14:21 +01:00
Florent Le Coz 6fb4cf5e4d Do not forget to implement a method 2015-10-31 06:23:51 +01:00
Florent Le Coz 34fc1d4010 Implement a basic webirc support
See https://kiwiirc.com/docs/webirc

fix #3135
2015-10-31 06:17:35 +01:00
Florent Le Coz 2c932cf0f7 Fix the double sending of the USER command 2015-10-31 05:36:33 +01:00
Florent Le Coz 6c42286109 Remove some useless includes 2015-10-31 05:36:18 +01:00
Florent Le Coz 580b721ba5 Remove a write to std::cout from Database’s constructor 2015-10-29 03:35:25 +01:00
Florent Le Coz 3c1889fbd0 Use Catch for our test suite
`make check` is also added to compile and run the tests
Catch is fetched with cmake automatically into the build directory when needed
2015-10-29 02:32:57 +01:00
Florent Le Coz 142516a69b Fix some trivial issues reported by cppcheck 2015-10-26 20:09:39 +01:00
Florent Le Coz e43ca29e94 Fix the jidprep tests when built without libidn 2015-10-26 20:01:57 +01:00
Florent Le Coz e46b9cfc6e Display a success message at the end of the test suite 2015-10-24 15:24:40 +02:00
Florent Le Coz e7a91badcd Use “using” instead of typedef 2015-10-24 15:21:05 +02:00
Florent Le Coz 2c89b9f193 Remove an unused include 2015-10-24 15:20:29 +02:00
Florent Le Coz 83bd57b190 Some little fixes in test.cpp 2015-10-24 15:19:55 +02:00
Florent Le Coz 74c73799ab Only compile database.cpp if configured with litesql 2015-10-24 15:17:53 +02:00
Florent Le Coz aa340e1c5e Separate the DNS resolution logic from the TCP communication logic
fix #3137
2015-10-15 04:32:02 +02:00
Florent Le Coz 1aa2c2d857 Introduce the realname_from_jid option
When set to true, the realname and username are extracted (by default) from
the user’s JID

fix #3136
2015-10-12 17:14:29 +02:00
Florent Le Coz 84aafab604 Provide the “realname_customization” option
ref #3136
2015-10-12 16:47:27 +02:00
Florent Le Coz 6512f830fa The realname is also saved as an IrcClient member 2015-10-12 16:35:50 +02:00