Add new APIs for L2CAP LE CoC functionality 12/299412/1
authorWootak Jung <wootak.jung@samsung.com>
Sun, 10 Apr 2022 23:47:16 +0000 (08:47 +0900)
committerAnuj Jain <anuj01.jain@samsung.com>
Wed, 27 Sep 2023 09:22:01 +0000 (14:52 +0530)
- add new feature:
tizen.org/feature/network.bluetooth.le.coc

To avoid build conflict please merge this patch after merging framework
patch: (Change-Id: Icf4d8a51acc444765a9b61224a3a5d3fd26bfa65)

Change-Id: I193513b0524daeac8e8c538f8226285ccc07a895
Signed-off-by: Anuj Jain <anuj01.jain@samsung.com>
include/bluetooth_private.h
src/bluetooth-common.c
src/bluetooth-socket.c

index 8af0bdd42f6a42c22d5970a7617cde0451172513..29fb7ab2b46d85f30d8865204231d9db42abc379 100644 (file)
@@ -616,6 +616,7 @@ typedef enum {
        BT_FEATURE_COMMON = BT_FEATURE_BASE,
        BT_FEATURE_LE,
        BT_FEATURE_LE_5_0,
+       BT_FEATURE_LE_COC,
        BT_FEATURE_IPSP,
        BT_FEATURE_MESH,
        BT_FEATURE_AUDIO_CALL,
index b58ba8bdd4d68d7725c9d287c90044b04ca3b08d..3eb59949fa5b8e83404768d068db5cf88ddcb4e7 100644 (file)
@@ -312,6 +312,7 @@ static bt_feature_table_t feature_table[] = {
        {"tizen.org/feature/network.bluetooth", FALSE, FALSE},                  /* BT_FEATURE_COMMON */
        {"tizen.org/feature/network.bluetooth.le", FALSE, FALSE},               /* BT_FEATURE_LE */
        {"tizen.org/feature/network.bluetooth.le.5_0", FALSE, FALSE},           /* BT_FEATURE_LE_5_0 */
+       {"tizen.org/feature/network.bluetooth.le.coc", FALSE, FALSE},           /* BT_FEATURE_LE_COC */
        {"tizen.org/feature/network.bluetooth.le.ipsp", FALSE, FALSE},          /* BT_FEATURE_IPSP */
        {"tizen.org/feature/network.bluetooth.le.mesh", TRUE, TRUE},            /* BT_FEATURE_MESH */
        {"tizen.org/feature/network.bluetooth.audio.call", FALSE, FALSE},       /* BT_FEATURE_AUDIO_CALL */
index 6e17538c6a3dda129bcb0c22ea654bc9eb992d78..5a93d90686432a2c8aade70652f1244b8ac6e9b6 100644 (file)
@@ -316,7 +316,7 @@ int bt_socket_create_l2cap_channel(int psm, int *socket_fd)
 {
        int ret = 0;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
        BT_CHECK_INPUT_PARAMETER(socket_fd);
 
@@ -335,7 +335,7 @@ int bt_socket_destroy_l2cap_channel(int socket_fd)
 {
        int error_code = BT_ERROR_NONE;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
        error_code = _bt_get_error_code(bluetooth_l2cap_le_remove_socket(socket_fd));
        if (error_code != BT_ERROR_NONE) {
@@ -349,7 +349,7 @@ int bt_socket_destroy_l2cap_channel(int socket_fd)
 /* LCOV_EXCL_START */
 int bt_socket_is_psm_used(int psm, bool *used)
 {
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
        BT_CHECK_INPUT_PARAMETER(used);
 
@@ -363,7 +363,7 @@ int bt_socket_listen_and_accept_l2cap_channel(int socket_fd,
 {
        int error_code = BT_ERROR_NONE;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
        error_code = _bt_get_error_code(bluetooth_l2cap_le_listen_and_accept(socket_fd, max_pending_connections));
        if (error_code != BT_ERROR_NONE) {
@@ -379,7 +379,7 @@ int bt_socket_listen_l2cap_channel(int socket_fd, int max_pending_connections)
 {
        int error_code = BT_ERROR_NONE;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
 
        error_code = _bt_get_error_code(bluetooth_l2cap_le_listen(socket_fd, max_pending_connections));
@@ -395,7 +395,7 @@ int bt_socket_accept_l2cap_channel(int socket_fd)
 {
        int error_code = BT_ERROR_NONE;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
 
        error_code = _bt_get_error_code(bluetooth_l2cap_le_accept_connection(socket_fd));
@@ -411,7 +411,7 @@ int bt_socket_reject_l2cap_channel(int socket_fd)
 {
        int error_code = BT_ERROR_NONE;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
 
        error_code = _bt_get_error_code(bluetooth_l2cap_le_reject_connection(socket_fd));
@@ -429,7 +429,7 @@ int bt_socket_connect_l2cap_channel(const char *remote_address, int psm)
        bluetooth_device_address_t addr_hex = { {0,} };
        int error_code = BT_ERROR_NONE;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS(); /* LCOV_EXCL_START */
        BT_CHECK_INPUT_PARAMETER(remote_address);
 
@@ -448,7 +448,7 @@ int bt_socket_disconnect_l2cap_channel(int socket_fd)
 {
        int error_code = BT_ERROR_NONE;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS(); /* LCOV_EXCL_START */
 
        error_code = _bt_get_error_code(bluetooth_l2cap_le_disconnect(socket_fd));
@@ -465,7 +465,7 @@ int bt_socket_send_data_l2cap_channel(int socket_fd, const char *data,
 {
        int ret = 0;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS(); /* LCOV_EXCL_START */
        BT_CHECK_INPUT_PARAMETER(data);
 
@@ -497,7 +497,7 @@ int bt_socket_get_l2cap_psm(int socket_fd, int *psm)
 {
        int ret = 0;
 
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS(); /* LCOV_EXCL_START */
 
        ret = bluetooth_l2cap_le_get_psm(socket_fd, psm);
@@ -512,7 +512,7 @@ int bt_socket_get_l2cap_psm(int socket_fd, int *psm)
 int bt_socket_set_l2cap_channel_connection_state_changed_cb(
                                                bt_socket_l2cap_channel_connection_state_changed_cb callback, void *user_data)
 {
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
        BT_CHECK_INPUT_PARAMETER(callback);
        _bt_set_cb(BT_EVENT_L2CAP_CHANNEL_CONNECTION_STATE_CHANGED, callback, user_data);
@@ -521,7 +521,7 @@ int bt_socket_set_l2cap_channel_connection_state_changed_cb(
 
 int bt_socket_unset_l2cap_channel_connection_state_changed_cb(void)
 {
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
        _bt_unset_cb(BT_EVENT_L2CAP_CHANNEL_CONNECTION_STATE_CHANGED);
        return BT_ERROR_NONE;
@@ -530,7 +530,7 @@ int bt_socket_unset_l2cap_channel_connection_state_changed_cb(void)
 int bt_socket_set_l2cap_channel_connection_requested_cb(
                                        bt_socket_connection_requested_cb callback, void *user_data)
 {
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
        BT_CHECK_INPUT_PARAMETER(callback);
        _bt_set_cb(BT_EVENT_L2CAP_CHANNEL_CONNECTION_REQUESTED, callback, user_data);
@@ -539,7 +539,7 @@ int bt_socket_set_l2cap_channel_connection_requested_cb(
 
 int bt_socket_unset_l2cap_channel_connection_requested_cb(void)
 {
-       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_COMMON);
+       BT_CHECK_SUPPORTED_FEATURE(BT_FEATURE_LE_COC);
        BT_CHECK_INIT_STATUS();
        _bt_unset_cb(BT_EVENT_L2CAP_CHANNEL_CONNECTION_REQUESTED);
        return BT_ERROR_NONE;