Skip to content

Commit

Permalink
Add usbscan module
Browse files Browse the repository at this point in the history
  • Loading branch information
retep998 committed Jun 25, 2020
1 parent 73153e8 commit 1e52916
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 0 deletions.
1 change: 1 addition & 0 deletions Cargo.toml
Expand Up @@ -107,6 +107,7 @@ udpmib = []
usb = []
usbioctl = []
usbiodef = []
usbscan = []
usbspec = []
windef = []
windot11 = []
Expand Down
1 change: 1 addition & 0 deletions build.rs
Expand Up @@ -85,6 +85,7 @@ const DATA: &'static [(&'static str, &'static [&'static str], &'static [&'static
("usb", &["minwindef", "usbspec", "winnt"], &[]),
("usbioctl", &["basetsd", "guiddef", "minwindef", "ntdef", "usb", "usbiodef", "usbspec", "winioctl"], &[]),
("usbiodef", &["guiddef", "minwindef", "winioctl", "winnt"], &[]),
("usbscan", &["ntdef", "winioctl"], &[]),
("usbspec", &["basetsd", "guiddef", "minwindef", "winnt"], &[]),
("windef", &["minwindef", "winnt"], &[]),
("windot11", &["basetsd", "minwindef", "ntddndis", "winnt", "wlantypes"], &[]),
Expand Down
1 change: 1 addition & 0 deletions src/shared/mod.rs
Expand Up @@ -76,6 +76,7 @@ pub mod guiddef;
#[cfg(feature = "usb")] pub mod usb;
#[cfg(feature = "usbioctl")] pub mod usbioctl;
#[cfg(feature = "usbiodef")] pub mod usbiodef;
#[cfg(feature = "usbscan")] pub mod usbscan;
#[cfg(feature = "usbspec")] pub mod usbspec;
#[cfg(feature = "windef")] pub mod windef;
#[cfg(feature = "windot11")] pub mod windot11;
Expand Down
21 changes: 21 additions & 0 deletions src/shared/usbscan.rs
@@ -0,0 +1,21 @@
// Licensed under the Apache License, Version 2.0
// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
// All files in the project carrying such notice may not be copied, modified, or distributed
// except according to those terms
use shared::ntdef::{ULONG, USHORT};
use um::winioctl::{FILE_ANY_ACCESS, METHOD_BUFFERED};
//98
STRUCT!{struct DEVICE_DESCRIPTOR {
usVendorId: USHORT,
usProductId: USHORT,
usBcdDevice: USHORT,
usLanguageId: USHORT,
}}
pub type PDEVICE_DESCRIPTOR = *mut DEVICE_DESCRIPTOR;
//132
pub const FILE_DEVICE_USB_SCAN: ULONG = 0x8000;
pub const IOCTL_INDEX: ULONG = 0x0800;
//143
pub const IOCTL_GET_USB_DESCRIPTOR: ULONG
= CTL_CODE!(FILE_DEVICE_USB_SCAN, IOCTL_INDEX + 8, METHOD_BUFFERED, FILE_ANY_ACCESS);

0 comments on commit 1e52916

Please sign in to comment.