Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <WinSock2.h>
- #include <WS2tcpip.h>
- #include <tchar.h>
- #pragma comment(lib,"ws2_32.lib")
- int main()
- {
- std::cout << "===== SERVER =====\n";
- //Set Up DLL
- SOCKET serverSocket, acceptSocket;
- int port = 4679;
- WSADATA wsaData;
- int wsaerr;
- WORD wVersionRequested = MAKEWORD(2, 2);
- wsaerr = WSAStartup(wVersionRequested, &wsaData);
- if (wsaerr != 0)
- {
- std::cout << "The Winsock dll not found!" << std::endl;
- }
- else
- {
- std::cout << "The Winsock dll found!" << std::endl;
- std::cout << "The status: " << wsaData.szSystemStatus << std::endl;
- }
- //Set Up Server Socket
- serverSocket = INVALID_SOCKET;
- serverSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
- if (serverSocket == INVALID_SOCKET)
- {
- std::cout << "Error at socket(): " << WSAGetLastError() << std::endl;
- WSACleanup();
- return 0;
- }
- else
- {
- std::cout << "socket() is OK!" << std::endl;
- }
- //Bind Socket
- sockaddr_in service;
- service.sin_family = AF_INET;
- InetPton(AF_INET, _T("127.0.0.1"), &service.sin_addr.s_addr);
- if (bind(serverSocket, (SOCKADDR*)&service, sizeof(service)) == SOCKET_ERROR)
- {
- std::cout << "bind() failed: " << WSAGetLastError() << std::endl;
- closesocket(serverSocket);
- WSACleanup();
- return 0;
- }
- else
- {
- std::cout << "bind() is OK!" << std::endl;
- }
- //Initiate Listen
- if (listen(serverSocket, 1) == SOCKET_ERROR)
- {
- std::cout << "Listen(); Error listening on socket " << WSAGetLastError() << std::endl;
- }
- else
- {
- std::cout << "listen() is OK, I'm waiting for connections... " << std::endl;
- }
- //Accept Connection
- acceptSocket = accept(serverSocket, NULL, NULL);
- if (acceptSocket == INVALID_SOCKET)
- {
- std::cout << "Accept Failed: " << WSAGetLastError() << std::endl;
- WSACleanup();
- return -1;
- }
- else
- {
- std::cout << "Accepted connection " << std::endl;
- system("pause");
- WSACleanup();
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement