Sergey Solodunov / nRF51822

Dependencies:   nrf51-sdk

Fork of nRF51822 by Nordic Semiconductor

Committer:
rgrover1
Date:
Tue Jul 21 13:23:44 2015 +0100
Revision:
389:5982ee136c47
Synchronized with git rev b743df2a
Author: Andrew Fernandes
Remove unnecessary 'compiler_abstraction.h' to get rid of duplicate '__ASM' warning.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rgrover1 389:5982ee136c47 1 /* mbed Microcontroller Library
rgrover1 389:5982ee136c47 2 * Copyright (c) 2006-2013 ARM Limited
rgrover1 389:5982ee136c47 3 *
rgrover1 389:5982ee136c47 4 * Licensed under the Apache License, Version 2.0 (the "License");
rgrover1 389:5982ee136c47 5 * you may not use this file except in compliance with the License.
rgrover1 389:5982ee136c47 6 * You may obtain a copy of the License at
rgrover1 389:5982ee136c47 7 *
rgrover1 389:5982ee136c47 8 * http://www.apache.org/licenses/LICENSE-2.0
rgrover1 389:5982ee136c47 9 *
rgrover1 389:5982ee136c47 10 * Unless required by applicable law or agreed to in writing, software
rgrover1 389:5982ee136c47 11 * distributed under the License is distributed on an "AS IS" BASIS,
rgrover1 389:5982ee136c47 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
rgrover1 389:5982ee136c47 13 * See the License for the specific language governing permissions and
rgrover1 389:5982ee136c47 14 * limitations under the License.
rgrover1 389:5982ee136c47 15 */
rgrover1 389:5982ee136c47 16
rgrover1 389:5982ee136c47 17 #ifndef __NRF51822_SECURITY_MANAGER_H__
rgrover1 389:5982ee136c47 18 #define __NRF51822_SECURITY_MANAGER_H__
rgrover1 389:5982ee136c47 19
rgrover1 389:5982ee136c47 20 #include <stddef.h>
rgrover1 389:5982ee136c47 21
rgrover1 389:5982ee136c47 22 #include "ble/SecurityManager.h"
rgrover1 389:5982ee136c47 23 #include "btle_security.h"
rgrover1 389:5982ee136c47 24
rgrover1 389:5982ee136c47 25 class nRF51SecurityManager : public SecurityManager
rgrover1 389:5982ee136c47 26 {
rgrover1 389:5982ee136c47 27 public:
rgrover1 389:5982ee136c47 28 static nRF51SecurityManager &getInstance();
rgrover1 389:5982ee136c47 29
rgrover1 389:5982ee136c47 30 /* Functions that must be implemented from SecurityManager */
rgrover1 389:5982ee136c47 31 virtual ble_error_t init(bool enableBonding,
rgrover1 389:5982ee136c47 32 bool requireMITM,
rgrover1 389:5982ee136c47 33 SecurityIOCapabilities_t iocaps,
rgrover1 389:5982ee136c47 34 const Passkey_t passkey) {
rgrover1 389:5982ee136c47 35 return btle_initializeSecurity(enableBonding, requireMITM, iocaps, passkey);
rgrover1 389:5982ee136c47 36 }
rgrover1 389:5982ee136c47 37
rgrover1 389:5982ee136c47 38 virtual ble_error_t getLinkSecurity(Gap::Handle_t connectionHandle, LinkSecurityStatus_t *securityStatusP) {
rgrover1 389:5982ee136c47 39 return btle_getLinkSecurity(connectionHandle, securityStatusP);
rgrover1 389:5982ee136c47 40 }
rgrover1 389:5982ee136c47 41
rgrover1 389:5982ee136c47 42 virtual ble_error_t purgeAllBondingState(void) {
rgrover1 389:5982ee136c47 43 return btle_purgeAllBondingState();
rgrover1 389:5982ee136c47 44 }
rgrover1 389:5982ee136c47 45
rgrover1 389:5982ee136c47 46 public:
rgrover1 389:5982ee136c47 47 nRF51SecurityManager() {
rgrover1 389:5982ee136c47 48 /* empty */
rgrover1 389:5982ee136c47 49 }
rgrover1 389:5982ee136c47 50
rgrover1 389:5982ee136c47 51 private:
rgrover1 389:5982ee136c47 52 nRF51SecurityManager(const nRF51SecurityManager &);
rgrover1 389:5982ee136c47 53 const nRF51SecurityManager& operator=(const nRF51SecurityManager &);
rgrover1 389:5982ee136c47 54 };
rgrover1 389:5982ee136c47 55
rgrover1 389:5982ee136c47 56 #endif // ifndef __NRF51822_SECURITY_MANAGER_H__