LINUX.ORG.RU

Аналог фильтр-драйвера для tty

 , ,


0

1

Доброго времени.

Есть ли возможность в Linux написать некий драйвер, аналогичный по возможностям фильтр-драйверу из оффтопика?

Необходимо реализовать возможность через этот драйвер приаттачиваться к любому /dev/ttyXYZ девайсу и перехватывать все вызовы read/write/ioctl, которые идут на /dev/ttyXYZ из пользовательского приложения.

Возможно ли это в принципе, и если да, то каким образом?

★★

Ответ на: комментарий от kuzulis

Я про это в курсе, это костыль.

У тебя вся задача - костыль.

Посмотри в сторону CUSE (Character device in Userspace).

anonymous
()
Ответ на: комментарий от kuzulis

Я про это в курсе, это костыль.

Он что, не работает? http://segfault.kiev.ua/smart-questions-ru.html#goal

Есть ли возможность в Linux написать некий драйвер, аналогичный по возможностям фильтр-драйверу из оффтопика?

Вот здесь ошибка. Тебе нужно сделать кальку или достичь нужного результата?

i-rinat ★★★★★
()
Ответ на: комментарий от aol

aol
tty line discipline?

Да, это ближе к теме, похоже то что нужно.

Я уже самостоятельно наткнулся на эту «фичу» и курю ее...

Но смущает один момент: возможно ли заюзать «приаттаченное» в драйвере устройство /dev/ttySXYZ также и из под user scase?

Т.е. тут приводится пример, объясняющий использование /dev/ppp (или /dev/slip) девайсов.

Фишка в том, что там написано, что если открывается /dev/slip, то невозможно заюзать /dev/ttySXYZ (к которому приаттачен /dev/slip), пока этот самый /dev/slip мы не закроем.

А в моем случае необходимо приаттачить мое у-во /dev/mydevice к /dev/ttySXYZ но так, чтобы была возможность работать и с /dev/ttySXYZ, пока мы приаттачены, т.е. /dev/mydevice будет осуществлять только трансляцию запросов к /dev/ttySXYZ без изменений...

Мда, курю...

kuzulis ★★
() автор топика
Ответ на: комментарий от kuzulis

не могу сказать больше. в этой области я теоретик. но, почему-то, кажется, что это implementation-specific. как сделаешь, так и будет.

aol ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.