diff options
author | saturneric <[email protected]> | 2023-12-03 12:27:47 +0000 |
---|---|---|
committer | saturneric <[email protected]> | 2023-12-03 12:27:47 +0000 |
commit | ae2717c3787a34a2c60d6aeef2d0b8bb8e551a1e (patch) | |
tree | 3e4ca2b2add05bd101efca9741c732506a7da8cc /src/core/function/basic/SingletonStorage.h | |
parent | refeactor: reduce codes in pinentry (diff) | |
download | GpgFrontend-ae2717c3787a34a2c60d6aeef2d0b8bb8e551a1e.tar.gz GpgFrontend-ae2717c3787a34a2c60d6aeef2d0b8bb8e551a1e.zip |
feat: improve memory security of function framework
Diffstat (limited to 'src/core/function/basic/SingletonStorage.h')
-rw-r--r-- | src/core/function/basic/SingletonStorage.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/core/function/basic/SingletonStorage.h b/src/core/function/basic/SingletonStorage.h index 04fb2f07..e678fe44 100644 --- a/src/core/function/basic/SingletonStorage.h +++ b/src/core/function/basic/SingletonStorage.h @@ -28,10 +28,15 @@ #pragma once +#include "core/function/SecureMemoryAllocator.h" + namespace GpgFrontend { class ChannelObject; +using ChannelObjectPtr = + std::unique_ptr<ChannelObject, SecureObjectDeleter<ChannelObject>>; + class GPGFRONTEND_CORE_EXPORT SingletonStorage { public: /** @@ -75,7 +80,7 @@ class GPGFRONTEND_CORE_EXPORT SingletonStorage { * @param p_obj * @return T* */ - auto SetObjectInChannel(int channel, std::unique_ptr<ChannelObject> p_obj) + auto SetObjectInChannel(int channel, ChannelObjectPtr p_obj) -> ChannelObject*; private: |