1 /** \file connApi.h 2 * \brief connection module API 3 * 4 * \see conn.c 5 */ 6 /**************************************************************************** 7 **+-----------------------------------------------------------------------+** 8 **| |** 9 **| Copyright(c) 1998 - 2008 Texas Instruments. All rights reserved. |** 10 **| All rights reserved. |** 11 **| |** 12 **| Redistribution and use in source and binary forms, with or without |** 13 **| modification, are permitted provided that the following conditions |** 14 **| are met: |** 15 **| |** 16 **| * Redistributions of source code must retain the above copyright |** 17 **| notice, this list of conditions and the following disclaimer. |** 18 **| * Redistributions in binary form must reproduce the above copyright |** 19 **| notice, this list of conditions and the following disclaimer in |** 20 **| the documentation and/or other materials provided with the |** 21 **| distribution. |** 22 **| * Neither the name Texas Instruments nor the names of its |** 23 **| contributors may be used to endorse or promote products derived |** 24 **| from this software without specific prior written permission. |** 25 **| |** 26 **| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |** 27 **| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |** 28 **| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |** 29 **| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |** 30 **| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |** 31 **| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |** 32 **| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |** 33 **| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |** 34 **| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |** 35 **| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |** 36 **| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |** 37 **| |** 38 **+-----------------------------------------------------------------------+** 39 ****************************************************************************/ 40 41 /***************************************************************************/ 42 /* */ 43 /* MODULE: connApi.h */ 44 /* PURPOSE: connection module API */ 45 /* */ 46 /***************************************************************************/ 47 #ifndef __CONN_API_H__ 48 #define __CONN_API_H__ 49 50 #include "osTIType.h" 51 #include "paramOut.h" 52 #include "paramIn.h" 53 #include "802_11Defs.h" 54 #include "mlmeApi.h" 55 56 /* 57 * Connection type enum 58 */ 59 typedef enum{ 60 CONN_TYPE_FIRST_CONN = 0, /* Standart 802.11 association */ 61 CONN_TYPE_ROAM /* Perform roaming connection. (Re Association) */ 62 }connType_e; 63 64 65 /* 66 Prototype for connection status announcment, this function is called upon connection 67 lost or connection establishment. 68 */ 69 typedef TI_STATUS (*conn_status_callback_t)( TI_HANDLE hObj, mgmtStatus_e status, UINT32 uStatusCode); 70 71 72 /* Connection interface functions prototypes */ 73 74 TI_HANDLE conn_create(TI_HANDLE hOs); 75 76 TI_STATUS conn_config(TI_HANDLE hConn, 77 TI_HANDLE hSiteMgr, 78 TI_HANDLE hSmeSm, 79 TI_HANDLE hMlmeSm, 80 TI_HANDLE hRsn, 81 TI_HANDLE hRxData, 82 TI_HANDLE hTxData, 83 TI_HANDLE hReport, 84 TI_HANDLE hOs, 85 TI_HANDLE hPwrMngr, 86 TI_HANDLE hCtrlData, 87 TI_HANDLE hMeasurementMgr, 88 TI_HANDLE hTrafficMonitor, 89 TI_HANDLE hScr, 90 TI_HANDLE hExcMngr, 91 TI_HANDLE hQosMngr, 92 TI_HANDLE hHalCtrl, 93 TI_HANDLE hScanCnc, 94 TI_HANDLE hCurrBss, 95 TI_HANDLE hSwitchChannel, 96 TI_HANDLE hEvHandler, 97 TI_HANDLE hHealthMonitor, 98 TI_HANDLE hMacServices, 99 TI_HANDLE hRegulatoryDomain, 100 TI_HANDLE hSoftGemini, 101 connInitParams_t *pConnInitParams); 102 103 TI_STATUS conn_unLoad(TI_HANDLE hConn); 104 105 TI_STATUS conn_setParam(TI_HANDLE hConn, 106 paramInfo_t *pParam); 107 108 TI_STATUS conn_getParam(TI_HANDLE hConn, 109 paramInfo_t *pParam); 110 111 TI_STATUS conn_start(TI_HANDLE hConn ,connType_e connType, 112 conn_status_callback_t pConnStatusCB, 113 TI_HANDLE connStatCbObj, 114 BOOL disConEraseKeys, 115 BOOL reNegotiateTspec); 116 void connInfraJoinCmdCmpltNotification(TI_HANDLE CB_handle); 117 118 TI_STATUS conn_stop(TI_HANDLE hConn, disConnType_e disConnType, 119 mgmtStatus_e reason, 120 BOOL disConEraseKeys, 121 conn_status_callback_t pConnStatusCB, 122 TI_HANDLE connStatCbObj ); 123 124 125 TI_STATUS conn_ibssStaJoined(TI_HANDLE hConn); 126 127 void conn_disConnFrameSentCBFunc(TI_HANDLE hConn); 128 129 void conn_ibssPrintStatistics(TI_HANDLE hConn); 130 131 #endif /* __CONN_API_H__ */ 132