Loading src/event/epoll.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -183,7 +183,7 @@ namespace netplus { ccon->csock=std::make_unique<ssl>( srv->_cert,-1); } _ServerSocket->accept(ccon->csock); _ServerSocket->accept(ccon->csock,true); if (!ccon || !ccon->csock) { // connection already closed/cleaned up Loading src/posix/tcp.cpp +3 −1 Original line number Diff line number Diff line Loading @@ -153,7 +153,7 @@ int netplus::tcp::getMaxconnections(){ return _Maxconnections; } void netplus::tcp::accept(std::unique_ptr<socket> &csock){ void netplus::tcp::accept(std::unique_ptr<socket> &csock,bool nonblock){ NetException exception; copyAddrInfo(&csock->_SocketInfo,_SocketInfo,_SocketInfoLen); Loading @@ -170,6 +170,8 @@ void netplus::tcp::accept(std::unique_ptr<socket> &csock){ exception[etype] << "Can't accept on Socket: " << errstr; throw exception; } if(nonblock) csock->setNonBlock(); } void netplus::tcp::bind(){ Loading src/posix/udp.cpp +3 −2 Original line number Diff line number Diff line Loading @@ -154,7 +154,7 @@ int netplus::udp::getMaxconnections(){ return _Maxconnections; } void netplus::udp::accept(std::unique_ptr<socket> &csock){ void netplus::udp::accept(std::unique_ptr<socket> &csock,bool nonblock){ NetException exception; ((struct addrinfo *)(csock->_SocketInfo))->ai_addr=(struct sockaddr*) malloc(((struct addrinfo *)(_SocketInfo))->ai_addrlen); Loading @@ -171,7 +171,8 @@ void netplus::udp::accept(std::unique_ptr<socket> &csock){ exception[etype] << "Can't accept on Socket: " << errstr; throw exception; } if(nonblock) csock->setNonBlock(); } void netplus::udp::bind(){ Loading src/socket.h +4 −4 Original line number Diff line number Diff line Loading @@ -149,7 +149,7 @@ namespace netplus { void setTimeout(int usec); virtual void accept(std::unique_ptr<socket>& csock) = 0; virtual void accept(std::unique_ptr<socket>& csock,bool nonblock) = 0; #ifdef Windows virtual void accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock, buffer& data) = 0; virtual void sendDataWSA(buffer& data, int flags) = 0; Loading Loading @@ -213,7 +213,7 @@ namespace netplus { void recvDataWSA(buffer& data, int flags); void prime_read(buffer& data); #endif void accept(std::unique_ptr <socket>& csock); void accept(std::unique_ptr <socket>& csock,bool nonblock); void bind(); void listen(); void setNonBlock(); Loading Loading @@ -243,7 +243,7 @@ namespace netplus { int sockopts); ~udp(); void accept(std::unique_ptr<socket>& csock); void accept(std::unique_ptr<socket>& csock,bool nonblock); #ifdef Windows void accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock, buffer& data); void sendDataWSA(buffer& data, int flags); Loading Loading @@ -280,7 +280,7 @@ namespace netplus { ssl(const netplus::x509cert& cert,const std::string& addr, int port, int maxconnections, int sockopts); void accept(std::unique_ptr<socket>& csock) override; void accept(std::unique_ptr<socket>& csock,bool nonblock) override; void handshake_after_accept(); void connect(std::unique_ptr<socket>& srvsock) override; Loading src/ssl.cpp +2 −4 Original line number Diff line number Diff line Loading @@ -999,12 +999,10 @@ std::vector<uint8_t> netplus::ssl::_calculateHMAC( void netplus::ssl::accept(std::unique_ptr<socket> &csock) void netplus::ssl::accept(std::unique_ptr<socket> &csock,bool nonblock) { // 1) Accept underlying TCP connection tcp::accept(csock); csock->setTimeout(10000); tcp::accept(csock,nonblock); // If accept failed or returned invalid socket if (!csock || csock->fd() < 0) { Loading Loading
src/event/epoll.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -183,7 +183,7 @@ namespace netplus { ccon->csock=std::make_unique<ssl>( srv->_cert,-1); } _ServerSocket->accept(ccon->csock); _ServerSocket->accept(ccon->csock,true); if (!ccon || !ccon->csock) { // connection already closed/cleaned up Loading
src/posix/tcp.cpp +3 −1 Original line number Diff line number Diff line Loading @@ -153,7 +153,7 @@ int netplus::tcp::getMaxconnections(){ return _Maxconnections; } void netplus::tcp::accept(std::unique_ptr<socket> &csock){ void netplus::tcp::accept(std::unique_ptr<socket> &csock,bool nonblock){ NetException exception; copyAddrInfo(&csock->_SocketInfo,_SocketInfo,_SocketInfoLen); Loading @@ -170,6 +170,8 @@ void netplus::tcp::accept(std::unique_ptr<socket> &csock){ exception[etype] << "Can't accept on Socket: " << errstr; throw exception; } if(nonblock) csock->setNonBlock(); } void netplus::tcp::bind(){ Loading
src/posix/udp.cpp +3 −2 Original line number Diff line number Diff line Loading @@ -154,7 +154,7 @@ int netplus::udp::getMaxconnections(){ return _Maxconnections; } void netplus::udp::accept(std::unique_ptr<socket> &csock){ void netplus::udp::accept(std::unique_ptr<socket> &csock,bool nonblock){ NetException exception; ((struct addrinfo *)(csock->_SocketInfo))->ai_addr=(struct sockaddr*) malloc(((struct addrinfo *)(_SocketInfo))->ai_addrlen); Loading @@ -171,7 +171,8 @@ void netplus::udp::accept(std::unique_ptr<socket> &csock){ exception[etype] << "Can't accept on Socket: " << errstr; throw exception; } if(nonblock) csock->setNonBlock(); } void netplus::udp::bind(){ Loading
src/socket.h +4 −4 Original line number Diff line number Diff line Loading @@ -149,7 +149,7 @@ namespace netplus { void setTimeout(int usec); virtual void accept(std::unique_ptr<socket>& csock) = 0; virtual void accept(std::unique_ptr<socket>& csock,bool nonblock) = 0; #ifdef Windows virtual void accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock, buffer& data) = 0; virtual void sendDataWSA(buffer& data, int flags) = 0; Loading Loading @@ -213,7 +213,7 @@ namespace netplus { void recvDataWSA(buffer& data, int flags); void prime_read(buffer& data); #endif void accept(std::unique_ptr <socket>& csock); void accept(std::unique_ptr <socket>& csock,bool nonblock); void bind(); void listen(); void setNonBlock(); Loading Loading @@ -243,7 +243,7 @@ namespace netplus { int sockopts); ~udp(); void accept(std::unique_ptr<socket>& csock); void accept(std::unique_ptr<socket>& csock,bool nonblock); #ifdef Windows void accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock, buffer& data); void sendDataWSA(buffer& data, int flags); Loading Loading @@ -280,7 +280,7 @@ namespace netplus { ssl(const netplus::x509cert& cert,const std::string& addr, int port, int maxconnections, int sockopts); void accept(std::unique_ptr<socket>& csock) override; void accept(std::unique_ptr<socket>& csock,bool nonblock) override; void handshake_after_accept(); void connect(std::unique_ptr<socket>& srvsock) override; Loading
src/ssl.cpp +2 −4 Original line number Diff line number Diff line Loading @@ -999,12 +999,10 @@ std::vector<uint8_t> netplus::ssl::_calculateHMAC( void netplus::ssl::accept(std::unique_ptr<socket> &csock) void netplus::ssl::accept(std::unique_ptr<socket> &csock,bool nonblock) { // 1) Accept underlying TCP connection tcp::accept(csock); csock->setTimeout(10000); tcp::accept(csock,nonblock); // If accept failed or returned invalid socket if (!csock || csock->fd() < 0) { Loading