|
#include <stdio.h> #include <errno.h> #include <stdlib.h> #include <sys/socket.h> #include <sys/un.h> #define SERVER "/tmp/serversocket" #define MAXMSG 512 int main (void) { int sock; char message[MAXMSG]; struct sockaddr_un name; size_t size; int nbytes; /* Öncelikle dosya ismini kaldıralım, eğer isim yoksa bir sorun yok */ unlink (SERVER); /* Soketi oluşturup sonsuz döngüye girelim. */ sock = make_named_socket (SERVER); while (1) { /* Bir datagram bekliyoruz */ size = sizeof (name); nbytes = recvfrom (sock, message, MAXMSG, 0, (struct sockaddr *) & name, &size); if (nbytes < 0) { perror ("recfrom (server)"); exit (EXIT_FAILURE); } /* Bir tanı iletisi verelim */ fprintf (stderr, "Sunucu: alınan ileti: %s\n", message); /* İletiyi göndericiye geri gönderelim. */ nbytes = sendto (sock, message, nbytes, 0, (struct sockaddr *) & name, size); if (nbytes < 0) { perror ("sendto (server)"); exit (EXIT_FAILURE); } } }
|