windows: use correct type for security attributes' descriptor member
The SECURITY_ATTRIBUTES struct always takes a SECURITY_DESCRIPTOR
pointer. Now that we've defined SECURITY_DESCRIPTOR, make
SECURITY_ATTRIBUTES properly specify the type. This eliminates the need
for terrible uintptr(unsafe.Pointer(...)) casts everywhere.
Change-Id: Ibbc85524cfe33589d43f963e10aa19d7f47686f2
Reviewed-on: https://go-review.googlesource.com/c/sys/+/196797
Run-TryBot: Jason A. Donenfeld <Jason@zx2c4.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
diff --git a/windows/security_windows.go b/windows/security_windows.go
index 22dd83e..5b2f6ba 100644
--- a/windows/security_windows.go
+++ b/windows/security_windows.go
@@ -901,6 +901,12 @@
dacl *ACL
}
+type SecurityAttributes struct {
+ Length uint32
+ SecurityDescriptor *SECURITY_DESCRIPTOR
+ InheritHandle uint32
+}
+
type SE_OBJECT_TYPE uint32
// Constants for type SE_OBJECT_TYPE
diff --git a/windows/types_windows.go b/windows/types_windows.go
index 8d34bf1..a548234 100644
--- a/windows/types_windows.go
+++ b/windows/types_windows.go
@@ -471,12 +471,6 @@
return
}
-type SecurityAttributes struct {
- Length uint32
- SecurityDescriptor uintptr
- InheritHandle uint32
-}
-
type Overlapped struct {
Internal uintptr
InternalHigh uintptr