Drop all encryption requests upon disconnection
[platform/core/security/key-manager.git] / src / manager / service / encryption-logic.cpp
index e3cf1d6..6698317 100644 (file)
@@ -54,6 +54,16 @@ void EncryptionLogic::Crypt(const CryptoRequest &request)
        }
 }
 
+void EncryptionLogic::DropRequests(const ConnectionID& connectionID)
+{
+       for (auto it = m_requestsMap.begin(); it != m_requestsMap.end();) {
+               if (it->second.conn.counter == connectionID.counter)
+                       it = m_requestsMap.erase(it);
+               else
+                       it++;
+       }
+}
+
 void EncryptionLogic::KeyRetrieved(MsgKeyResponse response)
 {
        auto it = m_requestsMap.find(response.id);