[Adapt: OAL] Add Socket auth event handling 40/87740/1
authorAtul Rai <a.rai@samsung.com>
Wed, 31 Aug 2016 07:27:11 +0000 (12:57 +0530)
committerAtul Rai <a.rai@samsung.com>
Thu, 1 Sep 2016 05:12:26 +0000 (10:42 +0530)
This patch adds socket authorization event handling.

Change-Id: I461d03d8171538b6b99cc30c9e644daf45434429
Signed-off-by: Atul Rai <a.rai@samsung.com>
bt-oal/include/oal-device-mgr.h
bt-oal/include/oal-event.h
bt-oal/oal-adapter-mgr.c
bt-oal/oal-device-mgr.c

index a9d9dc8..009ae2f 100755 (executable)
@@ -243,9 +243,11 @@ oal_status_t device_reply_ssp_consent(bt_address_t * addr, int accept);
  * @return OAL_STATUS_SUCCESS on success, otherwise a non-zero error value.
  * @retval #OAL_STATUS_SUCCESS  Successful
  *
- * @pre OAL_EVENT_DEVICE_AUTHORIZE_REQUEST should have been recieved by application.
+ * @pre OAL_EVENT_DEVICE_AUTHORIZE_REQUEST or, OAL_EVENT_SOCKET_AUTHORIZE_REQUEST should have
+ * been recieved by application.
  *
- * @see  OAL_EVENT_DEVICE_AUTHORIZE_REQUEST
+ * @see OAL_EVENT_DEVICE_AUTHORIZE_REQUEST
+ * @see OAL_EVENT_SOCKET_AUTHORIZE_REQUEST
  */
 oal_status_t device_reply_auth_request(bt_address_t * addr, oal_service_t service_type, int accept, int always);
 
index 168f850..c6fa496 100755 (executable)
@@ -61,6 +61,7 @@ extern "C" {
        EVENT(OAL_EVENT_DEVICE_BONDING_REMOVED)                         /* bt_address_t */\
        EVENT(OAL_EVENT_DEVICE_BONDING_FAILED)                          /* event_dev_bond_failed_t */\
        EVENT(OAL_EVENT_DEVICE_AUTHORIZE_REQUEST)                       /* event_dev_authorize_req_t */\
+       EVENT(OAL_EVENT_SOCKET_AUTHORIZE_REQUEST)                       /* event_socket_authorize_req_t */\
        EVENT(OAL_EVENT_DEVICE_ACL_CONNECTED)                           /* bt_address_t */\
        EVENT(OAL_EVENT_DEVICE_ACL_DISCONNECTED)                        /* bt_address_t */\
        EVENT(OAL_EVENT_DEVICE_TRUSTED)                 /* Remote Device is Trusted */\
@@ -133,6 +134,13 @@ typedef struct {
        oal_service_t service_id;
 } event_dev_authorize_req_t;
 
+#ifdef TIZEN_BT_HAL
+typedef struct {
+       bt_address_t address;
+       oal_uuid_t uuid;
+} event_socket_authorize_req_t;
+#endif
+
 typedef struct {
        bt_address_t address;
        oal_status_t status;
index a23c53c..c446114 100755 (executable)
@@ -66,6 +66,9 @@ extern void cb_device_ssp_request(bt_bdaddr_t *bd_addr, bt_bdname_t *bdname, uin
                        bt_ssp_variant_t pairing_variant, uint32_t pass_key);
 extern void cb_device_authorize_request(bt_bdaddr_t *remote_bd_addr, bt_service_id_t service_d);
 extern void cb_device_trust_state_changed(bt_bdaddr_t *remote_bd_addr, bt_device_trust_state_t trusted);
+#ifdef TIZEN_BT_HAL
+extern void cb_socket_conn_authorize_request(bt_bdaddr_t *remote_bd_addr, bt_uuid_t *uuid);
+#endif
 
 static bt_callbacks_t callbacks = {
        sizeof(callbacks),
@@ -84,6 +87,9 @@ static bt_callbacks_t callbacks = {
        NULL, /* energy_info_callback */
        cb_device_authorize_request,
        cb_device_trust_state_changed,
+#ifdef TIZEN_BT_HAL
+       cb_socket_conn_authorize_request,
+#endif
 };
 
 oal_status_t adapter_mgr_init(const bt_interface_t * stack_if)
index 15b7d34..bffdf7e 100755 (executable)
@@ -662,3 +662,15 @@ void cb_device_trust_state_changed(bt_bdaddr_t *bd_addr, bt_device_trust_state_t
        trust_val->status = OAL_STATUS_SUCCESS;
        send_event_bda_trace(event, trust_val, sizeof(event_dev_trust_t), (bt_address_t*)bd_addr);
 }
+
+#ifdef TIZEN_BT_HAL
+void cb_socket_conn_authorize_request(bt_bdaddr_t *bd_addr, bt_uuid_t *uuid)
+{
+       event_socket_authorize_req_t *auth_req = g_new0(event_socket_authorize_req_t, 1);
+
+       memcpy(auth_req->address.addr, bd_addr->address, 6);
+       memcpy(auth_req->uuid.uuid, uuid->uu, 16);
+
+       send_event_bda_trace(OAL_EVENT_SOCKET_AUTHORIZE_REQUEST, auth_req, sizeof(event_socket_authorize_req_t), (bt_address_t*)bd_addr);
+}
+#endif