[ uuid(621dff68-3c39-4c6c-aae3-e68e2c6503ad), version(1.0), #ifdef __midl ms_union, #endif // __midl endpoint("mscn_np:[\\pipe\\wzcsvc]"), pointer_default(unique) ] interface winwzc { import "import.idl"; typedef [handle] wchar_t* STRING_HANDLE; typedef [context_handle] void * WZC_DBLOG_SESSION_HANDLE; typedef struct _WZC_DB_RECORD_CONTAINER { DWORD dwNumRecords; [size_is(dwNumRecords)] PWZC_DB_RECORD pWZCRecords; } WZC_DB_RECORD_CONTAINER, * PWZC_DB_RECORD_CONTAINER; DWORD RpcEnumInterfaces( [in, string, unique] STRING_HANDLE pSrvAddr, [ref, out] PINTFS_KEY_TABLE pIntfsTable); DWORD RpcQueryInterface( [in, string, unique] STRING_HANDLE pSrvAddr, [in] DWORD dwInFlags, [ref, in, out] PINTF_ENTRY pIntfEntry, [unique, in, out] LPDWORD pdwOutFlags); DWORD RpcSetInterface( [in, string, unique] STRING_HANDLE pSrvAddr, [in] DWORD dwInFlags, [ref, in] PINTF_ENTRY pIntfEntry, [unique, in, out] LPDWORD pdwOutFlags); DWORD RpcRefreshInterface( [in, string, unique] STRING_HANDLE pSrvAddr, [in] DWORD dwInFlags, [ref, in] PINTF_ENTRY pIntfEntry, [unique, in, out] LPDWORD pdwOutFlags); DWORD RpcQueryContext( [in, string, unique] STRING_HANDLE pSrvAddr, [in] DWORD dwInFlags, [ref, in, out] PWZC_CONTEXT pContext, [unique, in, out] LPDWORD pdwOutFlags); DWORD RpcSetContext( [in, string, unique] STRING_HANDLE pSrvAddr, [in] DWORD dwInFlags, [ref, in] PWZC_CONTEXT pContext, [unique, in, out] LPDWORD pdwOutFlags); DWORD RpcEapolUIResponse ( [in, string, unique] STRING_HANDLE pSrvAddr, [in] EAPOL_EAP_UI_CONTEXT EapolUIContext, [in] EAPOLUI_RESP EapolUIResp); DWORD RpcEapolGetCustomAuthData ( [in, string, unique] STRING_HANDLE pSrvAddr, [in, string] PWCHAR pwszGuid, [in] DWORD dwEapTypeId, [in] RAW_DATA rdSSID, [in, out] PRAW_DATA prdConnInfo); DWORD RpcEapolSetCustomAuthData ( [in, string, unique] STRING_HANDLE pSrvAddr, [in, string] PWCHAR pwszGuid, [in] DWORD dwEapTypeId, [in] RAW_DATA rdSSID, [in, out] PRAW_DATA prdConnInfo); DWORD RpcEapolGetInterfaceParams ( [in, string, unique] STRING_HANDLE pSrvAddr, [in, string] PWCHAR pwszGuid, [ref, in, out] PEAPOL_INTF_PARAMS pIntfParams); DWORD RpcEapolSetInterfaceParams ( [in, string, unique] STRING_HANDLE pSrvAddr, [in, string] PWCHAR pwszGuid, [ref, in, out] PEAPOL_INTF_PARAMS pIntfParams); DWORD RpcEapolReAuthenticateInterface ( [in, string, unique] STRING_HANDLE pSrvAddr, [in, string] PWCHAR pwszGuid); DWORD RpcEapolQueryInterfaceState ( [in, string, unique] STRING_HANDLE pSrvAddr, [in, string] PWCHAR pwszGuid, [ref, in, out] PEAPOL_INTF_STATE pIntfState); DWORD RpcOpenWZCDbLogSession( [in, string, unique] STRING_HANDLE pServerName, [out] WZC_DBLOG_SESSION_HANDLE * phSession ); DWORD RpcCloseWZCDbLogSession( [in, out] WZC_DBLOG_SESSION_HANDLE * phSession ); DWORD RpcEnumWZCDbLogRecords( [in] WZC_DBLOG_SESSION_HANDLE hSession, [in] PWZC_DB_RECORD_CONTAINER pTemplateRecordContainer, [in, out, unique] PBOOL pbEnumFromStart, [in] DWORD dwPreferredNumEntries, [in, out] PWZC_DB_RECORD_CONTAINER * ppRecordContainer ); DWORD RpcFlushWZCDbLog( [in] WZC_DBLOG_SESSION_HANDLE hSession ); DWORD RpcGetWZCDbLogRecord( [in] WZC_DBLOG_SESSION_HANDLE hSession, [in] PWZC_DB_RECORD_CONTAINER pTemplateRecordContainer, [in, out] PWZC_DB_RECORD_CONTAINER * ppRecordContainer ); }