Commit 301ef3b6 authored by jan.koester's avatar jan.koester
Browse files

now right

parent 8b9e51c9
Loading
Loading
Loading
Loading
+0 −6
Original line number Diff line number Diff line
@@ -133,12 +133,6 @@ namespace netplus {
            if (g_serversocket->_Type == TCP)
                pClientContext->CurCon->csock = new tcp();
        ACCEPTCON:
            //int size = 0;
            //pClientContext->CurCon->csock->_Socket=WSAAccept(g_serversocket->fd(), (sockaddr*)pClientContext->CurCon->csock->_SocketInfo,
            //                                                 &size,nullptr,0);

            //if (WSA_IO_PENDING == WSAGetLastError() || WSAEWOULDBLOCK == WSAGetLastError())
            //    goto ACCEPTCON;
            try {
                g_serversocket->accept(pClientContext->CurCon->csock);
            } catch (NetException &e) {
+0 −2
Original line number Diff line number Diff line
@@ -50,8 +50,6 @@

#define HIDDEN __attribute__ ((visibility ("hidden")))

#define ADDRMAXSIZE 512

std::atomic<int> netplus::socket::_InitCount(0);

netplus::socket::socket(){
+1 −0
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ typedef unsigned long ULONG_PTR;
#include <WinSock2.h>
#endif

#define ADDRMAXSIZE 512

namespace netplus {
        enum sockettype {TCP=0,UDP=1,SSL=2};
+1 −3
Original line number Diff line number Diff line
@@ -40,8 +40,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

#define WIN32_LEAN_AND_MEAN

#define ADDRMAXSIZE 256

#pragma comment (lib, "Ws2_32.lib")

std::atomic<int> netplus::socket::_InitCount=0;
@@ -50,7 +48,7 @@ WSAData _WSAData;

netplus::socket::socket(){
    _SocketInfo = (ULONG_PTR)malloc(ADDRMAXSIZE);
    _SocketInfoLen = sizeof(ADDRMAXSIZE);
    _SocketInfoLen = ADDRMAXSIZE;
    memset((void*)_SocketInfo,0,ADDRMAXSIZE);
    _Extension = 0;
    _Type=-1;
+8 −0
Original line number Diff line number Diff line
@@ -131,6 +131,14 @@ int netplus::tcp::getMaxconnections(){

void netplus::tcp::accept(socket *csock){
    NetException exception;
    

    ((struct addrinfo*)csock->_SocketInfo)->ai_addr = (struct sockaddr*) malloc(
        ((struct addrinfo*)_SocketInfo)->ai_addrlen
    );

    ((struct addrinfo*)csock->_SocketInfo)->ai_addrlen = ((struct addrinfo*)_SocketInfo)->ai_addrlen;

    csock->_Socket=::WSAAccept(_Socket, ((struct addrinfo*)csock->_SocketInfo)->ai_addr, 
        (LPINT)((struct addrinfo*)csock->_SocketInfo)->ai_addrlen, nullptr, 0);
    if(csock->_Socket==SOCKET_ERROR){