Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <stdlib.h>
- #include <string>
- #include <windows.h>
- #include <winsock2.h>
- #pragma comment(lib,"ws2_32.lib") //Winsock Library
- using std::cout;
- using std::cin;
- using std::string;
- HANDLE hConsole;
- SOCKET s, new_socket;
- struct sockaddr_in server, client;
- bool wip = true;
- string serverIp = "127.0.0.1";
- int serverPort = 6064;
- int c;
- int main(int argc, char const *argv[]) {
- hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
- WSADATA wsa;
- puts("Initializing winsock...");
- if (WSAStartup(MAKEWORD(2,2),&wsa) != 0) {
- printf("Failed. Error Code : %d",WSAGetLastError());
- return 1;
- }
- puts("Winsock successfully initialized.");
- //Create a socket
- if((s = socket(AF_INET, SOCK_STREAM, 0 )) == INVALID_SOCKET) {
- printf("Could not create socket : %d", WSAGetLastError());
- return 1;
- }
- puts("Socket created.");
- //Prepare the sockaddr_in structure
- server.sin_family = AF_INET;
- server.sin_addr.s_addr = INADDR_ANY;
- server.sin_port = htons(serverPort);
- //Bind
- if( bind(s, (struct sockaddr *)&server, sizeof(server)) == SOCKET_ERROR)
- {
- printf("Bind failed with error code : %d", WSAGetLastError());
- exit(EXIT_FAILURE);
- }
- puts("Bind done!");
- listen(s, 3);
- puts("Waiting for incoming connections...");
- c = sizeof(struct sockaddr_in);
- while((new_socket = accept(s, (struct sockaddr *)&client, &c)) != INVALID_SOCKET) {
- puts("Connection accepted.");
- string message = "Hello Client, I have received your connection. But I have to go now, bye\n";
- send(new_socket, message.c_str(), strlen(message.c_str()), 0);
- }
- if (new_socket == INVALID_SOCKET) {
- printf("Accept failed with error code : %d", WSAGetLastError());
- return 1;
- }
- closesocket(s);
- WSACleanup();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement