Advertisement
Guest User

Untitled

a guest
Jul 25th, 2022
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.21 KB | None | 0 0
  1. #include <iostream>
  2. #include <WinSock2.h>
  3. #include <WS2tcpip.h>
  4. #include <tchar.h>
  5.  
  6. #pragma comment(lib,"ws2_32.lib")
  7.  
  8. int main()
  9. {
  10.     std::cout << "===== SERVER =====\n";
  11.     //Set Up DLL
  12.    
  13.     SOCKET serverSocket, acceptSocket;
  14.     int port = 4679;
  15.     WSADATA wsaData;
  16.     int wsaerr;
  17.     WORD wVersionRequested = MAKEWORD(2, 2);
  18.     wsaerr = WSAStartup(wVersionRequested, &wsaData);
  19.  
  20.     if (wsaerr != 0)
  21.     {
  22.         std::cout << "The Winsock dll not found!" << std::endl;
  23.     }
  24.     else
  25.     {
  26.         std::cout << "The Winsock dll found!" << std::endl;
  27.         std::cout << "The status: " << wsaData.szSystemStatus << std::endl;
  28.     }
  29.  
  30.     //Set Up Server Socket
  31.    
  32.     serverSocket = INVALID_SOCKET;
  33.     serverSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
  34.    
  35.     if (serverSocket == INVALID_SOCKET)
  36.     {
  37.         std::cout << "Error at socket(): " << WSAGetLastError() << std::endl;
  38.         WSACleanup();
  39.         return 0;
  40.     }
  41.     else
  42.     {
  43.         std::cout << "socket() is OK!" << std::endl;
  44.     }
  45.    
  46.     //Bind Socket
  47.  
  48.     sockaddr_in service;
  49.     service.sin_family = AF_INET;
  50.     InetPton(AF_INET, _T("127.0.0.1"), &service.sin_addr.s_addr);
  51.  
  52.     if (bind(serverSocket, (SOCKADDR*)&service, sizeof(service)) == SOCKET_ERROR)
  53.     {
  54.         std::cout << "bind() failed: " << WSAGetLastError() << std::endl;
  55.         closesocket(serverSocket);
  56.         WSACleanup();
  57.         return 0;
  58.     }
  59.     else
  60.     {
  61.         std::cout << "bind() is OK!" << std::endl;
  62.     }
  63.    
  64.     //Initiate Listen
  65.  
  66.     if (listen(serverSocket, 1) == SOCKET_ERROR)
  67.     {
  68.         std::cout << "Listen(); Error listening on socket " << WSAGetLastError() << std::endl;
  69.     }
  70.     else
  71.     {
  72.         std::cout << "listen() is OK, I'm waiting for connections... " << std::endl;
  73.     }
  74.  
  75.     //Accept Connection
  76.  
  77.     acceptSocket = accept(serverSocket, NULL, NULL);
  78.  
  79.     if (acceptSocket == INVALID_SOCKET)
  80.     {
  81.         std::cout << "Accept Failed: " << WSAGetLastError() << std::endl;
  82.         WSACleanup();
  83.         return -1;
  84.     }
  85.     else
  86.     {
  87.         std::cout << "Accepted connection " << std::endl;
  88.         system("pause");
  89.         WSACleanup();
  90.     }
  91.  
  92.     return 0;
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement