15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 35738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Copyright (C) 2001-2012 Broadcom Corporation 45738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 55738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 65738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * you may not use this file except in compliance with the License. 75738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * You may obtain a copy of the License at: 85738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 95738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * See the License for the specific language governing permissions and 155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * limitations under the License. 165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/ 185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * this file contains the PAN API definitions 225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/ 245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef PAN_API_H 255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_API_H 265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bnep_api.h" 285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/***************************************************************************** 305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Constants 315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/ 325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Define the minimum offset needed in a GKI buffer for 345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** sending PAN packets. Note, we are currently not sending 355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** extension headers, but may in the future, so allow 365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** space for them 375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_MINIMUM_OFFSET BNEP_MINIMUM_OFFSET 395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* 425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** The handle is passed from BNEP to PAN. The same handle is used 435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** between PAN and application as well 445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_INVALID_HANDLE BNEP_INVALID_HANDLE 465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Bit map for PAN roles */ 485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_ROLE_CLIENT 0x01 /* PANU role */ 495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_ROLE_GN_SERVER 0x02 /* GN role */ 505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_ROLE_NAP_SERVER 0x04 /* NAP role */ 515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Bitmap to indicate the usage of the Data */ 535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_DATA_TO_HOST 0x01 545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PAN_DATA_TO_LAN 0x02 555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/***************************************************************************** 585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Type Definitions 595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/ 605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Define the result codes from PAN */ 625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectenum 635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_SUCCESS, /* Success */ 655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_DISCONNECTED = BNEP_CONN_DISCONNECTED, /* Connection terminated */ 665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_CONN_FAILED = BNEP_CONN_FAILED, /* Connection failed */ 675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_NO_RESOURCES = BNEP_NO_RESOURCES, /* No resources */ 685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_MTU_EXCEDED = BNEP_MTU_EXCEDED, /* Attempt to write long data */ 695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_INVALID_OFFSET = BNEP_INVALID_OFFSET, /* Insufficient offset in GKI buffer */ 705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_CONN_FAILED_CFG = BNEP_CONN_FAILED_CFG, /* Connection failed cos of config */ 715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_INVALID_SRC_ROLE = BNEP_CONN_FAILED_SRC_UUID, /* Connection failed wrong source UUID */ 725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_INVALID_DST_ROLE = BNEP_CONN_FAILED_DST_UUID, /* Connection failed wrong destination UUID */ 735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_CONN_FAILED_UUID_SIZE = BNEP_CONN_FAILED_UUID_SIZE, /* Connection failed wrong size UUID */ 745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_Q_SIZE_EXCEEDED = BNEP_Q_SIZE_EXCEEDED, /* Too many buffers to dest */ 755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_TOO_MANY_FILTERS = BNEP_TOO_MANY_FILTERS, /* Too many local filters specified */ 765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_SET_FILTER_FAIL = BNEP_SET_FILTER_FAIL, /* Set Filter failed */ 775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_WRONG_HANDLE = BNEP_WRONG_HANDLE, /* Wrong handle for the connection */ 785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_WRONG_STATE = BNEP_WRONG_STATE, /* Connection is in wrong state */ 795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_SECURITY_FAIL = BNEP_SECURITY_FAIL, /* Failed because of security */ 805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_IGNORE_CMD = BNEP_IGNORE_CMD, /* To ignore the rcvd command */ 815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_TX_FLOW_ON = BNEP_TX_FLOW_ON, /* tx data flow enabled */ 825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_TX_FLOW_OFF = BNEP_TX_FLOW_OFF, /* tx data flow disabled */ 835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project PAN_FAILURE /* Failure */ 845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}; 865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tPAN_RESULT; 875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/***************************************************************** 905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Callback Function Prototypes 915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************/ 925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is call back function used to report connection status 945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** to the application. The second parameter TRUE means 955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** to create the bridge and FALSE means to remove it. 965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef void (tPAN_CONN_STATE_CB) (UINT16 handle, BD_ADDR bd_addr, tPAN_RESULT state, BOOLEAN is_role_change, 985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 src_role, UINT8 dst_role); 995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This is call back function used to create bridge for the 1025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Connected device. The parameter "state" indicates 1035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** whether to create the bridge or remove it. TRUE means 1045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** to create the bridge and FALSE means to remove it. 1055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 1065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef void (tPAN_BRIDGE_REQ_CB) (BD_ADDR bd_addr, BOOLEAN state); 1075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Data received indication callback prototype. Parameters are 1105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Source BD/Ethernet Address 1115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Dest BD/Ethernet address 1125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Protocol 1135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Address of buffer (or data if non-GKI) 1145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Length of data (non-GKI) 1155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** ext is flag to indicate whether it has aby extension headers 1165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Flag used to indicate to forward on LAN 1175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** FALSE - Use it for internal stack 1185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** TRUE - Send it across the ethernet as well 1195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 1205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef void (tPAN_DATA_IND_CB) (UINT16 handle, 1215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR src, 1225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR dst, 1235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 protocol, 1245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 *p_data, 1255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 len, 1265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN ext, 1275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN forward); 1285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Data buffer received indication callback prototype. Parameters are 1315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Source BD/Ethernet Address 1325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Dest BD/Ethernet address 1335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Protocol 1345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** pointer to the data buffer 1355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** ext is flag to indicate whether it has aby extension headers 1365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Flag used to indicate to forward on LAN 1375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** FALSE - Use it for internal stack 1385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** TRUE - Send it across the ethernet as well 1395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 1405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef void (tPAN_DATA_BUF_IND_CB) (UINT16 handle, 1415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR src, 1425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR dst, 1435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 protocol, 1445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR *p_buf, 1455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN ext, 1465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN forward); 1475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Flow control callback for TX data. Parameters are 1505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Handle to the connection 1515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Event flow status 1525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 1535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef void (tPAN_TX_DATA_FLOW_CB) (UINT16 handle, 1545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tPAN_RESULT event); 1555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Filters received indication callback prototype. Parameters are 1575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Handle to the connection 1585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** TRUE if the cb is called for indication 1595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Ignore this if it is indication, otherwise it is the result 1605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** for the filter set operation performed by the local 1615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** device 1625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Number of protocol filters present 1635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Pointer to the filters start. Filters are present in pairs 1645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** of start of the range and end of the range. 1655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** They will be present in big endian order. First 1665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** two bytes will be starting of the first range and 1675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** next two bytes will be ending of the range. 1685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 1695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef void (tPAN_FILTER_IND_CB) (UINT16 handle, 1705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN indication, 1715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBNEP_RESULT result, 1725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 num_filters, 1735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 *p_filters); 1745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* Multicast Filters received indication callback prototype. Parameters are 1785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Handle to the connection 1795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** TRUE if the cb is called for indication 1805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Ignore this if it is indication, otherwise it is the result 1815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** for the filter set operation performed by the local 1825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** device 1835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Number of multicast filters present 1845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Pointer to the filters start. Filters are present in pairs 1855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** of start of the range and end of the range. 1865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** First six bytes will be starting of the first range and 1875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** next six bytes will be ending of the range. 1885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 1895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef void (tPAN_MFILTER_IND_CB) (UINT16 handle, 1905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN indication, 1915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBNEP_RESULT result, 1925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 num_mfilters, 1935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 *p_mfilters); 1945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This structure is used to register with PAN profile 1995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** It is passed as a parameter to PAN_Register call. 2005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*/ 2015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tPAN_CONN_STATE_CB *pan_conn_state_cb; /* Connection state callback */ 2045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tPAN_BRIDGE_REQ_CB *pan_bridge_req_cb; /* Bridge request callback */ 2055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tPAN_DATA_IND_CB *pan_data_ind_cb; /* Data indication callback */ 2065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tPAN_DATA_BUF_IND_CB *pan_data_buf_ind_cb; /* Data buffer indication callback */ 2075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tPAN_FILTER_IND_CB *pan_pfilt_ind_cb; /* protocol filter indication callback */ 2085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tPAN_MFILTER_IND_CB *pan_mfilt_ind_cb; /* multicast filter indication callback */ 2095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tPAN_TX_DATA_FLOW_CB *pan_tx_data_flow_cb; /* data flow callback */ 2105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project char *user_service_name; /* Service name for PANU role */ 2115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project char *gn_service_name; /* Service name for GN role */ 2125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project char *nap_service_name; /* Service name for NAP role */ 2135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tPAN_REGISTER; 2155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/***************************************************************************** 2185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** External Function Declarations 2195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/ 2205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifdef __cplusplus 2215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern "C" 2225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 2265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_Register 2285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This function is called by the application to register 2305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** its callbacks with PAN profile. The application then 2315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** should set the PAN role explicitly. 2325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Parameters: p_register - contains all callback function pointers 2345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns none 2375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 2395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern void PAN_Register (tPAN_REGISTER *p_register); 2405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 2435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_Deregister 2455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This function is called by the application to de-register 2475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** its callbacks with PAN profile. This will make the PAN to 2485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** become inactive. This will deregister PAN services from SDP 2495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** and close all active connections 2505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns none 2525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 2545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern void PAN_Deregister (void); 2555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 2575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_SetRole 2595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This function is called by the application to set the PAN 2615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** profile role. This should be called after PAN_Register. 2625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** This can be called any time to change the PAN role 2635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Parameters: role - is bit map of roles to be active 2655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_ROLE_CLIENT is for PANU role 2665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_ROLE_GN_SERVER is for GN role 2675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_ROLE_NAP_SERVER is for NAP role 2685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** sec_mask - Security mask for different roles 2695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** It is array of UINT8. The byte represent the 2705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** security for roles PANU, GN and NAP in order 2715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** p_user_name - Service name for PANU role 2725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** p_gn_name - Service name for GN role 2735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** p_nap_name - Service name for NAP role 2745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Can be NULL if user wants it to be default 2755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns PAN_SUCCESS - if the role is set successfully 2775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_FAILURE - if the role is not valid 2785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 2805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern tPAN_RESULT PAN_SetRole (UINT8 role, 2815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 *sec_mask, 2825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project char *p_user_name, 2835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project char *p_gn_name, 2845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project char *p_nap_name); 2855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 2875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_Connect 2895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This function is called by the application to initiate a 2915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** connection to the remote device 2925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 2935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Parameters: rem_bda - BD Addr of the remote device 2945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** src_role - Role of the local device for the connection 2955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** dst_role - Role of the remote device for the connection 2965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_ROLE_CLIENT is for PANU role 2975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_ROLE_GN_SERVER is for GN role 2985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_ROLE_NAP_SERVER is for NAP role 2995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** *handle - Pointer for returning Handle to the connection 3005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns PAN_SUCCESS - if the connection is initiated successfully 3025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_NO_RESOURCES - resources are not sufficent 3035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_FAILURE - if the connection cannot be initiated 3045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** this can be because of the combination of 3055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** src and dst roles may not be valid or 3065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** allowed at that point of time 3075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 3095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern tPAN_RESULT PAN_Connect (BD_ADDR rem_bda, UINT8 src_role, UINT8 dst_role, UINT16 *handle); 3105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 3125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_Disconnect 3145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This is used to disconnect the connection 3165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Parameters: handle - handle for the connection 3185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns PAN_SUCCESS - if the connection is closed successfully 3205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_FAILURE - if the connection is not found or 3215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** there is an error in disconnecting 3225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 3245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern tPAN_RESULT PAN_Disconnect (UINT16 handle); 3255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 3275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_Write 3295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This sends data over the PAN connections. If this is called 3315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** on GN or NAP side and the packet is multicast or broadcast 3325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** it will be sent on all the links. Otherwise the correct link 3335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** is found based on the destination address and forwarded on it 3345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** If the return value is not PAN_SUCCESS the application should 3355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** take care of releasing the message buffer 3365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Parameters: dst - MAC or BD Addr of the destination device 3385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** src - MAC or BD Addr of the source who sent this packet 3395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** protocol - protocol of the ethernet packet like IP or ARP 3405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** p_data - pointer to the data 3415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** len - length of the data 3425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** ext - to indicate that extension headers present 3435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns PAN_SUCCESS - if the data is sent successfully 3455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_FAILURE - if the connection is not found or 3465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** there is an error in sending data 3475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 3495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern tPAN_RESULT PAN_Write (UINT16 handle, 3505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR dst, 3515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR src, 3525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 protocol, 3535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 *p_data, 3545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 len, 3555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN ext); 3565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 3585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_WriteBuf 3605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This sends data over the PAN connections. If this is called 3625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** on GN or NAP side and the packet is multicast or broadcast 3635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** it will be sent on all the links. Otherwise the correct link 3645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** is found based on the destination address and forwarded on it 3655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** If the return value is not PAN_SUCCESS the application should 3665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** take care of releasing the message buffer 3675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Parameters: dst - MAC or BD Addr of the destination device 3695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** src - MAC or BD Addr of the source who sent this packet 3705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** protocol - protocol of the ethernet packet like IP or ARP 3715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** p_buf - pointer to the data buffer 3725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** ext - to indicate that extension headers present 3735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns PAN_SUCCESS - if the data is sent successfully 3755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_FAILURE - if the connection is not found or 3765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** there is an error in sending data 3775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 3795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern tPAN_RESULT PAN_WriteBuf (UINT16 handle, 3805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR dst, 3815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR src, 3825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 protocol, 3835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR *p_buf, 3845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN ext); 3855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 3875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_SetProtocolFilters 3895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This function is used to set protocol filters on the peer 3915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Parameters: handle - handle for the connection 3935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** num_filters - number of protocol filter ranges 3945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** start - array of starting protocol numbers 3955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** end - array of ending protocol numbers 3965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 3985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns PAN_SUCCESS if protocol filters are set successfully 3995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_FAILURE if connection not found or error in setting 4005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 4025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern tPAN_RESULT PAN_SetProtocolFilters (UINT16 handle, 4035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 num_filters, 4045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 *p_start_array, 4055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 *p_end_array); 4065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 4085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_SetMulticastFilters 4105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This function is used to set multicast filters on the peer 4125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Parameters: handle - handle for the connection 4145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** num_filters - number of multicast filter ranges 4155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** p_start_array - Pointer to sequence of beginings of all 4165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** multicast address ranges 4175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** p_end_array - Pointer to sequence of ends of all 4185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** multicast address ranges 4195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns PAN_SUCCESS if multicast filters are set successfully 4225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** PAN_FAILURE if connection not found or error in setting 4235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 4255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern tBNEP_RESULT PAN_SetMulticastFilters (UINT16 handle, 4265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 num_mcast_filters, 4275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 *p_start_array, 4285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 *p_end_array); 4295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 4315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_SetTraceLevel 4335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This function sets the trace level for PAN. If called with 4355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** a value of 0xFF, it simply reads the current trace level. 4365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns the new (current) trace level 4385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 4405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern UINT8 PAN_SetTraceLevel (UINT8 new_level); 4415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 4435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function PAN_Init 4455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description This function initializes the PAN unit. It should be called 4475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** before accessing any other APIs to initialize the control 4485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** block. 4495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns void 4515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** 4525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/ 4535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectPAN_API extern void PAN_Init (void); 4545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifdef __cplusplus 4565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} 4575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 4585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* PAN_API_H */ 460