1/****************************************************************************** 2 * 3 * Copyright (C) 2009-2013 Broadcom Corporation 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at: 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 * 17 ******************************************************************************/ 18 19#ifndef PROFILES_API_H 20#define PROFILES_API_H 21 22#include "bt_target.h" 23#include "btm_api.h" 24 25/***************************************************************************** 26** Constants 27*****************************************************************************/ 28#define BT_PASS 0 /* Used for general successful function returns */ 29 30/*** Port entity passes back 8 bit errors; will use upper byte offset ***/ 31#define PORT_ERR_GRP 0x0000 /* base offset for port entity */ 32#define GAP_ERR_GRP 0x0100 /* base offset for GAP profile */ 33#define SPP_ERR_GRP 0x0200 /* base offset for serial port profile */ 34#define HCRP_ERR_GRP 0x0300 /* base offset for HCRP */ 35#define HCRPM_ERR_GRP 0x0400 /* base offset for HCRPM */ 36 37/* #define HSP2_ERR_GRP 0x0F00 */ 38 39/* security level definitions (tBT_SECURITY) */ 40#define BT_USE_DEF_SECURITY 0 41#define BT_SEC_MODE_NONE BTM_SEC_MODE_NONE 42#define BT_SEC_MODE_SERVICE BTM_SEC_MODE_SERVICE 43#define BT_SEC_MODE_LINK BTM_SEC_MODE_LINK 44 45/* security mask definitions (tBT_SECURITY) */ 46/* The following definitions are OR'd together to form the security requirements */ 47#define BT_SEC_IN_AUTHORIZE BTM_SEC_IN_AUTHORIZE /* Inbound call requires authorization */ 48#define BT_SEC_IN_AUTHENTICATE BTM_SEC_IN_AUTHENTICATE /* Inbound call requires authentication */ 49#define BT_SEC_IN_ENCRYPT BTM_SEC_IN_ENCRYPT /* Inbound call requires encryption */ 50#define BT_SEC_OUT_AUTHORIZE BTM_SEC_OUT_AUTHORIZE /* Outbound call requires authorization */ 51#define BT_SEC_OUT_AUTHENTICATE BTM_SEC_OUT_AUTHENTICATE /* Outbound call requires authentication */ 52#define BT_SEC_OUT_ENCRYPT BTM_SEC_OUT_ENCRYPT /* Outbound call requires encryption */ 53 54 55/***************************************************************************** 56** Type Definitions 57*****************************************************************************/ 58 59/* 60** Security Definitions 61** This following definitions are used to indicate the security 62** requirements for a service. 63*/ 64typedef struct 65{ 66 UINT8 level; 67 UINT8 mask; 68} tBT_SECURITY; 69 70#endif /* PROFILES_API_H */ 71 72