0525f6b112
setupapi: Rename SP_REMOVEDEVICE_PARAMS to RemoveDeviceParams
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-07 23:50:43 +01:00
9d830826c5
setupapi: Rename SP_CLASSINSTALL_HEADER to ClassInstallHeader
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-07 23:50:43 +01:00
bd963497da
setupapi: Merge _SP_DEVINSTALL_PARAMS and DevInstallParams
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-07 23:50:30 +01:00
05d25fd1b7
setupapi: Merge _SP_DEVINFO_LIST_DETAIL_DATA and DevInfoListDetailData
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-07 23:49:50 +01:00
6d2729dccc
setupapi: Rename SP_DEVINFO_DATA to DevInfoData
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-07 22:43:02 +01:00
d87cbeeb2f
wintun: Detect if a foreign interface with the same name exists
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-07 22:02:51 +01:00
043b7e8013
wintun: Clean excessive setupapi.DevInfo.GetDeviceInfoListDetail() call
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-07 20:49:41 +01:00
ef48d4fa95
wintun: Explain rationale behind case-insensitive interface names
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-07 19:42:59 +01:00
f7276ed522
wintun: Implement TODO in TestSetupDiGetDeviceRegistryProperty()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-07 18:59:34 +01:00
c4b43e35a7
wintun: add FlushInterface stub
2019-02-07 18:24:28 +01:00
2efafecab5
main_windows: Get iface name from argument
2019-02-07 15:44:07 +01:00
fac1fbcd72
wintun: Compare values of GUID, not pointers, when removing
2019-02-07 04:49:15 +01:00
52aa00f3ba
main_windows: Catch more exit events
2019-02-07 04:42:35 +01:00
ea59177f1c
wintun: Introduce new package for obscuring Windows bits
2019-02-07 04:39:59 +01:00
306d08e692
tun_windows: Style
2019-02-07 04:08:05 +01:00
3b7a4fa3ef
setupapi: Lower case params
2019-02-07 03:46:31 +01:00
223685875f
setupapi: Do not export the toGo/toWindows functions
2019-02-07 02:56:31 +01:00
652158ec3c
setupapi: Pass pointers instead of values
2019-02-07 02:37:19 +01:00
cb2bc4b34c
tun_windows: Introduce preliminary TUN interface creation
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-06 22:30:14 +01:00
46279ad0f9
tun_windows: Stop checking minimum size of received TUN packets
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-06 20:22:04 +01:00
73df1c0871
setupapi: Add DrvInfoDetailData.IsCompatible() to simplify HID detection
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-06 20:18:44 +01:00
069016bbc4
setupapi: Add SP_DRVINFO_DATA.IsNewer() method to simplify comparison
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-06 20:17:47 +01:00
3c29434a79
setupapi: Make toUTF16() public and add UTF16ToBuf() counterpart
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-06 20:15:40 +01:00
c599bf9497
Fix up errors and paths
2019-02-05 22:06:25 +09:00
f7f63765d1
conn: close ipv4 socket when ipv6 socket fails
2019-02-05 21:55:33 +09:00
3e8f2e3fa5
setupapi: Add support for driver info lists
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 16:29:17 +01:00
7b636380e5
setupapi: Move Go<>Windows struct marshaling to types_windows.go
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 14:03:28 +01:00
99a3b628e9
setupapi: Add support for SetupDi(Get|Set)DeviceRegistryProperty()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
e7ffce0d21
setupapi: Introduce DevInfo methods for cleaner code
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
35f72239ac
Add support for setupapi.SetupDi(Get|Set)SelectedDevice()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
c15cbefc12
Reorder data-types and functions to match SetupAPI.h
...
Adding functions with non-consistent order made setupapi package a mess.
While we could reorder data-types and functions by alphabet - it would
make searching easier - it would put ...Get... and ...Set... functions
quite apart.
Therefore, the SetupAPI.h order was adopted.
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
dd998ca86a
Add support for setupapi.SetupDiCreateDeviceInfo()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
024a4916c2
Add support for setupapi.setupDiCreateDeviceInfoListEx()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
963be8e993
Stop accessing SetupDiGetDeviceInfoListDetail() output on error
...
The data returned by SetupDiGetDeviceInfoListDetail() is nil on error
which will cause the test to crash should the function fail.
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
e821cdabd2
Unify certain variable names
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
38c7acd70f
Simplify SetupDiEnumDeviceInfo() synopsis
...
The SetupDiEnumDeviceInfo() now returns a SP_DEVINFO_DATA rather than
taking it on input to fill it on return.
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
20f1512b7c
Change generic local variable names with meaningful replacements
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
348b4e9f7c
Add support for setupapi.SetupDiClassGuidsFromNameEx()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
f81882ee8b
Clean an unused constant
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
3e0e61dd26
Replace SetupDiClassNameFromGuid() with SetupDiClassNameFromGuidEx()
...
The former is only a subset of the later. To minimize future
maintenance, we'll provide support for extended version only.
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
9635a0b3a6
Add support for setupapi.SetupDiClassNameFromGuid()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
90b6938ca0
Stop checking for valid handle in DevInfo.Close()
...
User should not have called or deferred the Close() method should
SetupDiGetClassDevsEx() return an error (and invalid handle). And even
if user does that, a SetupDiDestroyDeviceInfoList(INVALID_HANDLE_VALUE)
is harmless. It just returns ERROR_INVALID_HANDLE - we have a unit test
for this in TestSetupDiDestroyDeviceInfoList().
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
269944002f
Add support for setupapi.SetupDiCallClassInstaller()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
a5a1ece32f
Add support for setupapi.SetupDi(Get|Set)ClassInstallParams()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
f1d5db6547
Add support for setupapi.SetupDi(Get|Set)DeviceInstallParams()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
dce5192d86
Add support for setupapi.SetupDiOpenDevRegKey()
...
Furthermore setupapi.DevInfoData has been obsoleted.
SetupDiEnumDeviceInfo() fills existing SP_DEVINFO_DATA structure now.
As other functions of SetupAPI use SP_DEVINFO_DATA, converting it to
DevInfoData and back would hurt performance.
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
955d8dfe04
Add support for setupapi.SetupDiEnumDeviceInfo()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
25e18d01e6
Update exported types and functions annotations
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
45959c116a
Add support for setupapi.SetupDiGetDeviceInfoListDetail()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00
d41bc015cc
Finish support for setupapi.SetupDiGetClassDevsEx()
...
Signed-off-by: Simon Rozman <simon@rozman.si >
2019-02-05 12:59:42 +01:00