summaryrefslogtreecommitdiff
path: root/src/irc
AgeCommit message (Collapse)Author
2015-09-06Trivial cleanup in irc_client.cppFlorent Le Coz
2015-09-06Check the number of argument of every IRC command received from the serverFlorent Le Coz
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-07-09If hostname resolution fails, do not try all possible portsFlorent Le Coz
2015-05-19Do not forward CTCP commands (PING, VERSION…) to the user as private messagesFlorent Le Coz
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-19Ignore commands that flood the user with private messages when listing chansFlorent Le Coz
ref #2472
2015-05-11Fix the case of the nick for ping requestsFlorent Le Coz
fix #3041
2015-05-07Two trivial fixesFlorent Le Coz
2015-05-07Handle all unknown IRC command by forwarding the arguments as a message bodyFlorent Le Coz
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-07Support raw IRC messagesFlorent Le Coz
Messages received on an IRC server JID are forwarded as raw IRC messages. fix #2486
2015-04-21Properly check for connecting or connected status before reconnectingFlorent Le Coz
Note, in our context, is_connecting() includes the resolving part as well as the actual connection (if we are using c-ares) fix #3048
2015-04-21Revert "Decode incoming JIDs local part according to xep 0106"Florent Le Coz
This reverts commit ad0465b32051e224f6a234f3ed36494905e59cbf. Conflicts: louloulibs
2015-04-20Decode incoming JIDs local part according to xep 0106Florent Le Coz
This let users send message to nicks such as Q@CServe.quakenet.org fix #3047
2015-03-24Do not log a warning when we receive a PONG commandFlorent Le Coz
2015-02-27Remove all the libs that are now in louloulibsFlorent Le Coz
2015-02-26Merge branch 'fixed_server'Florent Le Coz
2015-02-26Implement room discovery using the LIST irc commandFlorent Le Coz
ref #2472
2015-02-25Do not handle the "%" char in a special way, in the fixed_server modeFlorent Le Coz
Also fix some doc
2015-02-25Add support for a fixed_irc_server configurationFlorent Le Coz
This option lets the administrator choose a specific IRC server, and only that server can be used with this biboumi instance. In this mode, JIDs to use are changed like this: - #chan%irc.example.com@biboumi.example.com -> #chan@biboumi.example.com - user!irc.example.com@biboumi.example.com -> user!@biboumi.example.com - #chan%irc.example.com@biboumi.example.com/Nick -> #chan@biboumi.example.com/Nick - %irc.example.com@biboumi.example.com -> no equivalent - irc.example.com@biboumi.example.com -> no equivalent
2015-02-25Include the IRC hostname in the IRC RECEIVING and SENDING debug messagesFlorent Le Coz
fix #2715
2015-01-14Remove a recent debug line that should not be thereFlorent Le Coz
2015-01-14Do not send an empty password at all, if the user didn't provide oneFlorent Le Coz
2015-01-14Make the password work when we join our first channel on that serverFlorent Le Coz
Because we need to wait for the welcome message, when we connect to the server, before sending the JOIN command, we need to also save the value of the password to reuse it when we actually send the JOIN command
2015-01-14Add support for password-protected IRC rooms.Emmanuel Gil Peyrot
2015-01-12Remove a dummy commented lineFlorent Le Coz
2015-01-12If we sent a message to a user, their notices are considered private messagesFlorent Le Coz
fix #2882
2014-12-17Fix a few issues reported by static analyzersFlorent Le Coz
2014-11-12Implement PING, user to user only (XMPP and IRC side, using CTCP PING)Florent Le Coz
ref #2757
2014-11-12Rename iq_responder_callback_t to irc_… and add the equivalent to wait for iqsFlorent Le Coz
2014-08-08Send a proper error on IRC message 438 (nickname change too fast)Florent Le Coz
fix #2576
2014-08-08Use generic send_presence_error() instead of almost identical specializationsFlorent Le Coz
2014-07-15Send the reason of the connection close to the userFlorent Le Coz
2014-07-02Add a level of inheritance above SocketHandlerFlorent Le Coz
SocketHandler has been renamed to TCPSocketHandler SocketHandler is now a simple interface with a few methods, used only by Poller. This way we can inherite from the new SocketHandler class, to handle other types of sockets, and still make them manageable by the poller without any change in the Poller class.
2014-06-19Implement a way to add callbacks, waiting for an IRC event to return an iqFlorent Le Coz
2014-06-19Remove a duplicate “connection closed” messageFlorent Le Coz
2014-06-11Rewrite the whole IID usageFlorent Le Coz
IRC users and channels are now distinguished by the separator used in the IID (% or !). ref #2468
2014-06-08Implement TLS support using BotanFlorent Le Coz
For now, it tries two TLS ports and then connects to the non-tls port. In the future we would like the user to be able to configure that. fix #2435
2014-05-30Send (every 240s) a PING command to all connected irc serversFlorent Le Coz
fix #2452
2014-05-28Send an error presence when the connection to the IRC server failsFlorent Le Coz
2014-05-27Fix a by-one error in the CHANTYPES parsingFlorent Le Coz
2014-05-27Use the CHANTYPES values to differentiate channel or user noticesFlorent Le Coz
It also happens to fix #2517 because this used to create buggy channels named "auth" and stuf like that.
2014-05-27Add support for CHANTYPES isupport element, to know the prefixes of channelsFlorent Le Coz
2014-05-27SocketHandlers own the poller and add themself into it only when the socket ↵Florent Le Coz
is created We want to call socket() with the parameters provided by getaddrinfo, so we can’t addd the fd into the poller immediately. We need to wait the connection attempt, and then the SocketHandler can call add_socket_handler itself, if the connection succeeds, or is in progress.
2014-05-14Correctly handle the usage of ! as a IRC user mode indicatorFlorent Le Coz
Since “!” is also the separator between the nickname and the user hostname, having “!” as the user mode (e.g. !nick!~some@host.bla) would cause the nick to be empty. Now we skip it if it is a valid user mode indicator.
2014-05-07Forward iq version results to IRCFlorent Le Coz
2014-05-06Forward CTCP version request to XMPPFlorent Le Coz
2014-04-29Use C++14 string_literalsFlorent Le Coz
2014-04-28Upgrade to C++14Florent Le Coz
2014-04-25NOTICE from channels are displayed in the channel, with a green "[notice]"Florent Le Coz
2014-04-15Add an explanatory topic on the dummy channelFlorent Le Coz
2014-04-15Do not disconnect from the IRC server if the dummy channel is joinedFlorent Le Coz