Как отследить сырой (символьный) поток устройства в Unix? - PullRequest
3 голосов
/ 03 мая 2010

Я пытаюсь отследить, что происходит в необработанном (символьном) устройстве в системе Unix (например, /dev/tty.baseband) для целей отладки.

Я думаю о создании демона, который бы:

  • при запуске переименуйте /dev/tty.baseband в /dev/tty.baseband.old.
  • создать необработанный узел /dev/tty.baseband
  • порождает две темы:

  • Тема 1: чтение /dev/tty.baseband.old запись в /dev/tty.baseband

  • Тема 2: чтение /dev/tty.baseband запись в /dev/tty.baseband.old

Это будет немного похоже на процесс MITM. Интересно, не существует ли «стандартного» способа сделать это.

1 Ответ

1 голос
/ 29 мая 2010

Неважно, я нашел, как это сделать. Путь был:

  • создать процесс
  • создать новый псевдо-терминал, открывая / dev / ptmx
  • вызовите grantpt и разблокируйте на подчиненном
  • переименуйте терминал в intecept
  • переименовать терминал, создать предыдущее имя перехваченного терминала

Я написал небольшую статью и предоставил исходный код, если кому-то это нужно:

http://fabiensanglard.net/cellphoneModem/index2.php

...