Trying to try to write a simple http server. To begin with, I'm just trying to create a TCP server. It seems to be a port, but when you try to connect to the server, an error crashes. 
#include "web_server.h"; #define HOST "127.0.0.1" SOCKET Start_Server(short port) { WSADATA wsaData; SOCKET Winsock; struct sockaddr_in Winsock_In; struct hostent *Ip; char hn[1024]; WSAStartup(MAKEWORD(2, 2), &wsaData); Winsock=WSASocket(AF_INET, SOCK_STREAM, IPPROTO_TCP, NULL, (unsigned int)NULL, (unsigned int)NULL); if(Winsock == INVALID_SOCKET){ WSACleanup(); return -1; } Ip = gethostbyname(HOST); Winsock_In.sin_port = htons(port); Winsock_In.sin_family = AF_INET; Winsock_In.sin_addr.s_addr = inet_addr(HOST);//inet_addr(inet_ntoa(*((in_addr*)Ip->h_addr_list[0]))); if(bind(Winsock, (SOCKADDR*)&Winsock_In, sizeof(Winsock_In)) == SOCKET_ERROR){ WSACleanup(); return -1; } return Winsock; } void GetHtmlList(FILE* f) { fprintf(f, "<HTML><HEAD><TITLE>ggg</TITLE></HEAD>\r\n"); } void Main_WebServer() { SOCKET Winsock; char Buf[255]; Winsock = Start_Server(5656); listen(Winsock, 5); strcat(Buf, "TEST!!!"); while (1) { int s; FILE *f; s = accept(Winsock, (sockaddr *)HOST, (int *)HOST); //send(s, Buf, (int)strlen(Buf), 0); if (s < 0) break; f = fdopen(s, "r+"); GetHtmlList(f); fclose(f); } //close(Winsock); } Help me to understand )