USB Raw Gadget,一個用於模擬 USB 設備的 Linux 模塊,現已推出

Google 的安德烈·科諾瓦洛夫(Andrey Konovalov)正在開發一個新模組 USB Raw小工具, 允許 在用戶空間模擬 USB 裝置。 等待中 要求 將此模組包含在主 Linux 核心中。 USB Raw 小工具已經 適用 Google 使用工具簡化 USB 核心堆疊的模糊測試 塞茲卡勒.

該模組為內核子系統添加了新的編程接口 USB小工具 正在開發作為 GadgetFS 的替代品。 新 API 的創建是由於需要從用戶空間獲得對 USB Gadget 子系統的低級直接訪問,從而允許其處理所有可能的 USB 請求(GadgetFS 獨立處理一些請求,而不將其傳遞到用戶空間) 。 USB Raw Gadget 透過 /dev/raw-gadget 裝置進行控制,類似於 GadgetFS 中的 /dev/gadget,但互動使用基於 ioctl() 的介面而不是偽 FS。

除了用戶空間中的進程直接處理所有 USB 請求外,新介面還具有傳回任何資料以回應 USB 請求的功能(GadgetFS 檢查 USB 描述符的正確性並過濾某些回應,從而防止檢測到) USB 堆疊模糊測試期間的錯誤)。 Raw Gadget 還使您能夠選擇要連接的特定 UDC(USB 設備控制器)設備和驅動程序,而 GadgetFS 則連接到第一個可用的 UDC 設備。 可預測的名稱分配給不同的 UDC 端點 分離一台設備內不同類型的資料交換通道。

來源: opennet.ru

添加評論