Электронный учебник:


Курс лекций:


Дополнительно:

Практикум:



Наши хостеры:

семейные споры

--------------------------

Прием и передача данных

if (send (newsockfd, BRSTR, strlen (BRSTR)+ 1, 0) ! = strlen (BRSTR)+ 1) {

printf ("error writing socket!");

return 0;

}

shutdown (newsockfd, 1);

close (newsockfd);

return 0;

}

for (i=5; buf [i] && (buf [i] > ' '); i++);

buf [i] = 0;

/+ открываем файл*/

if ((filefd = open (buf+ 5, 0_RDONLY)) < 0) {/* нет файла! */

if (send (newsockfd, FNFSTR, strlen (FNFSTR)+ 1, 0)! = strlen (FNFSTR)+ 1) {

printf ("error writing socket!");

return 0;

}

shutdown (newsockfd, 1);

close (newsockfd);

return 0;

}

/* читаем из файла порции данных и посылаем их клиенту */

while (len = read (filefd, &buf, BUFLEN))

if (send (newsockfd, buf, len, 0) < 0) {

printf ("error writing socket!");

return 0;

}

 close (filefd);

shutdown (newsockfd, 1);

close (newsockfd);

return 0;

}

/*это – отец. Он просто закрывает свой новый сокет и продолжает прослушивать старый*/

close (newsockfd);

}

}

5

предыдущаяследующая тема