From 57f5044c9a9da414cf0c76bd7edf864213e5bd7f Mon Sep 17 00:00:00 2001 From: Abtin Keshavarzian Date: Fri, 8 Nov 2019 15:40:54 -0800 Subject: [PATCH] [key-manager] add Pskc::Clear() method (#4315) --- src/core/thread/key_manager.cpp | 2 +- src/core/thread/key_manager.hpp | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/core/thread/key_manager.cpp b/src/core/thread/key_manager.cpp index 067b10f72..527c0efbe 100644 --- a/src/core/thread/key_manager.cpp +++ b/src/core/thread/key_manager.cpp @@ -84,7 +84,7 @@ KeyManager::KeyManager(Instance &aInstance) , mIsPskcSet(false) { mMasterKey = static_cast(kDefaultMasterKey); - memset(&mPskc, 0, sizeof(mPskc)); + mPskc.Clear(); ComputeKey(mKeySequence, mKey); } diff --git a/src/core/thread/key_manager.hpp b/src/core/thread/key_manager.hpp index 26e5da3e5..c8dfa99e8 100644 --- a/src/core/thread/key_manager.hpp +++ b/src/core/thread/key_manager.hpp @@ -97,6 +97,12 @@ OT_TOOL_PACKED_BEGIN class Pskc : public otPskc { public: + /** + * This method clears the PSKc (sets all bytes to zero). + * + */ + void Clear(void) { memset(this, 0, sizeof(*this)); } + /** * This method evaluates whether or not the Thread PSKc values match. *