Logging instead of stderr
This commit is contained in:
parent
62e0a177fb
commit
e9470ffb78
1
implementations/caching/cache/Cache.h
vendored
1
implementations/caching/cache/Cache.h
vendored
@ -79,7 +79,6 @@ boost::optional<Value> Cache<Key, Value, MAX_ENTRIES>::pop(const Key &key) {
|
|||||||
template<class Key, class Value, uint32_t MAX_ENTRIES>
|
template<class Key, class Value, uint32_t MAX_ENTRIES>
|
||||||
void Cache<Key, Value, MAX_ENTRIES>::push(const Key &key, Value value) {
|
void Cache<Key, Value, MAX_ENTRIES>::push(const Key &key, Value value) {
|
||||||
std::unique_lock<std::mutex> lock(_mutex);
|
std::unique_lock<std::mutex> lock(_mutex);
|
||||||
//std::cout << "Pushing " << key.ToString() << "\n";
|
|
||||||
ASSERT(_cachedBlocks.size() <= MAX_ENTRIES, "Cache too full");
|
ASSERT(_cachedBlocks.size() <= MAX_ENTRIES, "Cache too full");
|
||||||
_makeSpaceForEntry(&lock);
|
_makeSpaceForEntry(&lock);
|
||||||
_cachedBlocks.push(key, CacheEntry<Key, Value>(std::move(value)));
|
_cachedBlocks.push(key, CacheEntry<Key, Value>(std::move(value)));
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
#include "ciphers/Cipher.h"
|
#include "ciphers/Cipher.h"
|
||||||
#include <messmer/cpp-utils/assert/assert.h>
|
#include <messmer/cpp-utils/assert/assert.h>
|
||||||
#include <mutex>
|
#include <mutex>
|
||||||
|
#include <messmer/cpp-utils/logging/logging.h>
|
||||||
|
|
||||||
namespace blockstore {
|
namespace blockstore {
|
||||||
namespace encrypted {
|
namespace encrypted {
|
||||||
@ -79,14 +80,12 @@ boost::optional<cpputils::unique_ref<EncryptedBlock<Cipher>>> EncryptedBlock<Cip
|
|||||||
boost::optional<cpputils::Data> plaintextWithHeader = Cipher::decrypt((byte*)baseBlock->data(), baseBlock->size(), encKey);
|
boost::optional<cpputils::Data> plaintextWithHeader = Cipher::decrypt((byte*)baseBlock->data(), baseBlock->size(), encKey);
|
||||||
if(plaintextWithHeader == boost::none) {
|
if(plaintextWithHeader == boost::none) {
|
||||||
//Decryption failed (e.g. an authenticated cipher detected modifications to the ciphertext)
|
//Decryption failed (e.g. an authenticated cipher detected modifications to the ciphertext)
|
||||||
//TODO Think about logging
|
cpputils::logging::LOG(cpputils::logging::WARN) << "Decrypting block " << baseBlock->key().ToString() << " failed. Was the block modified by an attacker?";
|
||||||
std::cerr << "Decrypting block " << baseBlock->key().ToString() << " failed. Was the block modified by an attacker?" << std::endl;
|
|
||||||
return boost::none;
|
return boost::none;
|
||||||
}
|
}
|
||||||
if(!_keyHeaderIsCorrect(baseBlock->key(), *plaintextWithHeader)) {
|
if(!_keyHeaderIsCorrect(baseBlock->key(), *plaintextWithHeader)) {
|
||||||
//The stored key in the block data is incorrect - an attacker might have exchanged the contents with the encrypted data from a different block
|
//The stored key in the block data is incorrect - an attacker might have exchanged the contents with the encrypted data from a different block
|
||||||
//TODO Think about logging
|
cpputils::logging::LOG(cpputils::logging::WARN) << "Decrypting block " << baseBlock->key().ToString() << " failed due to invalid block key. Was the block modified by an attacker?";
|
||||||
std::cerr << "Decrypting block " << baseBlock->key().ToString() << " failed due to invalid block key. Was the block modified by an attacker?" << std::endl;
|
|
||||||
return boost::none;
|
return boost::none;
|
||||||
}
|
}
|
||||||
return cpputils::make_unique_ref<EncryptedBlock<Cipher>>(std::move(baseBlock), encKey, std::move(*plaintextWithHeader));
|
return cpputils::make_unique_ref<EncryptedBlock<Cipher>>(std::move(baseBlock), encKey, std::move(*plaintextWithHeader));
|
||||||
|
Loading…
Reference in New Issue
Block a user