Give GenericGap access to the Security Manager's PAL

pull/6932/head
Donatien Garnier 2018-05-14 13:36:02 +01:00
parent a3d9d6cebd
commit 472d3de849
3 changed files with 12 additions and 3 deletions

View File

@ -23,6 +23,7 @@
#include "ble/BLEProtocol.h" #include "ble/BLEProtocol.h"
#include "ble/Gap.h" #include "ble/Gap.h"
#include "ble/pal/PalGap.h" #include "ble/pal/PalGap.h"
#include "ble/pal/PalSecurityManager.h"
#include "ble/pal/GapEvents.h" #include "ble/pal/GapEvents.h"
#include "ble/pal/GapTypes.h" #include "ble/pal/GapTypes.h"
#include "ble/BLETypes.h" #include "ble/BLETypes.h"
@ -55,11 +56,15 @@ public:
* *
* @param generic_access_service Platform abstraction instance managing * @param generic_access_service Platform abstraction instance managing
* the GATT generic access service. * the GATT generic access service.
*
* @param pal_sm Security Manager Platform abstraction instance containing the base
* Security Manager primitives.
*/ */
GenericGap( GenericGap(
pal::EventQueue &event_queue, pal::EventQueue &event_queue,
pal::Gap &pal_gap, pal::Gap &pal_gap,
pal::GenericAccessService &generic_access_service pal::GenericAccessService &generic_access_service,
pal::SecurityManager &pal_sm
); );
/** /**
@ -350,6 +355,7 @@ private:
pal::EventQueue& _event_queue; pal::EventQueue& _event_queue;
pal::Gap &_pal_gap; pal::Gap &_pal_gap;
pal::GenericAccessService &_gap_service; pal::GenericAccessService &_gap_service;
pal::SecurityManager &_pal_sm;
BLEProtocol::AddressType_t _address_type; BLEProtocol::AddressType_t _address_type;
ble::address_t _address; ble::address_t _address;
pal::initiator_policy_t _initiator_policy_mode; pal::initiator_policy_t _initiator_policy_mode;

View File

@ -382,10 +382,12 @@ static bool is_advertising_params_valid(const GapAdvertisingParams& params)
GenericGap::GenericGap( GenericGap::GenericGap(
pal::EventQueue& event_queue, pal::EventQueue& event_queue,
pal::Gap& pal_gap, pal::Gap& pal_gap,
pal::GenericAccessService& generic_access_service pal::GenericAccessService& generic_access_service,
pal::SecurityManager& pal_sm
) : _event_queue(event_queue), ) : _event_queue(event_queue),
_pal_gap(pal_gap), _pal_gap(pal_gap),
_gap_service(generic_access_service), _gap_service(generic_access_service),
_pal_sm(pal_sm),
_address_type(BLEProtocol::AddressType::PUBLIC), _address_type(BLEProtocol::AddressType::PUBLIC),
_initiator_policy_mode(pal::initiator_policy_t::NO_FILTER), _initiator_policy_mode(pal::initiator_policy_t::NO_FILTER),
_scanning_filter_policy(pal::scanning_filter_policy_t::NO_FILTER), _scanning_filter_policy(pal::scanning_filter_policy_t::NO_FILTER),

View File

@ -170,7 +170,8 @@ generic::GenericGap& BLE::getGap()
static ble::generic::GenericGap gap( static ble::generic::GenericGap gap(
_event_queue, _event_queue,
pal::vendor::cordio::Gap::get_gap(), pal::vendor::cordio::Gap::get_gap(),
cordio_gap_service cordio_gap_service,
pal::vendor::cordio::CordioSecurityManager::get_security_manager()
); );
return gap; return gap;