12345678910111213141516171819202122232425262728293031323334353637 |
- // Copyright 2016 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #ifndef COMPONENTS_OS_CRYPT_OS_CRYPT_MOCKER_H_
- #define COMPONENTS_OS_CRYPT_OS_CRYPT_MOCKER_H_
- #include "build/build_config.h"
- // Handles the mocking of OSCrypt, such that it does not reach system level
- // services.
- class OSCryptMocker {
- public:
- OSCryptMocker(const OSCryptMocker&) = delete;
- OSCryptMocker& operator=(const OSCryptMocker&) = delete;
- // Inject mocking into OSCrypt.
- static void SetUp();
- #if BUILDFLAG(IS_APPLE)
- // Pretend that backend for storing keys is unavailable.
- static void SetBackendLocked(bool locked);
- #endif
- #if BUILDFLAG(IS_WIN)
- // Store data using the older DPAPI interface rather than session key.
- static void SetLegacyEncryption(bool legacy);
- // Reset OSCrypt so it can be initialized again with a new profile/key.
- static void ResetState();
- #endif
- // Restore OSCrypt to its real behaviour.
- static void TearDown();
- };
- #endif // COMPONENTS_OS_CRYPT_OS_CRYPT_MOCKER_H_
|