Я прочитал это относительно установки сокета в неблокирующий режим.
http://www.gnu.org/software/libc/manual/html_mono/libc.html#File-Status-Flags
Вот что я сделал:
static void setnonblocking(int sock)
{
int opts;
opts = fcntl(sock,F_GETFL);
if (opts < 0) {
perror("fcntl(F_GETFL)");
exit(EXIT_FAILURE);
}
opts = (opts | O_NONBLOCK);
if (fcntl(sock,F_SETFL,opts) < 0) {
perror("fcntl(F_SETFL)");
exit(EXIT_FAILURE);
}
return;
}
Как установить сокет обратно в режим блокировки? Я не вижу флаг O_BLOCK?
Спасибо.