device: boost -> std locks to fix c++17 compilation

This commit is contained in:
selsta 2023-06-29 16:56:46 +02:00
parent 5965b02aef
commit 5136974da9
No known key found for this signature in database
GPG key ID: 2EA0A99A8B07AE5E
3 changed files with 13 additions and 18 deletions

View file

@ -34,9 +34,6 @@
#include "cryptonote_basic/subaddress_index.h" #include "cryptonote_basic/subaddress_index.h"
#include "cryptonote_core/cryptonote_tx_utils.h" #include "cryptonote_core/cryptonote_tx_utils.h"
#include <boost/thread/locks.hpp>
#include <boost/thread/lock_guard.hpp>
namespace hw { namespace hw {
namespace ledger { namespace ledger {
@ -322,10 +319,10 @@ namespace hw {
//automatic lock one more level on device ensuring the current thread is allowed to use it //automatic lock one more level on device ensuring the current thread is allowed to use it
#define AUTO_LOCK_CMD() \ #define AUTO_LOCK_CMD() \
/* lock both mutexes without deadlock*/ \ /* lock both mutexes without deadlock*/ \
boost::lock(device_locker, command_locker); \ std::lock(device_locker, command_locker); \
/* make sure both already-locked mutexes are unlocked at the end of scope */ \ /* make sure both already-locked mutexes are unlocked at the end of scope */ \
boost::lock_guard<boost::recursive_mutex> lock1(device_locker, boost::adopt_lock); \ std::lock_guard<std::recursive_mutex> lock1(device_locker, std::adopt_lock); \
boost::lock_guard<boost::mutex> lock2(command_locker, boost::adopt_lock) std::lock_guard<std::mutex> lock2(command_locker, std::adopt_lock)
//lock the device for a long sequence //lock the device for a long sequence
void device_ledger::lock(void) { void device_ledger::lock(void) {

View file

@ -35,8 +35,7 @@
#include "device.hpp" #include "device.hpp"
#include "log.hpp" #include "log.hpp"
#include "device_io_hid.hpp" #include "device_io_hid.hpp"
#include <boost/thread/mutex.hpp> #include <mutex>
#include <boost/thread/recursive_mutex.hpp>
namespace hw { namespace hw {
@ -140,8 +139,8 @@ namespace hw {
class device_ledger : public hw::device { class device_ledger : public hw::device {
private: private:
// Locker for concurrent access // Locker for concurrent access
mutable boost::recursive_mutex device_locker; mutable std::recursive_mutex device_locker;
mutable boost::mutex command_locker; mutable std::mutex command_locker;
//IO //IO
hw::io::device_io_hid hw_device; hw::io::device_io_hid hw_device;

View file

@ -32,13 +32,12 @@
#include <cstddef> #include <cstddef>
#include <mutex>
#include <string> #include <string>
#include "device/device.hpp" #include "device/device.hpp"
#include "device/device_default.hpp" #include "device/device_default.hpp"
#include "device/device_cold.hpp" #include "device/device_cold.hpp"
#include <boost/scope_exit.hpp> #include <boost/scope_exit.hpp>
#include <boost/thread/mutex.hpp>
#include <boost/thread/recursive_mutex.hpp>
#include "cryptonote_config.h" #include "cryptonote_config.h"
#include "trezor.hpp" #include "trezor.hpp"
@ -49,12 +48,12 @@
//automatic lock one more level on device ensuring the current thread is allowed to use it //automatic lock one more level on device ensuring the current thread is allowed to use it
#define TREZOR_AUTO_LOCK_CMD() \ #define TREZOR_AUTO_LOCK_CMD() \
/* lock both mutexes without deadlock*/ \ /* lock both mutexes without deadlock*/ \
boost::lock(device_locker, command_locker); \ std::lock(device_locker, command_locker); \
/* make sure both already-locked mutexes are unlocked at the end of scope */ \ /* make sure both already-locked mutexes are unlocked at the end of scope */ \
boost::lock_guard<boost::recursive_mutex> lock1(device_locker, boost::adopt_lock); \ std::lock_guard<std::recursive_mutex> lock1(device_locker, std::adopt_lock); \
boost::lock_guard<boost::mutex> lock2(command_locker, boost::adopt_lock) std::lock_guard<std::mutex> lock2(command_locker, std::adopt_lock)
#define TREZOR_AUTO_LOCK_DEVICE() boost::lock_guard<boost::recursive_mutex> lock1_device(device_locker) #define TREZOR_AUTO_LOCK_DEVICE() std::lock_guard<std::recursive_mutex> lock1_device(device_locker)
namespace hw { namespace hw {
namespace trezor { namespace trezor {
@ -86,8 +85,8 @@ namespace trezor {
protected: protected:
// Locker for concurrent access // Locker for concurrent access
mutable boost::recursive_mutex device_locker; mutable std::recursive_mutex device_locker;
mutable boost::mutex command_locker; mutable std::mutex command_locker;
std::shared_ptr<Transport> m_transport; std::shared_ptr<Transport> m_transport;
i_device_callback * m_callback; i_device_callback * m_callback;