Почему каналы считают опасными для использования в Windows/unix/linux?

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

Я получаю следующий пример вывода из вашей программы. Он не разбивается на новые столбцы на точках с запятой.

good morning : hello    aa
we want it; right       bb
let us go , together    cc

Пожалуйста, перепроверьте на своем конце. Это было невозможно в комментариях, поэтому ответил на него.

7
задан Brian R. Bondy 27 May 2009 в 10:55
поделиться

1 ответ

(принятие Вы говорите об именованных каналах Unix от упоминания о 'c' и 'IPC'. Именованные каналы Windows работают несколько по-другому),

Любой с полномочиями может записать в именованный канал, таким образом, необходимо быть осторожными с полномочиями и блокирующий (см. скопление ()). Если приложение доверяет входу, это добирается от именованного канала (который будет обычно иметь место, если Вы явно не встроите контроль ввода в него), затем, злонамеренный пользователь может записать любые желаемые данные в именованный канал, если у них есть разрешение.

Кроме того, любой пользователь с полномочиями может читать из канала и прервать данные, выходящие из него, если Вы исключительно не заблокировали его. Данные затем отсутствуют во входном потоке, который ожидает читатель.

16
ответ дан 6 December 2019 в 12:56
поделиться