File Index Symbol Index

/******************************************************************************** * * * enclaveapi.h -- ApiSet Contract for api-ms-win-core-enclave-l1-1-0 * * * * Copyright (c) Microsoft Corporation. All rights reserved. * * * ********************************************************************************/
#ifdef _MSC_VER
#pragma once
#endif // _MSC_VER
#ifndef _ENCLAVEAPI_H_
#define _ENCLAVEAPI_H_
#include <apiset.h>
#include <apisetcconv.h>
#include <minwindef.h>
#include <minwinbase.h>
#ifdef __cplusplus
extern
"C"
{
#endif
#pragma region Desktop Family or OneCore Or App Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_APP)
_Success_(return != FALSE)
BOOL
IsEnclaveTypeSupported
( );
_Ret_maybenull_
_Post_writable_byte_size_(dwSize)
LPVOID
CreateEnclave
( );
_Success_(return != FALSE)
BOOL
LoadEnclaveData
( );
_Success_(return != FALSE)
BOOL
InitializeEnclave
( );
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_APP) */
#pragma endregion #pragma region Desktop Family or OneCore Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM)
_Success_(return != FALSE)
BOOL
LoadEnclaveImageA
( );
_Success_(return != FALSE)
BOOL
LoadEnclaveImageW
( );
#ifdef UNICODE
#define LoadEnclaveImage LoadEnclaveImageW
#else
#define LoadEnclaveImage LoadEnclaveImageA #endif // !UNICODE
_Success_(return != FALSE)
BOOL
CallEnclave
( );
_Success_(return != FALSE)
BOOL
TerminateEnclave
( );
_Success_(return != FALSE)
BOOL
DeleteEnclave
( );
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) */
#pragma endregion
#ifdef __cplusplus
}
#endif
#endif // _ENCLAVEAPI_H_