Commit Graph
142 Commits
Author SHA1 Message Date
louiz’ d1626c929f When joining a channel, send the most recent history found in the database 2016-08-22 00:44:17 +02:00
louiz’ 7d05f9b6ae Fix the author of the IRC invite 2016-08-18 21:13:42 +02:00
louiz’ 4c8fb9a0e3 Forward IRC invites to XMPP 2016-08-18 20:33:41 +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’ 11dcae704a Merge remote-tracking branch 'linkmauve/escaped-iid-support' 2016-06-23 22:17:08 +02:00
louiz’ 57263961b4 Fix a use after free in IrcChannel::remove_user 2016-06-23 22:16:13 +02:00
Emmanuel Gil Peyrot 0391f17f99 Add XEP-0106 support to the bridge
This allows the user to join channels containing forbidden characters
in the local part, like #r&d or #group/project.
2016-06-21 23:15:25 +01:00
louiz’ c1f678e450 Fix a missing include for strlen 2016-06-15 16:47:11 +02:00
louiz’ 430bf3a661 Properly calculate the maximum size of each message line, before cutting
fix #3067
2016-06-15 15:51:13 +02:00
louiz’ 849c50f9f3 Save our own host, as reported by the server 2016-06-15 15:51:13 +02:00
louiz’ 4b1c580bb9 cut messages at 512 bytes, taking into account the UTF-8 codepoints
ref #3067
2016-06-15 15:50:45 +02:00
louiz’ 80d0c19c5a Refactor, test and improve the way we cut too-long messages for IRC 2016-06-14 20:14:36 +02:00
louiz’ 5a2e611617 Show off, with some variadic templates, for the logger module 2016-06-13 20:46:30 +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’ 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’ 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 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 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 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 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 142516a69b Fix some trivial issues reported by cppcheck 2015-10-26 20:09:39 +01: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
Florent Le Coz f904d57940 Provide username and realname IRC server options
Used in the USER command when connecting to the IRC server, instead of the
first nick.

fix #3028
2015-09-23 18:47:29 +02:00
Florent Le Coz 7247228e97 Connection may be closed from our side too 2015-09-22 03:50:08 +02:00
Florent Le Coz ceec989077 Add a field (in the configure form) to specifiy an after-connect IRC command 2015-09-21 18:56:37 +02:00
Florent Le Coz 890cfe9099 Provide Ports and TLS Ports IRC-server ad-hoc options
This let any user choose which ports to use when connecting to the IRC
server. This also lets the user choose whether or not to force TLS usage (by
setting no non-TLS port).

fix #2731
2015-09-21 04:27:23 +02:00
Florent Le Coz 532228a3ce Send a PASS IRC command if the “pass” config is sot by a user, on an IRC server
fix #3068
2015-09-18 22:09:26 +02:00
Florent Le Coz 73573ebb2a Trivial cleanup in irc_client.cpp 2015-09-06 18:57:35 +02:00
Florent Le Coz 4cfcc79114 Check the number of argument of every IRC command received from the server
Each IrcClient callback has a max and min size of argument, we call the
callback only if the parsed message has a correct number of arguments,
otherwise it is ignored (with a warning logged).
2015-09-06 18:55:48 +02:00
Florent Le Coz ece4b4969b If hostname resolution fails, do not try all possible ports 2015-07-09 15:30:24 +02:00
Florent Le Coz e454c12bd7 Do not forward CTCP commands (PING, VERSION…) to the user as private messages
Some XMPP client ping themselves inside MUCs, to know if they are still in
there, this created a flood of PING message in private.  If the user is
interested in knowing when they receive a ping or version request, they can
still read their XML logs
2015-05-19 06:43:38 +02:00
Florent Le Coz fa466f33f4 Ignore commands that flood the user with private messages when listing chans
ref #2472
2015-05-19 06:21:59 +02:00
Florent Le Coz 7fe0dc2667 Fix the case of the nick for ping requests
fix #3041
2015-05-11 05:31:11 +02:00
Florent Le Coz 221ed2553d Two trivial fixes 2015-05-07 17:18:40 +02:00
Florent Le Coz 163ace553f Handle all unknown IRC command by forwarding the arguments as a message body
This way, the users can receive the result of any IRC command (although not
parsed nor formatted in anyway) when biboumi doesn’t support it

fix #2884
2015-05-07 17:17:01 +02:00
Florent Le Coz 0a6b673b14 Support raw IRC messages
Messages received on an IRC server JID are forwarded as raw IRC messages.

fix #2486
2015-05-07 17:01:17 +02:00