Commit Graph
101 Commits
Author SHA1 Message Date
Luca Matei Pintilie 8c4769e27b Revert "Replace a useless shared_ptr by a unique_ptr"
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`
2025-07-29 15:52:16 +02:00
louiz’ 9cb6a0c2c9 Entirely remove the code for the “preferred_from” nick
Since private messages are now always coming from the server-wide JIDs
2020-09-23 23:38:46 +02:00
louiz’ 212e8e5989 Merge remote-tracking branch 'linkmauve/die-gc1.0-die' 2020-03-11 18:41:43 +01:00
louiz’ e967088986 Make sure we keep the stable-id and origin-id nodes when required
See https://xmpp.org/extensions/xep-0359.html
2020-03-11 00:13:46 +01:00
Emmanuel Gil Peyrot 14fe971183 Don’t treat presence updates as MUC joins
If the user sends a directed presence to an unjoined MUC without a <x/>
element, send a presence error back instead of attempting to join it
again, as this is almost never what the user wants.

Fixes #3415.
2019-11-13 23:25:17 +01:00
Jonas Schäfer c6749ecce0 Make comment more precise 2018-10-03 20:31:50 +02:00
louiz’ b9f6fbd840 Remove an unused function (and a useless debug log) 2018-08-26 18:08:14 +02:00
louiz’ 248e25c22f Replace a useless shared_ptr by a unique_ptr 2018-08-26 15:41:54 +02:00
louiz’ 0b8738d87a Archive the Mode messages, except if they are received for an unjoined chan
fix #3362
2018-06-22 21:35:46 +02:00
louiz’ 21a79b7bad Reject messages from unjoined resources, with an error
fix #3346
2018-06-19 21:33:33 +02:00
louiz’ e2fc3cf68e Properly handle force-join presences by sending everything in return
fix #3305
2018-03-23 16:16:30 +01:00
louiz’ faa33c1a71 Pass an IrcClient* to send_muc_leave instead of doing an other search 2018-03-22 20:44:30 +01:00
louiz’ 619c991a69 Add a nick field in the IRC server configuration form
fix #3317
2018-03-19 20:15:44 +01:00
louiz’ 9500bfd4cc Reflect message IDs in channel MUCs
fix #3283
2018-03-18 19:33:07 +01:00
louiz’ bb596582bd Add a <item/> node in the presence of a leaving participant
fix #3339
2018-03-12 00:13:59 +01:00
louiz’ fcaffb9e77 Add support for the "history" node on MUC join
Supports the "seconds", "maxstanzas", "since" and "maxchars" (but only =0)
attributes.

fix #3270
2017-08-27 22:37:46 +02:00
louiz’ f9a6f97396 Implement the roster presences from IRC servers 2017-07-16 00:16:43 +02:00
louiz’ 9fa1852c7e Send status code='332' on biboumi or IRC server’s shutdown 2017-07-08 18:10:47 +02:00
louiz’ 5ef674c486 Revert "Add a linger_time configuration option on IRC servers"
This reverts commit 5d801ddcd0.
2017-04-20 10:12:00 +02:00
louiz’ e3ee824e5c Revert "Cancel the IRC server linger timer when we try to-rejoin a channel on it"
This reverts commit 45f7396c8d.
2017-04-20 10:09:35 +02:00
louiz’ 51696c091c Make sure the channel is joined before trying to leave it
fix #3243
2017-04-19 23:33:48 +02:00
louiz’ 68d6b82940 Properly handle multiline topics
fix #3254
2017-04-09 23:05:32 +02:00
louiz’ be9c577de8 Apply all the clang-tidy performance-* fixes 2017-04-07 19:01:49 +02:00
louiz’ 1a09c965eb Remove two sneaky log_debug 2017-03-29 23:32:43 +02:00
louiz’ b7789fe586 Add a Persistent option on channels
fix #3230
2017-03-27 11:49:07 +02:00
louiz’ f0bc6c83a8 Pass the shared_ptr by reference, to avoid useless copies 2017-03-08 19:04:15 +01:00
louiz’ 45f7396c8d Cancel the IRC server linger timer when we try to-rejoin a channel on it 2017-01-25 19:55:45 +01:00
louiz’ 5d801ddcd0 Add a linger_time configuration option on IRC servers 2017-01-22 21:31:50 +01:00
louiz’ e397fc837e Send iq error/result when the user changed a MODE command with an iq
And add tests for all the mode changes
2016-12-18 17:21:15 +01:00
louiz’ eca31ce8db Do not change the nick when joining a second room with a different nick
As the doc says, the nick changes must be explicit in an already joined
room, and not when joining a room.
2016-12-11 17:05:52 +01:00
louiz’ d872c2b492 Support the ident protocol
fix #3211
2016-11-15 00:23:19 +01:00
louiz’ 7376831bc8 Add get-irc-connection-info adhoc command
fix #3171
2016-11-07 14:43:07 +01:00
louiz’ 8ac8d2b242 Correctly set status="110" in the presence for the target of a kick 2016-10-07 23:28:40 +02:00
louiz’ b29225601a Fix some compilation warning/errors that appear on FreeBSD 2016-10-03 17:58:16 +02:00
louiz’ 76a8189b46 Implement result-set-management for LIST queries
ref #2948
2016-10-03 01:08:48 +02:00
louiz’ 07e2209596 Add the missing & for 3 std::string function arguments 2016-09-22 00:00:13 +02:00
louiz’ cfebca4d7c Only save the logs if recordHistory global config option is true 2016-08-23 01:11:51 +02:00
louiz’ d1626c929f When joining a channel, send the most recent history found in the database 2016-08-22 00:44:17 +02:00
louiz’ 4c8fb9a0e3 Forward IRC invites to XMPP 2016-08-18 20:33:41 +02:00
louiz’ 5406de35a3 On a client error, do not QUIT, just make the resource leave all channels
This should fix #3205
2016-08-17 20:47:33 +02:00
louiz’ 663d4ad54a Forward mediated invitations (XMPP to IRC only) 2016-08-16 15:59:00 +02:00
louiz’ 0d2dd71de5 Don’t use ! as the separator for nicknames, use % instead
It’s now easier to use. The distinction between a nick and a channel name is
based on the first character (by default it's '#' and '&'). The user doesn’t
have to worry about which separator to use anymore.

fix #3066
2016-08-10 15:48:28 +02:00
louiz’ 81f8f45b37 Replace all include guards by #pragma once
It’s $CURRENT_YEAR
2016-07-04 17:53:53 +02:00
louiz’ 964784497a Remove forgotten comment 2016-07-04 10:20:16 +02:00
louiz’ 0ce75ab521 Properly remove the resource from the server when we leave the last channel 2016-07-03 16:01:15 +02:00
Emmanuel Gil Peyrot 350d48a5bf Fix typo in bridge.hpp 2016-06-15 21:54:26 +01: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