LINUX.ORG.RU

Как получить данные, которые отправлены/получены в файл устройства?


0

0

Здравствуйте уважаемые коллеги.

Сначала скажу для чего это надо. Reverse engineering. Есть принтер который прекрасно работает в VirtualBox, а в хост системе нет. В линукс этот принтер определяется как /dev/lp0, могу даже туда отправлять данные. Хочу перехватить и проанализировать те данные, которые отправляються с гостевой ОС на принтер.

Собственно вопрос: каким образом можно получать(перехватывать) данные проходящие по файлу устройств? Если бы был драйвер виртуального устройства, к которому можно было прицепить реальное устройство.

Спасибо за внимание. -------------------- Linux localhost 2.6.33.5-desktop-2mnb #1 SMP Thu Jun 17 21:30:10 UTC 2010 i686 i686 i386 GNU/Linux

Deleted

ну удали /dev/lp0 и вместо него создай именованный пайп, а на другом конце слушай.

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

И будет это именованный пайп, а не файл устройства. По моему скромному мнению - ничего не получится. Либо обоснуйте пожалуйста почему оно должно работать?

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

> принтер определяется как /dev/lp0, могу даже туда отправлять данные

можешь туда, можешь и в пайп, можешь создать на его месте обычный файл или симлинк на другой файл и отправлять туда. Все есть файл.

ansky ★★★★★
()

Я когда курочил сканер, ставил в гостевую ос сниффер USB. SniffUSB или usbsnoop, пробовал несколько версий. Потом анализировал логи скриптом на perl - приводил к виду «программа на с», линковал с libusb проверял, как работает, сканировал с другими параметрами, делал diff, определял, что менять, правил программку и т.д. В конце концов получил удобную для меня программу (двунапраленное сканирование, быстрее, чем под вендой, низкая загрузка процессора даже при сжатии в png в процессе сканирования, управление от кнопок сканера). Сложного абсолютно ничего.

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