桥接USB主机到设备

use*_*395 8 c c++ linux usb

简而言之,我正在开发一种嵌入式系统,除了其他功能之外,还需要从USB主机端口到设备端口的桥接(这只是第一步,以后传输的信息将被过滤和更改).

考虑到这基本上是一个USB窥探器/嗅探器,我认为有人应该写一个能够做到这一点的模块,但我的搜索已证明是徒劳的.

那么,问题是:在Linux中将USB主机重定向到USB设备的最简单方法是什么?数据必须相同,所有描述符和端点必须匹配.它必须是Linux友好的,我可以用C/C++编写代码,并且具有编译内核模块,驱动程序等方面的一些经验.

小智 5

我在http://www.elinux.org/BeagleBoard/GSoC/2010_Projects/USBSniffer找到了以前的工作

在Linux中,将USB主机重定向到USB设备的最简单方法是使用Linux的外围USB堆栈和Linux小工具USB堆栈.这些堆栈负责低级别,因此您的代码应仅涉及这两个堆栈之间的高级接口.额外的奖励是嗅探器(通过usbmon)几乎是免费的.

由于这种方式将处理Linux内核,它必须是Linux友好的.两个堆栈的接口(至少)在C中可用.因此,您的条件得到满足.