summaryrefslogtreecommitdiffstats
path: root/stack/include/dun_api.h
diff options
context:
space:
mode:
Diffstat (limited to 'stack/include/dun_api.h')
-rw-r--r--stack/include/dun_api.h201
1 files changed, 201 insertions, 0 deletions
diff --git a/stack/include/dun_api.h b/stack/include/dun_api.h
new file mode 100644
index 0000000..2b3679f
--- /dev/null
+++ b/stack/include/dun_api.h
@@ -0,0 +1,201 @@
+/************************************************************************************
+**
+** Name: dun_api.h
+**
+** Description: this file contains the DUN API declaration
+**
+**
+** Copyright (c) 1999-2004, WIDCOMM Inc., All Rights Reserved.
+** WIDCOMM Bluetooth Core. Proprietary and confidential.
+*************************************************************************************/
+#ifndef DUN_API_H
+#define DUN_API_H
+
+#include "bt_target.h"
+#include "btm_api.h"
+#include "sdp_api.h"
+#include "port_api.h"
+
+/*****************************************************************************
+** Constants
+*****************************************************************************/
+
+/* API function return values */
+#define DUN_SUCCESS 0
+#define DUN_FAIL 1
+
+/* Values for the options parameter. It is an integer bit mask that
+** contains information used in the DUN or Fax SDP record. These values
+** can be or'ed together to indicate more than one option. Fax class options
+** are not allowed for the DUN profile.
+*/
+#define DUN_OPTIONS_AUDIO (1<<0) /* Audio feedback supported */
+#define DUN_OPTIONS_CLASS1 (1<<1) /* Fax class 1 supported */
+#define DUN_OPTIONS_CLASS20 (1<<2) /* Fax class 2.0 supported */
+#define DUN_OPTIONS_CLASS2 (1<<3) /* Fax class 2 supported */
+
+/*****************************************************************************
+** Type definitions
+*****************************************************************************/
+
+/* This callback function returns service discovery information to the
+** application after the DUN_FindService() API function is called. The
+** implementation of this callback function must copy the p_name parameter
+** passed to it as it is not guaranteed to remain after the callback
+** function exits.
+*/
+typedef void (tDUN_FIND_CBACK)(BOOLEAN found, UINT8 scn, char* p_name,
+ UINT16 name_len, UINT16 options);
+
+
+/*****************************************************************************
+** External Function Declarations
+*****************************************************************************/
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/******************************************************************************
+**
+** Function DUN_Listen
+**
+** Description This function opens a DUN or Fax connection in server mode.
+** It configures the security settings for the connection,
+** opens an RFCOMM connection in server mode, and sets the
+** class of device as required by the profile. It returns
+** the handle for the RFCOMM connection.
+**
+** Returns DUN_SUCCESS if function execution succeeded,
+** DUN_FAIL if function execution failed.
+**
+******************************************************************************/
+DUN_API extern UINT8 DUN_Listen(UINT16 service_uuid, char *p_service_name,
+ UINT8 scn, UINT16 mtu, UINT8 security_mask,
+ UINT16 *p_handle, tPORT_CALLBACK *p_cback);
+
+/******************************************************************************
+**
+** Function DUN_Connect
+**
+** Description This function opens a DUN or Fax client connection.
+** It configures the security settings for the connection
+** and opens an RFCOMM connection in server mode.
+** It returns the handle for the RFCOMM connection.
+**
+** Returns DUN_SUCCESS if function execution succeeded,
+** DUN_FAIL if function execution failed.
+**
+******************************************************************************/
+DUN_API extern UINT8 DUN_Connect(UINT16 service_uuid, BD_ADDR bd_addr, UINT8 scn,
+ UINT16 mtu, UINT8 security_mask, UINT16 *p_handle,
+ tPORT_CALLBACK *p_cback);
+
+/******************************************************************************
+**
+** Function DUN_Close
+**
+** Description This function closes a DUN or Fax client connection
+** previously opened with DUN_Connect().
+**
+** Returns DUN_SUCCESS if function execution succeeded,
+** DUN_FAIL if function execution failed.
+**
+******************************************************************************/
+DUN_API extern UINT8 DUN_Close(UINT16 handle);
+
+/******************************************************************************
+**
+** Function DUN_Shutdown
+**
+** Description This function closes a DUN or Fax server connection
+** previously opened with DUN_Listen(). It is called if
+** the application wishes to close the DUN or Fax server
+** connection at any time.
+**
+** Returns DUN_SUCCESS if function execution succeeded,
+** DUN_FAIL if function execution failed.
+**
+******************************************************************************/
+DUN_API extern UINT8 DUN_Shutdown(UINT16 handle);
+
+/******************************************************************************
+**
+** Function DUN_AddRecord
+**
+** Description This function is called by a server application to add
+** DUN or Fax information to an SDP record. Prior to
+** calling this function the application must call
+** SDP_CreateRecord() to create an SDP record.
+**
+** Returns DUN_SUCCESS if function execution succeeded,
+** DUN_FAIL if function execution failed.
+**
+******************************************************************************/
+DUN_API extern UINT8 DUN_AddRecord(UINT16 service_uuid, char *p_service_name,
+ UINT8 scn, UINT16 options, UINT32 sdp_handle);
+
+/******************************************************************************
+**
+** Function DUN_FindService
+**
+** Description This function is called by a client application to
+** perform service discovery and retrieve DUN or Fax SDP
+** record information from a server. Information is
+** returned for the first service record found on the
+** server that matches the service UUID. The callback
+** function will be executed when service discovery is
+** complete. There can only be one outstanding call to
+** DUN_FindService() at a time; the application must wait
+** for the callback before it makes another call to
+** the function.
+**
+** Returns DUN_SUCCESS if function execution succeeded,
+** DUN_FAIL if function execution failed.
+**
+******************************************************************************/
+DUN_API extern UINT8 DUN_FindService(UINT16 service_uuid, BD_ADDR bd_addr,
+ tSDP_DISCOVERY_DB *p_db, UINT32 db_len,
+ tDUN_FIND_CBACK *p_cback);
+
+/******************************************************************************
+**
+** Function DUN_SetTraceLevel
+**
+** Description Sets the trace level for DUN. If 0xff is passed, the
+** current trace level is returned.
+**
+** Input Parameters:
+** new_level: The level to set the DUN tracing to:
+** 0xff-returns the current setting.
+** 0-turns off tracing.
+** >= 1-Errors.
+** >= 2-Warnings.
+** >= 3-APIs.
+** >= 4-Events.
+** >= 5-Debug.
+**
+** Returns The new trace level or current trace level if
+** the input parameter is 0xff.
+**
+******************************************************************************/
+DUN_API extern UINT8 DUN_SetTraceLevel (UINT8 new_level);
+
+/*******************************************************************************
+**
+** Function DUN_Init
+**
+** Description This function is called before accessing the DUN APIs in order
+** to initialize the control block.
+**
+** Returns void
+**
+*******************************************************************************/
+DUN_API extern void DUN_Init(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* DUN_API_H */
+