Komunikacja klient-serwer: problem przy wysylaniu pliku

0

Witam,
mam nastepujacy problem. Mam do napisania serwer i klient (TCP) w ten sposob, aby serwer mogl wysylac do klienta wiadomosci i przy okazji przy odpaleniu serwera i klienta w sposob:

serwer < plik.in

klient > plik.out

zostanie przeslany "plik.in" do katalogu, gdzie znajduje się klient, po czym oba programy mają zakonczyc dzialanie... i tu pojawia sie problem.

Wysylanie wiadomosci klientowi, a nastepnie jej odieranie odbywa się bezproblemowo, ale nie wiem jak po przeslaniu danych z plik.in zakonczyc dzialanie obu programow.. tzn jak wyjsc z pętli.

Ponizej wklejam częsci kodow klienta i serwera odpowiedzialne za wysylanie i odbieranie. Czy moze mi powiedziec, jak to przerobic?

serwer:

while(fgets(send_data, 100, stdin), !feof(stdin))
{
     send(connected, send_data, strlen(send_data), 0);
     fflush(stdout);
}

klient:

while(1)
{
     bytes_recieved=recv(sock, recv_data, 1024, 0);
     recv_data[bytes_recieved] = '\0';
     printf("%s\n" , recv_data);
}

0
while((bytes_recieved = recv(sock, recv_data, 1024, 0)) > 0) { ... }

1 użytkowników online, w tym zalogowanych: 0, gości: 1