Commit Graph

27 Commits

Author SHA1 Message Date
Francois Gouget 9fe40c9f58 wineusb.sys: Fix a potential buffer overflow in add_usb_device().
name needs to be able to hold 15 characters plus an unsigned int,
potentially up to 10 characters even if it is unlikely, plus the
trailing nul character.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 12:07:38 +02:00
Zebediah Figura b6a20450f4 wineusb.sys: Unlink devices from the list in the PDO IRP_MN_SURPRISE_REMOVAL.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51479
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 11:57:17 +02:00
Zebediah Figura 33f7b14c6c wineusb.sys: Mark child PDOs as removed as soon as they are hot-unplugged.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 11:57:14 +02:00
Rémi Bernon 0b9d1d9ffb wineusb.sys: Return STATUS_DELETE_PENDING when device is removed.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-01 22:34:31 +02:00
Rémi Bernon 84c9206ca7 wineusb.sys: Handle IRP_MN_SURPRISE_REMOVAL and set removed flag.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-01 22:34:31 +02:00
Rémi Bernon b38db8a69c wineusb.sys: Introduce new remove_pending_irps helper.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-01 22:34:31 +02:00
Zebediah Figura 66a0cc9636 wineusb.sys: Report RawDeviceOK in IRP_MN_QUERY_CAPABILITIES.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-12 19:32:15 +02:00
Zebediah Figura 181fe28f68 wineusb.sys: Return STATUS_DELETE_PENDING rather than STATUS_CANCELLED when a device is removed.
Microsoft doesn't really clearly document this, but their driver samples return it here, and so do remove locks.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 14:41:47 +01:00
Alexandre Julliard 7caa127746 wineusb.sys: Move wineusb.inf into the module resources.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-11 11:04:40 +01:00
Francois Gouget e328a60017 wineusb.sys: Fix the spelling of an ERR() message.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 12:16:34 +02:00
Zebediah Figura c2854d8be2 wineusb.sys: Avoid touching the IRP structure after queueing it.
Spotted by Thomas Faber.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 11:30:25 +02:00
Zebediah Figura 23081e8ebd wineusb.sys: Correctly implement device removal.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 22:03:16 +02:00
Zebediah Figura bd2ab3aa06 wineusb.sys: Implement URB_FUNCTION_SYNC_RESET_PIPE_AND_CLEAR_STALL.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:35:10 +02:00
Zebediah Figura 66bdf9f77c wineusb.sys: Implement URB_FUNCTION_ABORT_PIPE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:35:07 +02:00
Zebediah Figura d6fac18a72 wineusb.sys: Implement URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:35:03 +02:00
Zebediah Figura e5e2cc1024 wineusb.sys: Implement URB_FUNCTION_VENDOR_INTERFACE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:34:58 +02:00
Zebediah Figura a103ee5794 wineusb.sys: Partially implement URB_FUNCTION_SELECT_CONFIGURATION.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:34:50 +02:00
Zebediah Figura 65b9b2028b wineusb.sys: Implement URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:34:46 +02:00
Zebediah Figura 2710aa1766 wineusb.sys: Return compatible IDs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-17 11:50:14 +02:00
Zebediah Figura 01315d5286 wineusb.sys: Implement hardware IDs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-17 11:50:12 +02:00
Zebediah Figura a66d44b96e wineusb.sys: Implement device and instance IDs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-17 11:50:10 +02:00
Zebediah Figura 5b47a2db6c wineusb.sys: Implement IRP_MN_QUERY_DEVICE_RELATIONS.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:04 +02:00
Zebediah Figura b0c2e5c6ce wineusb.sys: Create USB devices.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:04 +02:00
Zebediah Figura eb8cb9e0cf wineusb.sys: Start an event handler thread.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:04 +02:00
Zebediah Figura ff9645b215 wineusb.sys: Implement basic IRP_MJ_PNP requests for the bus FDO.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:04 +02:00
Zebediah Figura 1a5e531838 wineusb.sys: Implement AddDevice().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:04 +02:00
Zebediah Figura 3c39209444 wineusb.sys: New stub driver.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:04 +02:00