Programın orjinali cok ufak değişiklikler yapılarak aktarılmıştır.
Bu kod *nix sistemlerde calışmaktadır.

Derlenmesi: gcc -o sunucu sunucu.c


sunucu.c dosyasının iceriği:


#include
#include
#include
#include
#include
#include

#define PORT 9999
#define LISTQUEUE 5

main(int argc, char *argv[])


memset(&server_addr, 0, sizeof(server_addr));
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(PORT);
server_addr.sin_addr.s_addr = INADDR_ANY;

if (bind(sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr)) == -1)

if (listen(sockfd, LISTQUEUE) != 0)

while(1)

printf("%s sunucumuza baglandi...\n",inet_ntoa(client_addr.sin_addr));


/* Istemciye mesaj gonderme */

memset(&buffer, 0, sizeof(buffer));

strcpy(buffer,"OK\n");
/* strcat(buffer,(char *) inet_ntoa(client_addr.sin_addr)); */


if (send(new_fd,&buffer, strlen(buffer), 0) == -1) perror("send");
/* if (recv(new_fd,&buffer, strlen(buffer)-1, 0) == -1) perror("recv"); */

recv(new_fd,&buffer, strlen(buffer]1021, 0);
/* printf("Alinan yanit: %s \n", buffer); */
printf("%s",inet_ntoa(client_addr.sin_addr));
printf(": %s \n", buffer);
close(new_fd);
}
close(sockfd);
while (waitpid(-1,NULL,WNOHANG) > 0);
return 0;
}
__________________