Misc socket cleaning

This commit is contained in:
Joshua Ashton 2020-08-01 06:48:14 +01:00
parent 5c0333a192
commit 50da8c2508
2 changed files with 8 additions and 2 deletions

View File

@ -188,10 +188,10 @@ namespace Feather::Network
if (!socket->MarkNonBlocking())
return;
auto ListenerCallback = [](evconnlistener* evListener, evutil_socket_t socket, sockaddr* addr, int len, void* self)
auto ListenerCallback = [](evconnlistener* evListener, SocketHandle socket, sockaddr* addr, int len, void* self)
{
TCPListener* listener = static_cast<TCPListener*>(self);
listener->m_callbacks->OnClientConnect(std::make_unique<TCPClient>(listener, socket));
listener->OnClientConnect(std::make_unique<TCPClient>(listener, socket));
};
if (!socket->Listen(ListenerCallback, this))
@ -204,6 +204,11 @@ namespace Feather::Network
{
}
void TCPListener::OnClientConnect(TCPClientHandle&& client)
{
m_callbacks->OnClientConnect(std::move(client));
}
void TCPListener::OnClientDisconnected(const TCPClient* client)
{
m_callbacks->OnClientDisconnect(client);

View File

@ -16,6 +16,7 @@ namespace Feather::Network
protected:
friend class TCPClient;
void OnClientConnect(TCPClientHandle&& client);
void OnClientDisconnected(const TCPClient* client);
private: