Почему не блокируется SIGPIPE?

Здравствуйте.
Программа работает с сокетом. Чтобы не вылетал сигнал SIGPIPE, блокирую его:
sigset(SIGPIPE, SIG_IGN);
Но выполнение все равно завершается сигналом SIGPIPE во время выполнения send:
ssize_t size = send(socket, data, currentSize, 0);

Если установить флаг MSG_NOSIGNAL, то сигнал перестанет вылетать. Но данный способ работает под линуксом, но не работает под солярисом

Почему сигнал не блокируется?
  • Вопрос задан
  • 279 просмотров
Решения вопроса 1
@kir55rus Автор вопроса
Вопрос решен. GDB переустанавливал обработчик сигнала
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
01 мая 2024, в 02:11
5000 руб./за проект
01 мая 2024, в 00:29
2000 руб./за проект
01 мая 2024, в 00:20
15000 руб./за проект