mirror of
https://github.com/reactos/reactos.git
synced 2025-08-02 15:36:42 +00:00
-add some more WLAN types
-add wlansvc.idl svn path=/trunk/; revision=40047
This commit is contained in:
parent
2ce97e2c16
commit
1ed252413b
6 changed files with 414 additions and 21 deletions
17
reactos/include/psdk/eaptypes.h
Normal file
17
reactos/include/psdk/eaptypes.h
Normal file
|
@ -0,0 +1,17 @@
|
|||
#ifndef EAPTYPES_H
|
||||
#define EAPTYPES_H
|
||||
|
||||
typedef struct _EAP_TYPE
|
||||
{
|
||||
BYTE type;
|
||||
DWORD dwVendorId;
|
||||
DWORD dwVendorType;
|
||||
} EAP_TYPE, *PEAP_TYPE;
|
||||
|
||||
typedef struct _EAP_METHOD_TYPE
|
||||
{
|
||||
EAP_TYPE eapType;
|
||||
DWORD dwAuthorId;
|
||||
} EAP_METHOD_TYPE, *PEAP_METHOD_TYPE;
|
||||
|
||||
#endif
|
16
reactos/include/psdk/l2cmn.h
Normal file
16
reactos/include/psdk/l2cmn.h
Normal file
|
@ -0,0 +1,16 @@
|
|||
#ifndef _L2CMN_H
|
||||
#define _L2CMN_H
|
||||
|
||||
typedef struct _L2_NOTIFICATION_DATA {
|
||||
DWORD NotificationSource;
|
||||
DWORD NotificationCode;
|
||||
GUID InterfaceGuid;
|
||||
DWORD dwDataSize;
|
||||
#if defined(__midl) || defined(__WIDL__)
|
||||
[unique, size_is(dwDataSize)] PBYTE pData;
|
||||
#else
|
||||
PVOID pData;
|
||||
#endif
|
||||
} L2_NOTIFICATION_DATA, *PL2_NOTIFICATION_DATA;
|
||||
|
||||
#endif
|
|
@ -1,7 +1,9 @@
|
|||
#ifndef _WLANAPI_H
|
||||
#define _WLANAPI_H
|
||||
|
||||
#include <l2cmn.h>
|
||||
#include <windot11.h>
|
||||
#include <eaptypes.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -13,6 +15,34 @@ extern "C" {
|
|||
|
||||
/* Enumerations */
|
||||
|
||||
#if defined(__midl) || defined(__WIDL__)
|
||||
typedef [v1_enum] enum _WLAN_OPCODE_VALUE_TYPE {
|
||||
#else
|
||||
typedef enum _WLAN_OPCODE_VALUE_TYPE {
|
||||
#endif
|
||||
wlan_opcode_value_type_query_only = 0,
|
||||
wlan_opcode_value_type_set_by_group_policy,
|
||||
wlan_opcode_value_type_set_by_user,
|
||||
wlan_opcode_value_type_invalid
|
||||
} WLAN_OPCODE_VALUE_TYPE;
|
||||
|
||||
typedef enum _WLAN_SECURABLE_OBJECT {
|
||||
wlan_secure_permit_list = 0,
|
||||
wlan_secure_deny_list,
|
||||
wlan_secure_ac_enabled,
|
||||
wlan_secure_bc_scan_enabled,
|
||||
wlan_secure_bss_type,
|
||||
wlan_secure_show_denied,
|
||||
wlan_secure_interface_properties,
|
||||
wlan_secure_ihv_control,
|
||||
wlan_secure_all_user_profiles_order,
|
||||
wlan_secure_add_new_all_user_profiles,
|
||||
wlan_secure_add_new_per_user_profiles,
|
||||
wlan_secure_media_streaming_mode_enabled,
|
||||
wlan_secure_current_operation_mode,
|
||||
WLAN_SECURABLE_OBJECT_COUNT
|
||||
} WLAN_SECURABLE_OBJECT, *PWLAN_SECURABLE_OBJECT;
|
||||
|
||||
typedef enum _WLAN_CONNECTION_MODE {
|
||||
wlan_connection_mode_profile = 0,
|
||||
wlan_connection_mode_temporary_profile,
|
||||
|
@ -133,7 +163,7 @@ typedef struct _WLAN_AVAILABLE_NETWORK_LIST {
|
|||
DWORD dwNumberOfItems;
|
||||
DWORD dwIndex;
|
||||
#if defined(__midl) || defined(__WIDL__)
|
||||
[size_is(dwNumberOfItems)] WLAN_AVAILABLE_NETWORK Network[];
|
||||
[size_is(dwNumberOfItems)] WLAN_AVAILABLE_NETWORK Network[*];
|
||||
#else
|
||||
WLAN_AVAILABLE_NETWORK Network[1];
|
||||
#endif
|
||||
|
@ -141,35 +171,21 @@ typedef struct _WLAN_AVAILABLE_NETWORK_LIST {
|
|||
|
||||
typedef struct _WLAN_CONNECTION_PARAMETERS {
|
||||
WLAN_CONNECTION_MODE wlanConnectionMode;
|
||||
[string] wchar_t * strProfile;
|
||||
#if defined(__midl) || defined(__WIDL__)
|
||||
[string] LPCWSTR strProfile;
|
||||
#else
|
||||
LPCWSTR strProfile;
|
||||
#endif
|
||||
PDOT11_SSID pDot11Ssid;
|
||||
PDOT11_BSSID_LIST pDesiredBssidList;
|
||||
DOT11_BSS_TYPE dot11BssType;
|
||||
DWORD dwFlags;
|
||||
} WLAN_CONNECTION_PARAMETERS, *PWLAN_CONNECTION_PARAMETERS;
|
||||
|
||||
typedef L2_NOTIFICATION_DATA WLAN_NOTIFICATION_DATA, *PWLAN_NOTIFICATION_DATA;
|
||||
|
||||
/* FIXME */
|
||||
|
||||
typedef struct _struct_8 {
|
||||
DWORD elem_1;
|
||||
DWORD elem_2;
|
||||
GUID elem_3;
|
||||
DWORD elem_4;
|
||||
[size_is(elem_4)] LPBYTE elem_5;
|
||||
} struct_8 ;
|
||||
|
||||
typedef struct struct_12 {
|
||||
BYTE elem_1;
|
||||
DWORD elem_2;
|
||||
DWORD elem_3;
|
||||
} struct_12 ;
|
||||
|
||||
typedef struct _struct_9 {
|
||||
struct_12 elem_1;
|
||||
DWORD elem_2;
|
||||
} struct_9 ;
|
||||
|
||||
typedef struct struct_C {
|
||||
ULONGLONG elem_1;
|
||||
ULONGLONG elem_2;
|
||||
|
|
12
reactos/include/psdk/wlantypes.h
Normal file
12
reactos/include/psdk/wlantypes.h
Normal file
|
@ -0,0 +1,12 @@
|
|||
#ifndef __WLANTYPES_H__
|
||||
#define __WLANTYPES_H__
|
||||
|
||||
typedef enum _DOT11_BSS_TYPE {
|
||||
dot11_BSS_type_infrastructure = 1,
|
||||
dot11_BSS_type_independent,
|
||||
dot11_BSS_type_any
|
||||
} DOT11_BSS_TYPE;
|
||||
|
||||
|
||||
#endif
|
||||
|
|
@ -27,4 +27,10 @@
|
|||
<module name="lsa_client" type="rpcclient">
|
||||
<file>lsa.idl</file>
|
||||
</module>
|
||||
<module name="wlansvc_server" type="rpcserver">
|
||||
<file>wlansvc.idl</file>
|
||||
</module>
|
||||
<module name="wlansvc_client" type="rpcclient">
|
||||
<file>wlansvc.idl</file>
|
||||
</module>
|
||||
</group>
|
||||
|
|
326
reactos/include/reactos/idl/wlansvc.idl
Normal file
326
reactos/include/reactos/idl/wlansvc.idl
Normal file
|
@ -0,0 +1,326 @@
|
|||
/*
|
||||
* WLAN Service interface definition
|
||||
*/
|
||||
|
||||
#include <ms-dtyp.idl>
|
||||
#include <wlanapi.h>
|
||||
|
||||
typedef [context_handle] PVOID WLANSVC_RPC_HANDLE;
|
||||
typedef WLANSVC_RPC_HANDLE* LPWLANSVC_RPC_HANDLE;
|
||||
|
||||
[
|
||||
uuid(266f33b4-c7c1-4bd1-8f52-ddb8f2214ea9),
|
||||
version(1.0)
|
||||
]
|
||||
|
||||
interface wlansvc_interface
|
||||
{
|
||||
/* Function: 0x00 */
|
||||
DWORD _RpcOpenHandle(
|
||||
[in] wchar_t * arg_1,
|
||||
[in] DWORD dwClientVersion,
|
||||
[in, out] DWORD* pdwNegotiatedVersion,
|
||||
[in, out] LPWLANSVC_RPC_HANDLE phClientHandle);
|
||||
|
||||
/* Function: 0x01 */
|
||||
DWORD _RpcCloseHandle(
|
||||
[in, out] LPWLANSVC_RPC_HANDLE phClientHandle);
|
||||
|
||||
/* Function: 0x02 */
|
||||
DWORD _RpcEnumInterfaces(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[out, ref] PWLAN_INTERFACE_INFO_LIST *ppInterfaceList);
|
||||
|
||||
/* Function: 0x03 */
|
||||
DWORD _RpcSetAutoConfigParameter(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] /* enum32 */ long OpCode,
|
||||
[in] DWORD dwDataSize,
|
||||
[in][size_is(dwDataSize)] LPBYTE pData);
|
||||
|
||||
/* Function: 0x04 */
|
||||
DWORD _RpcQueryAutoConfigParameter(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] /* enum32 */ DWORD OpCode,
|
||||
[out] LPDWORD pdwDataSize,
|
||||
[out][ref][size_is(*pdwDataSize)] char ** ppData,
|
||||
[out] /* enum32 */ DWORD * pWlanOpcodeValueType);
|
||||
|
||||
/* Function: 0x05 */
|
||||
DWORD _RpcGetInterfaceCapability(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[out, ref] PWLAN_INTERFACE_CAPABILITY *ppCapability);
|
||||
|
||||
/* Function: 0x06 */
|
||||
DWORD _RpcSetInterface(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in] /* enum32 */ DWORD OpCode,
|
||||
[in] DWORD dwDataSize,
|
||||
[in, size_is(dwDataSize)] LPBYTE pData);
|
||||
|
||||
/* Function: 0x07 */
|
||||
DWORD _RpcQueryInterface(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in] /* enum32 */ long OpCode,
|
||||
[out] LPDWORD pdwDataSize,
|
||||
[out][ref][size_is(*pdwDataSize)] LPBYTE* ppData,
|
||||
[out] /* enum32 */ LPDWORD pWlanOpcodeValueType);
|
||||
|
||||
/* Function: 0x08 */
|
||||
DWORD _RpcIhvControl(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in] /* enum32 */ DWORD Type,
|
||||
[in] DWORD dwInBufferSize,
|
||||
[in][size_is(dwInBufferSize)] LPBYTE pInBuffer,
|
||||
[in] DWORD dwOutBufferSize,
|
||||
[out][size_is(dwOutBufferSize), length_is(*pdwBytesReturned)] LPBYTE pOutBuffer,
|
||||
[out] LPDWORD pdwBytesReturned);
|
||||
|
||||
/* Function: 0x09 */
|
||||
DWORD _RpcScan(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][unique] PDOT11_SSID pDot11Ssid,
|
||||
[in][unique] PWLAN_RAW_DATA pIeData);
|
||||
|
||||
/* Function: 0x0A */
|
||||
DWORD _RpcGetAvailableNetworkList(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in] DWORD dwFlags,
|
||||
[out][ref] WLAN_AVAILABLE_NETWORK_LIST **ppAvailableNetworkList);
|
||||
|
||||
/* Function: 0x0B */
|
||||
DWORD _RpcGetNetworkBssList(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][unique] PDOT11_SSID pDot11Ssid,
|
||||
[in] /* enum16 */ short dot11BssType,
|
||||
[in] DWORD bSecurityEnabled,
|
||||
[out] LPDWORD dwBssListSize,
|
||||
[out][ref][size_is(*dwBssListSize)] LPBYTE *ppWlanBssList);
|
||||
|
||||
/* Function: 0x0C */
|
||||
DWORD _RpcConnect(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in] PWLAN_CONNECTION_PARAMETERS* pConnectionParameters);
|
||||
|
||||
/* Function: 0x0D */
|
||||
DWORD _RpcDisconnect(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGUID);
|
||||
|
||||
/* Function: 0x0E */
|
||||
DWORD _RpcRegisterNotification(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] DWORD arg_2,
|
||||
[out] LPDWORD pdwPrevNotifSource);
|
||||
|
||||
/* Function: 0x0F */
|
||||
DWORD _RpcAsyncGetNotification(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[out][ref] PWLAN_NOTIFICATION_DATA *NotificationData);
|
||||
|
||||
/* Function: 0x10 */
|
||||
DWORD _RpcSetProfileEapUserData(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * strProfileName,
|
||||
[in] EAP_METHOD_TYPE MethodType,
|
||||
[in] DWORD dwFlags,
|
||||
[in] DWORD dwEapUserDataSize,
|
||||
[in][size_is(dwEapUserDataSize)] LPBYTE pbEapUserData);
|
||||
|
||||
/* Function: 0x11 */
|
||||
DWORD _RpcSetProfile(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in] DWORD dwFlags,
|
||||
[in][string] wchar_t * strProfileXml,
|
||||
[in][unique][string] wchar_t * strAllUserProfileSecurity,
|
||||
[in] BOOL bOverwrite,
|
||||
[out] LPDWORD pdwReasonCode);
|
||||
|
||||
/* Function: 0x12 */
|
||||
DWORD _RpcGetProfile(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * strProfileName,
|
||||
[out][ref][string] wchar_t ** pstrProfileXml,
|
||||
[out] LPDWORD pdwFlags,
|
||||
[in, out][unique] LPDWORD pdwGrantedAccess);
|
||||
|
||||
/* Function: 0x13 */
|
||||
DWORD _RpcDeleteProfile(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * strProfileName);
|
||||
|
||||
/* Function: 0x14 */
|
||||
DWORD _RpcRenameProfile(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * strOldProfileName,
|
||||
[in][string] wchar_t * strNewProfileName);
|
||||
|
||||
/* Function: 0x15 */
|
||||
DWORD _RpcSetProfileList(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in] DWORD dwItems,
|
||||
[in] /* [string] */ [size_is(dwItems)] /* wchar_t */ BYTE ** strProfileNames); /* FIXME */
|
||||
|
||||
/* Function: 0x16 */
|
||||
DWORD _RpcGetProfileList(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[out][ref] PWLAN_PROFILE_INFO_LIST *ppProfileList);
|
||||
|
||||
/* Function: 0x17 */
|
||||
DWORD _RpcSetProfilePosition(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * strProfileName,
|
||||
[in] DWORD dwPosition);
|
||||
|
||||
/* Function: 0x18 */
|
||||
DWORD _RpcSetProfileCustomUserData(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * strProfileName,
|
||||
[in] DWORD dwDataSize,
|
||||
[in][unique][size_is(dwDataSize)] LPBYTE pData);
|
||||
|
||||
/* Function: 0x19 */
|
||||
DWORD _RpcGetProfileCustomUserData(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * strProfileName,
|
||||
[out] LPDWORD dwDataSize,
|
||||
[out][ref][size_is(*dwDataSize)] LPBYTE *pData);
|
||||
|
||||
/* Function: 0x1A */
|
||||
DWORD _RpcSetFilterList(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] /* enum16 */ short wlanFilterListType,
|
||||
[in][unique] PDOT11_NETWORK_LIST pNetworkList);
|
||||
|
||||
/* Function: 0x1B */
|
||||
DWORD _RpcGetFilterList(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] /* enum16 */ short wlanFilterListType,
|
||||
[out][ref] PDOT11_NETWORK_LIST *pNetworkList);
|
||||
|
||||
/* Function: 0x1C */
|
||||
DWORD _RpcSetPsdIEDataList(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in][unique][string] wchar_t * strFormat,
|
||||
[in] DWORD dwDataListSize,
|
||||
[in][unique][size_is(dwDataListSize)] LPBYTE pPsdIEDataList);
|
||||
|
||||
/* Function: 0x1D */
|
||||
DWORD _RpcSaveTemporaryProfile(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * strProfileName,
|
||||
[in][unique][string] wchar_t * strAllUserProfileSecurity,
|
||||
[in] DWORD dwFlags,
|
||||
[in] BOOL bOverWrite);
|
||||
|
||||
/* Function: 0x1E, address: 0x2C992E36 */
|
||||
DWORD _RpcIsUIRequestPending(
|
||||
[in] wchar_t * arg_1,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in] struct_C * arg_3,
|
||||
[out] LPDWORD arg_4);
|
||||
|
||||
/* Function: 0x1F, address: 0x2C992EB3 */
|
||||
DWORD _RpcSetUIForwardingNetworkList(
|
||||
[in] wchar_t * arg_1,
|
||||
[in][size_is(dwSize)] GUID* arg_2,
|
||||
[in] DWORD dwSize,
|
||||
[out] GUID* arg_4);
|
||||
|
||||
/* Function: 0x20 */
|
||||
DWORD _RpcIsNetworkSuppressed(
|
||||
[in] wchar_t * arg_1,
|
||||
[in] DWORD arg_2,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[out] LPDWORD arg_4);
|
||||
|
||||
/* Function: 0x21 */
|
||||
DWORD _RpcRemoveUIForwardingNetworkList(
|
||||
[in] wchar_t * arg_1,
|
||||
[in] GUID* pInterfaceGuid);
|
||||
|
||||
/* Function: 0x22 */
|
||||
DWORD _RpcQueryExtUIRequest(
|
||||
[in] wchar_t * arg_1,
|
||||
[in] GUID* arg_2,
|
||||
[in] GUID* arg_3,
|
||||
[in] /* enum16 */ short arg_4,
|
||||
[out] GUID* pInterfaceGuid,
|
||||
[out][ref] struct_C ** arg_6);
|
||||
|
||||
/* Function: 0x23 */
|
||||
DWORD _RpcUIResponse(
|
||||
[in] wchar_t * arg_1,
|
||||
[in] struct_C * arg_2,
|
||||
[in] struct_D * arg_3);
|
||||
|
||||
/* Function: 0x24 */
|
||||
DWORD _RpcGetProfileKeyInfo(
|
||||
[in] wchar_t * arg_1,
|
||||
[in] DWORD arg_2,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * arg_4,
|
||||
[in] DWORD arg_5,
|
||||
[out] LPDWORD arg_6,
|
||||
[in, out][unique][size_is(arg_5)] char * arg_7,
|
||||
[out] LPDWORD arg_8);
|
||||
|
||||
/* Function: 0x25 */
|
||||
DWORD _RpcAsyncDoPlap(
|
||||
[in] wchar_t * arg_1,
|
||||
[in] GUID* pInterfaceGuid,
|
||||
[in][string] wchar_t * arg_3,
|
||||
[in] DWORD dwSize,
|
||||
[in][size_is(dwSize)] struct_E arg_5[]);
|
||||
|
||||
/* Function: 0x26 */
|
||||
DWORD _RpcQueryPlapCredentials(
|
||||
[in] wchar_t * arg_1,
|
||||
[out] LPDWORD dwSize,
|
||||
[out][ref][size_is(*dwSize)] struct_E ** arg_3,
|
||||
[out][ref][string] wchar_t ** arg_4,
|
||||
[out] GUID* pInterfaceGuid,
|
||||
[out] LPDWORD arg_6,
|
||||
[out] LPDWORD arg_7,
|
||||
[out] LPDWORD arg_8,
|
||||
[out] LPDWORD arg_9);
|
||||
|
||||
/* Function: 0x27 */
|
||||
DWORD _RpcCancelPlap(
|
||||
[in] wchar_t * arg_1,
|
||||
[in] GUID* pInterfaceGuid);
|
||||
|
||||
/* Function: 0x28 */
|
||||
DWORD _RpcSetSecuritySettings(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] WLAN_SECURABLE_OBJECT SecurableObject,
|
||||
[in][string] wchar_t * strModifiedSDDL);
|
||||
|
||||
/* Function: 0x29 */
|
||||
DWORD _RpcGetSecuritySettings(
|
||||
[in] WLANSVC_RPC_HANDLE hClientHandle,
|
||||
[in] WLAN_SECURABLE_OBJECT SecurableObject,
|
||||
[out] WLAN_OPCODE_VALUE_TYPE *pValueType,
|
||||
[out][ref][string] wchar_t ** pstrCurrentSDDL,
|
||||
[out] LPDWORD pdwGrantedAccess);
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue