rendered paste bodySOCKET MasterSocket;SOCKET TheClient; SOCKET m_backup; WSADATA wsaData; sockaddr_in con; // ------- Make sure you call this function before the others ------------------int WSInit() // initalizes winsock{ int iResult = WSAStartup(MAKEWORD(2,2), &wsaData); if (iResult != NO_ERROR ) { WSACleanup(); return 0; } MasterSocket = socket( AF_INET, SOCK_STREAM, IPPROTO_TCP ); if ( MasterSocket == INVALID_SOCKET ) { WSACleanup(); return 0; } m_backup = MasterSocket;}// Starts a serverint startAsServer(int PORT){ con.sin_family = AF_INET; con.sin_addr.s_addr = inet_addr( "0.0.0.0" ); con.sin_port = htons(PORT); if (bind(MasterSocket,(SOCKADDR*) (&con), sizeof(con) ) == SOCKET_ERROR) { closesocket(MasterSocket); WSACleanup(); return 0; } if (listen( MasterSocket, 1 ) == SOCKET_ERROR ) { closesocket(MasterSocket); WSACleanup(); return 0; }}void waitForClient(){ TheClient = SOCKET_ERROR; while ( TheClient == SOCKET_ERROR ) { Sleep(150); TheClient = accept( m_backup, NULL, NULL ); } MasterSocket = TheClient;}// Call this function after you've created a client\server, like this "SOCKET mySocket = SetDataTransferSocket();"SOCKET SetDataTransferSocket(){return TheClient;}// be sure you call this function before you close your app or when you want to dissconnectvoid Dissconnect(SOCKET socketToDissconnect){ closesocket(TheClient); closesocket(m_backup); closesocket(MasterSocket); closesocket(socketToDissconnect); WSACleanup();}