From 1c7092347c1306d55cfc2b800c669dcfeb5c449b Mon Sep 17 00:00:00 2001 From: Simon Rozman Date: Mon, 10 Oct 2016 12:40:13 +0200 Subject: [PATCH] EapHostPeerFreeRuntimeMemory_delete and eap_blob_runtime introduced to support releasing memory using EapHostPeerFreeRuntimeMemory() --- include/WinStd/EAP.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/include/WinStd/EAP.h b/include/WinStd/EAP.h index b7148684..69accdb2 100644 --- a/include/WinStd/EAP.h +++ b/include/WinStd/EAP.h @@ -51,6 +51,16 @@ namespace winstd /// typedef std::unique_ptr WINSTD_API eap_blob; + /// + /// Deleter for unique_ptr using EapHostPeerFreeRuntimeMemory + /// + struct WINSTD_API EapHostPeerFreeRuntimeMemory_delete; + + /// + /// EapHost BLOB wrapper class + /// + typedef std::unique_ptr WINSTD_API eap_blob_runtime; + /// /// Deleter for unique_ptr to EAP_ERROR using EapHostPeerFreeEapError /// @@ -178,6 +188,24 @@ namespace winstd }; + struct WINSTD_API EapHostPeerFreeRuntimeMemory_delete + { + /// + /// Default constructor + /// + EapHostPeerFreeRuntimeMemory_delete() {} + + /// + /// Delete a pointer + /// + template + void operator()(_T *_Ptr) const + { + EapHostPeerFreeRuntimeMemory((BYTE*)_Ptr); + } + }; + + struct WINSTD_API EapHostPeerFreeErrorMemory_delete { ///