On Mon, May 19, 2003 at 04:05:51PM +0400, Sergey Vlasov wrote: > Там в цикле ещё должна была быть проверка FD_ISSET(i, &read_fd_set). Oops, спасибо, я её пропустил при перенаборе (странно, но пара строк при печати из pinfo пропадает - нет ни на первом, ни на втором листе!) > И обычно вместо FD_SETSIZE ставят max(fd) + 1, чтобы не проверялись > лишние биты. Я не совсем понимаю, как работают указанные макросы, поэтому последовал примеру. > А кто будет \0 в конце для printf добавлять? > Так из-за отсутствия проверки FD_ISSET она и ждала ввода из stdin. Заработало, большое спасибо. Всё работает замечательно, за исключением одного "но" - прототип клиента вычисляет, что пропускная способность сети - 2.94Mb/sec! Никак не могу понять, в чем я лопухнулся. gkrellm показывает 1.2-1.3M. Время высчитываю как разницу между вызовами ntp_gettime, беру количество принятых структур, умножаю на sizeof(принимаемая структура), делю на время. Скорость упорно показывается ~2.94Mb/сек. :-( Код в аттаче. -- WBR, Andrey Brindeew. "No one person can understand Perl culture completely" (C) Larry Wall.