summaryrefslogtreecommitdiff
path: root/src/irc/irc_client.cpp
AgeCommit message (Collapse)Author
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-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
2014-04-15Better way to leave the dummy roomFlorent Le Coz
2014-04-15Ability to leave the dummy channelFlorent Le Coz
2014-04-15Correctly use the dummy channel whenever we interract with an empty-string chanFlorent Le Coz
2014-04-13[WIP] DummyIrcChannelFlorent Le Coz
2014-03-28Catch all exception produced by a received message (irc or xmpp)Florent Le Coz
2014-03-24Do not send data if we are connected, send it only once we actually areFlorent Le Coz
2014-02-28Avoid unnecessary copies by recv()ing data directly into the expat bufferFlorent Le Coz
2014-02-25Do not try to connect to an irc server if we are connected or connectingFlorent Le Coz
2014-02-22Connection to servers does not block the process anymoreFlorent Le Coz
2014-02-20QUIT the irc server when the last channel is leftFlorent Le Coz
2014-02-19Send unavailable presence to all muc when the IRC server closes the connectionFlorent Le Coz
2014-02-19Fix the joined flag on channels, avoid sending the topic twice when joiningFlorent Le Coz
2014-02-17Include role and affiliation in the join presence of the nick change processFlorent Le Coz
2014-02-08Be verbose about IRC server connection failures, and handle them properlyFlorent Le Coz
2014-01-06Also set the role and affiliation of users already in the chanFlorent Le Coz
2014-01-04Fix a bug when receiving a topic changeFlorent Le Coz
The number of arguments is not always the same
2014-01-04Possibility to change a channel's topicFlorent Le Coz
2014-01-04Convert received modes into roles and affiliationsFlorent Le Coz
2014-01-04Use isupport informations to know the user modes when joiningFlorent Le Coz
Also remove the duplicate send_self_join methods, user only send_user_join
2014-01-04Basic isupport supportFlorent Le Coz
CHANMODES and PREFIX only
2014-01-04Handle nickname conflicts by sending the correct XMPP error presenceFlorent Le Coz
2014-01-04Remove disconnected IrcClientsFlorent Le Coz
2014-01-04Keep a "connected" state in the SocketHandler classFlorent Le Coz
2014-01-04Be verbose about the connection status, and some errorsFlorent Le Coz
2014-01-04Handle topic changesFlorent Le Coz
2014-01-04Check that channels are joined before acting on objects in itFlorent Le Coz
2014-01-04Shutdown cleanly on SIGINTFlorent Le Coz
2013-12-09Lowercase the chan names in two missing casesFlorent Le Coz
2013-12-08Provide a JID for IRC users, and add a stringprep dependency for thisFlorent Le Coz
2013-12-08Enforce a simple limit of 400 bytes for IRC messages bodyFlorent Le Coz
The limit for the whole message is 512 bytes, we limit the body to 400 (instead of doing a calculation based on the command name and the other parameters), because it's simple, easy and that’s enough. fixes #2416