path: root/src/network/socket_handler.hpp
AgeCommit message (Collapse)Author
2014-07-15Fix IPv6 support (sockaddr size)Florent Le Coz
Since struct sockaddr is too small to contain an IPv6, we use struct sockaddr_in6 instead, and we cast it where needed
2014-06-19Make the Botan rng, credential_manager etc be staticFlorent Le Coz
This actually makes the session_manager be useful, and saves a few octets of memory for the other ones
2014-06-08Add a TimedEvent to cancel the connection to a server after 5 secondsFlorent Le Coz
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-06-05Make the destructor of the SocketHandler class protected non-virtualFlorent Le Coz
2014-05-28On connection in-progress, save the whole addrinfo struct, not just ai_addrFlorent Le Coz
2014-05-27Support IPv6 connectionsFlorent Le Coz
fix #2522
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-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-27Use scatter/gather io with sendmsg to avoid concataning strings all the timeFlorent Le Coz
2014-02-26Fix a wrong commentFlorent Le Coz
2014-02-22Save the addrinfo values for reuse on subsequent connect() callFlorent Le Coz
2014-02-22Connection to servers does not block the process anymoreFlorent Le Coz
2014-02-08Be verbose about IRC server connection failures, and handle them properlyFlorent Le Coz
2014-01-04Keep a "connected" state in the SocketHandler classFlorent Le Coz
2013-12-24connect() returns a booleanFlorent Le Coz
2013-12-23Read a variable number of bytes, 4096 by defaultFlorent Le Coz
2013-11-02Move the basic socket implementation into the SocketHandler classFlorent Le Coz
(that is, the read/write/connect/etc) Because this code is actually common for both the IrcClient and XmppComponent class. These two classes have to implement some higher level callbacks (parsing the data provided in the buffers, doing stuff when the connection is done) instead of doing the read/write/connect low level things.
2013-11-02First step of the connection skeletonFlorent Le Coz
Basic connect, socket creating, polling, recving, etc.