Перейти до вмісту
Помилки Linux/POSIXПопередження
SIGPIPE (13)

SIGPIPE (13) — Сигнал зламаного каналу

Процес намагався записати в канал або сокет, читальний кінець якого вже закрито.

linuxmacosunix

Що спричиняє цю помилку

Приймаючий процес закрив з'єднання до того, як відправник завершив запис. Трапляється при передачі виводу командам, що завчасно завершуються.

Як виправити

Ігноруйте SIGPIPE через signal(SIGPIPE, SIG_IGN) і перевіряйте повернене значення write() на EPIPE. У мережевих серверах завжди ігноруйте SIGPIPE.

Офіційна документація

Пов'язані коди помилок