Суть вопроса в том, что есть приложение для работы с флэшкой под виндовс, оно использует DeviceIoControl вызовы, но нужен порт того же самого под линукс, примерно почитал про ioctl вроде смысл аналогичный, но не понятно как перевести коды вызовов DeviceIoControl в коды ioctl и что делать в случае если входной и выходной буферы имеют разные размеры?
вызовов несколько встречаются как стандартные коды так и специфичные
Надо сближать позиции Linux и Windows пока код не будет более менее нормален в обоих средах...там где не получиться, то ветвление... как пример можно глянуть мое поделие на сайте www.lcard.ru. Там в библиотеке файлов lcomp_linux.tgz и lcomp.exe имеют общую библиотеку для работы с драйверами....
>Надо сближать позиции Linux и Windows пока код не будет более менее
>нормален в обоих средах...там где не получиться, то ветвление...проблема в том, что сближать дальше некуда вроде, системные вызовы...
более конкретный вопрос, можно ли под линукс отправить устройству полностью собранный руками USB-пакет (libusb не подходит так как приходится выгружать модуль mass-storage), желательно при этом адресоваться по файловому дескриптору
Ммм... если в винде драйвер неподконтролен те есть просто набор вызовов DeviceIoControl, то придеться в линухе писать библиотечку-эмулятор этого множества. Ну и написать свой драйвер для устройства...а там уж можно послать что угодно...