From aac2e12e5f439d401029499b7cdd77c40ee8ed45 Mon Sep 17 00:00:00 2001 From: Martin Ling Date: Tue, 11 Oct 2022 15:49:22 +0100 Subject: windows: Add GetPipePolicy to struct winusb_interface --- libusb/os/windows_winusb.c | 1 + libusb/os/windows_winusb.h | 8 ++++++++ libusb/version_nano.h | 2 +- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/libusb/os/windows_winusb.c b/libusb/os/windows_winusb.c index 885b4e4..4100eaa 100644 --- a/libusb/os/windows_winusb.c +++ b/libusb/os/windows_winusb.c @@ -2344,6 +2344,7 @@ static bool winusbx_init(struct libusb_context *ctx) WinUSB_Set(hWinUSB, ResetPipe, true); WinUSB_Set(hWinUSB, SetCurrentAlternateSetting, true); WinUSB_Set(hWinUSB, SetPipePolicy, true); + WinUSB_Set(hWinUSB, GetPipePolicy, true); WinUSB_Set(hWinUSB, WritePipe, true); // Check for isochronous transfers support (available starting with Windows 8.1) diff --git a/libusb/os/windows_winusb.h b/libusb/os/windows_winusb.h index 8c14cea..437a33f 100644 --- a/libusb/os/windows_winusb.h +++ b/libusb/os/windows_winusb.h @@ -531,6 +531,13 @@ typedef BOOL (WINAPI *WinUsb_SetPipePolicy_t)( ULONG ValueLength, PVOID Value ); +typedef BOOL (WINAPI *WinUsb_GetPipePolicy_t)( + WINUSB_INTERFACE_HANDLE InterfaceHandle, + UCHAR PipeID, + ULONG PolicyType, + PULONG ValueLength, + PVOID Value +); typedef BOOL (WINAPI *WinUsb_UnregisterIsochBuffer_t)( WINUSB_ISOCH_BUFFER_HANDLE BufferHandle ); @@ -662,6 +669,7 @@ struct winusb_interface { WinUsb_ResetPipe_t ResetPipe; WinUsb_SetCurrentAlternateSetting_t SetCurrentAlternateSetting; WinUsb_SetPipePolicy_t SetPipePolicy; + WinUsb_GetPipePolicy_t GetPipePolicy; WinUsb_WritePipe_t WritePipe; union { struct { diff --git a/libusb/version_nano.h b/libusb/version_nano.h index 9e7b749..ade020c 100644 --- a/libusb/version_nano.h +++ b/libusb/version_nano.h @@ -1 +1 @@ -#define LIBUSB_NANO 11769 +#define LIBUSB_NANO 11770 -- cgit v1.2.1