#include <dlog.h>
#include <companion.h>
+#include <companion_util.h>
+#include <companion_dbus.h>
#include <companion_debug.h>
#include <companion_gdbus.h>
-#include <companion_internal.h>
-#include <companion_dbus_internal.h>
+#include <companion_private.h>
/**
* Companion Manager CAPI
int ref_count = 0; /**< How many clients are alive */
bool __is_initialized = false; /**< Initialize or not */
-static companion_group_s *_create_group_handle(char *uri_path, char *device_id,
- char *group_name, char *host_addr, char *resource_type, companion_group_type_e type)
-{
- companion_group_s *group = calloc(1, sizeof(companion_group_s));
- if (NULL == group) {
- /* LCOV_EXCL_START */
- _ERR("Memory allocation failed");
- goto CREATE_GROUP_HANDLER_ERROR;
- /* LCOV_EXCL_STOP */
- }
-
- group->uri_path = g_strdup(uri_path);
- group->device_id = g_strdup(device_id);
- group->group_name = g_strdup(group_name);
- group->host_addr = g_strdup(host_addr);
- group->resource_type = g_strdup(resource_type);
- group->type = type;
-
- if (!group->uri_path || !group->device_id ||
- !group->host_addr || !group->resource_type) {
- /* LCOV_EXCL_START */
- _ERR("Memory allocation failed");
- goto CREATE_GROUP_HANDLER_ERROR;
- /* LCOV_EXCL_STOP */
- }
- return group;
-
-CREATE_GROUP_HANDLER_ERROR:
- /* LCOV_EXCL_START */
- if (group) {
- if (group->uri_path) {
- free(group->uri_path);
- group->uri_path = NULL;
- }
- if (group->device_id) {
- free(group->device_id);
- group->device_id = NULL;
- }
- if (group->group_name) {
- free(group->group_name);
- group->group_name = NULL;
- }
- if (group->host_addr) {
- free(group->host_addr);
- group->host_addr = NULL;
- }
- if (group->resource_type) {
- free(group->resource_type);
- group->resource_type = NULL;
- }
- free(group);
- group = NULL;
- }
- return NULL;
- /* LCOV_EXCL_STOP */
-}
-
-static companion_device_s *_create_device_handle(char *device_id, char *ip,
- char *device_type, int port)
-{
- companion_device_s *device = calloc(1, sizeof(companion_device_s));
- if (NULL == device) {
- /* LCOV_EXCL_START */
- _ERR("Memory allocation failed");
- goto CREATE_DEVICE_HANDLER_ERROR;
- /* LCOV_EXCL_STOP */
- }
-
- device->device_id = g_strdup(device_id);
- device->ip = g_strdup(ip);
- device->device_type = g_strdup(device_type);
- device->port = port;
-
- if (!device->device_id || !device->ip || !device->device_type) {
- /* LCOV_EXCL_START */
- _ERR("Memory allocation failed");
- goto CREATE_DEVICE_HANDLER_ERROR;
- /* LCOV_EXCL_STOP */
- }
-
- return device;
-
-CREATE_DEVICE_HANDLER_ERROR:
- /* LCOV_EXCL_START */
- if (device) {
- if (device->device_id) {
- free(device->device_id);
- device->device_id = NULL;
- }
- if (device->ip) {
- free(device->ip);
- device->ip = NULL;
- }
- if (device->device_type) {
- free(device->device_type);
- device->device_type = NULL;
- }
- free(device);
- device = NULL;
- }
- return NULL;
- /* LCOV_EXCL_STOP */
-}
-
-/* LCOV_EXCL_START */
-static void __group_found_cb(Group *object, GVariant *va, gpointer user_data)
-{
- GVariantIter *iter = NULL;
- const gchar *key;
- GVariant *key_value = NULL;
- companion_group_s *group = NULL;
- char *uri_path = NULL;
- char *device_id = NULL;
- char *group_name = NULL;
- char *host_addr = NULL;
- char *resource_type = NULL;
- companion_group_type_e type = COMPANION_GROUP_TYPE_ERROR;
-
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- g_variant_get(va, "a{sv}", &iter);
- while (g_variant_iter_loop(iter, "{sv}", &key, &key_value)) {
- if (g_strcmp0(key, "URI") == 0)
- uri_path = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "DeviceID") == 0)
- device_id = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "GroupName") == 0)
- group_name = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "HostAddress") == 0)
- host_addr = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "GroupDeviceType") == 0)
- resource_type = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "GroupType") == 0)
- type = g_variant_get_int32(key_value);
- }
-
- g_variant_iter_free(iter);
-
- group = _create_group_handle(uri_path, device_id, group_name, host_addr,
- resource_type, type);
- if (handle->group_found_cb.found_cb)
- handle->group_found_cb.found_cb(type, group, handle->group_found_cb.user_data);
-}
-
-static void _group_find_finish_cb(Group *object, gint ret, gpointer user_data)
-{
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- if (handle->group_find_finish_cb.finish_cb)
- handle->group_find_finish_cb.finish_cb(ret,
- handle->group_find_finish_cb.user_data);
-}
-
-static void __device_found_cb(Group *object, gint count, GVariant *va,
- gpointer user_data)
-{
- GVariantIter *iter = NULL;
- GVariantIter *iter_row = NULL;
- const gchar *key;
- GVariant *key_value;
- companion_device_s *device = NULL;
-
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- g_variant_get(va, "aa{sv}", &iter);
- while (g_variant_iter_next(iter, "a{sv}", &iter_row)) {
- char *device_id = NULL;
- char *ip = NULL;
- char *device_type = NULL;
- int port = -1;
-
- while (g_variant_iter_loop(iter_row, "{sv}", &key, &key_value)) {
- if (g_strcmp0(key, "DeviceID") == 0)
- device_id = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "Address") == 0)
- ip = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "SecVer") == 0)
- device_type = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "Port") == 0)
- port = g_variant_get_uint16(key_value);
- }
- g_variant_iter_free(iter_row);
-
- device = _create_device_handle(device_id, ip, device_type, port);
- if (handle->device_found_cb.found_cb)
- handle->device_found_cb.found_cb(device, handle->device_found_cb.user_data);
- }
- g_variant_iter_free(iter);
-}
-
-static void _device_find_finish_cb(Group *object, gint ret, gpointer user_data)
-{
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- if (handle->device_find_finish_cb.finish_cb)
- handle->device_find_finish_cb.finish_cb(ret,
- handle->device_find_finish_cb.user_data);
-}
-
-static void __mowned_device_found_cb(Group *object, gint count, GVariant *va,
- gpointer user_data)
-{
- GVariantIter *iter = NULL;
- GVariantIter *iter_row = NULL;
- const gchar *key;
- GVariant *key_value;
- companion_device_s *device = NULL;
-
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- g_variant_get(va, "aa{sv}", &iter);
- while (g_variant_iter_next(iter, "a{sv}", &iter_row)) {
- char *device_id = NULL;
- char *ip = NULL;
- char *device_type = NULL;
- int port = -1;
-
- while (g_variant_iter_loop(iter_row, "{sv}", &key, &key_value)) {
- if (g_strcmp0(key, "DeviceID") == 0)
- device_id = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "Address") == 0)
- ip = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "SecVer") == 0)
- device_type = (char *)g_variant_get_string(key_value, NULL);
- else if (g_strcmp0(key, "Port") == 0)
- port = g_variant_get_uint16(key_value);
-
- }
- g_variant_iter_free(iter_row);
-
- device = _create_device_handle(device_id, ip, device_type, port);
- if (handle->mowned_device_found_cb.found_cb)
- handle->mowned_device_found_cb.found_cb(device,
- handle->mowned_device_found_cb.user_data);
- }
- g_variant_iter_free(iter);
-}
-
-static void _mowned_device_find_finish_cb(Group *object, gint ret,
- gpointer user_data)
-{
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- if (handle->mowned_device_find_finish_cb.finish_cb)
- handle->mowned_device_find_finish_cb.finish_cb(ret,
- handle->mowned_device_find_finish_cb.user_data);
-}
-
-static void __device_invite_result_cb(Group *object, gint ret, gpointer user_data)
-{
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- if (handle->device_invite_result_cb.result_cb)
- handle->device_invite_result_cb.result_cb(ret,
- handle->device_invite_result_cb.user_data);
-}
-
-static void __device_eject_result_cb(Group *object, gint ret, gpointer user_data)
-{
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- if (handle->device_eject_result_cb.result_cb)
- handle->device_eject_result_cb.result_cb(ret,
- handle->device_eject_result_cb.user_data);
-}
-
-static void __send_data_finish_cb(Group *object, gchar *resp_data, gint ret,
- gpointer user_data)
-{
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- if (handle->send_data_finish_cb.finish_cb)
- handle->send_data_finish_cb.finish_cb(ret, resp_data,
- handle->send_data_finish_cb.user_data);
-}
-
-static void __request_result_cb(Group *object, gchar *cmd, gchar *arg, gint ret,
- gpointer user_data)
-{
- NOTUSED(object);
-
- comp_manager_s *handle = user_data;
- companion_check_null_ret("user_data", user_data);
-
- if (handle->request_result_cb.result_cb)
- handle->request_result_cb.result_cb(cmd, arg, ret,
- handle->request_result_cb.user_data);
-}
-/* LCOV_EXCL_STOP */
-
EXPORT_API int companion_initialize(companion_h *handle)
{
int ret = COMP_ERROR_NONE;
struct comp_manager_s *comp_manager = NULL;
- if (NULL == handle) {
- /* LCOV_EXCL_START */
- _ERR("Invalid parameter");
- return COMP_ERROR_INVALID_PARAMETER;
- /* LCOV_EXCL_STOP */
- }
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
+ companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
_BEGIN();
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
_BEGIN();
COMPANION_LOCK;
EXPORT_API int companion_group_create(companion_h handle, char *group_name)
{
int ret = COMP_ERROR_NONE;
-
GError *error = NULL;
+
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
EXPORT_API void companion_group_destroy(companion_group_s *group)
{
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
companion_check_null_ret("group", group);
if (group->uri_path) {
int ret = COMP_ERROR_NONE;
GError *error = NULL;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
GVariant *va = NULL;
GError *error = NULL;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
_INFO("DeviceID %s GroupName %s HostAddress %s GroupDeviceType %s",
device_id, group_name, host_addr, resource_type);
- group = _create_group_handle(uri_path,
+ group = create_group_handle(uri_path,
device_id, group_name, host_addr, resource_type, type);
(*groups)[i++] = (companion_group_h)group;
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
NOTUSED(handle);
NOTUSED(group);
NOTUSED(callback);
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
NOTUSED(handle);
NOTUSED(group);
NOTUSED(callback);
void *user_data)
{
int ret = COMP_ERROR_NONE;
-
GError *error = NULL;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
companion_device_find_finish_cb finish_cb, void *user_data)
{
int ret = COMP_ERROR_NONE;
-
GError *error = NULL;
+
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
+ companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
_handle->mowned_device_found_cb.found_cb = found_cb;
_handle->mowned_device_found_cb.user_data = user_data;
char *data, int len, companion_send_data_finish_cb finish_cb, void *user_data)
{
int ret = COMP_ERROR_NONE;
-
char *buf = NULL;
GError *error = NULL;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
companion_device_h **devices, int *count)
{
int ret = COMP_ERROR_NONE;
-
int num = 0;
GVariant *va = NULL;
GError *error = NULL;
+
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
}
g_variant_iter_free(iter_row);
- device = _create_device_handle(deviceid, addr, ver, port);
+ device = create_device_handle(deviceid, addr, ver, port);
(*devices)[i++] = (companion_device_h)device;
}
companion_h handle, companion_device_h **devices, int *count)
{
int ret = COMP_ERROR_NONE;
-
int num = 0;
GVariant *va = NULL;
GError *error = NULL;
+
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
}
g_variant_iter_free(iter_row);
- device = _create_device_handle(deviceid, addr, ver, port);
+ device = create_device_handle(deviceid, addr, ver, port);
(*devices)[i++] = (companion_device_h)device;
}
companion_device_h *device)
{
int ret = COMP_ERROR_NONE;
-
GError *error = NULL;
GVariant *va = NULL;
GVariantIter *iter = NULL;
char *ver = NULL;
int port = -1;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
if (deviceid == NULL || addr == NULL || ver == NULL)
return -1;
- *device = (companion_device_h)_create_device_handle(deviceid, addr, ver, port);
+ *device = (companion_device_h)create_device_handle(deviceid, addr, ver, port);
g_variant_iter_free(iter);
EXPORT_API void companion_device_destroy(companion_device_h device)
{
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
companion_device_s *_device = device;
companion_check_null_ret("device", device);
int ret = 0;
GError *error = NULL;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
NOTUSED(dest_group);
NOTUSED(src_group);
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
NOTUSED(handle);
NOTUSED(group);
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
NOTUSED(handle);
NOTUSED(group);
NOTUSED(devices);
int ret = COMP_ERROR_NONE;
GError *error = NULL;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
int ret = COMP_ERROR_NONE;
GError *error = NULL;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
companion_group_h _group = g_malloc0(sizeof(companion_group_s));
if (NULL == _group) {
_ERR("Memory allocation Failed(%d)", errno);
{
int ret = COMP_ERROR_NONE;
- companion_group_s * dst = (companion_group_s *)target;
- companion_group_s * src = (companion_group_s *)source;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+ companion_group_s * dst = (companion_group_s *)target;
companion_check_null_ret_error("target", target, COMP_ERROR_INVALID_PARAMETER);
+
+ companion_group_s * src = (companion_group_s *)source;
companion_check_null_ret_error("source", source, COMP_ERROR_INVALID_PARAMETER);
if (src->uri_path)
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
companion_group_s * group = (companion_group_s *)data;
companion_check_null_ret_error("group", group, COMP_ERROR_INVALID_PARAMETER);
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
*type = ((companion_group_s *)group)->type;
return ret;
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
*resource_type = g_strdup(((companion_group_s *)group)->resource_type);
return ret;
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
*uri_path = g_strdup(((companion_group_s *)group)->uri_path);
return ret;
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
*name = g_strdup(((companion_group_s *)group)->group_name);
return ret;
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
*host_addr = g_strdup(((companion_group_s *)group)->host_addr);
return ret;
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
companion_device_h _device = g_malloc0(sizeof(companion_device_s));
if (NULL == device) {
_ERR("Memory allocation Failed(%d)", errno);
{
int ret = COMP_ERROR_NONE;
- companion_device_s * dst = (companion_device_s *)target;
- companion_device_s * src = (companion_device_s *)source;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+ companion_device_s * dst = (companion_device_s *)target;
companion_check_null_ret_error("target", target, COMP_ERROR_INVALID_PARAMETER);
+
+ companion_device_s * src = (companion_device_s *)source;
companion_check_null_ret_error("source", source, COMP_ERROR_INVALID_PARAMETER);
if (src->device_id)
EXPORT_API int companion_device_information_destroy(companion_device_h data)
{
int ret = COMP_ERROR_NONE;
+
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
companion_device_s * device = (companion_device_s *)data;
companion_check_null_ret_error("data", data, COMP_ERROR_INVALID_PARAMETER);
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
*device_id = g_strdup(((companion_device_s *)device)->device_id);
return ret;
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
*ip = g_strdup(((companion_device_s *)device)->ip);
return ret;
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
*device_type = g_strdup(((companion_device_s *)device)->device_type);
return ret;
{
int ret = COMP_ERROR_NONE;
GError *error = NULL;
+
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
+ companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
+
companion_device_s *dev = (companion_device_s *)device;
+ companion_check_null_ret_error("device", device, COMP_ERROR_INVALID_PARAMETER);
+ companion_check_null_ret_error("group_name", group_name, COMP_ERROR_INVALID_PARAMETER);
_DBG("Device id : %s", dev->device_id);
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
companion_group_s *grp = (companion_group_s *)group;
- if (!grp) {
- _ERR("grp is null");
- return COMP_ERROR_INVALID_PARAMETER;
- }
+ companion_check_null_ret_error("group", group, COMP_ERROR_INVALID_PARAMETER);
companion_device_s *dev = (companion_device_s *)device;
- if (!dev) {
- _ERR("dev is null");
- return COMP_ERROR_INVALID_PARAMETER;
- }
+ companion_check_null_ret_error("device", device, COMP_ERROR_INVALID_PARAMETER);
_DBG("%s", grp->device_id);
_DBG("%s", grp->group_name);
_DBG("%s", dev->device_id);
group_call_request_invite(_handle->group_proxy, grp->device_id, grp->group_name,
- dev->device_id, PIN,
- NULL, NULL, NULL);
+ dev->device_id, PIN, NULL, NULL, NULL);
return ret;
}
{
int ret = COMP_ERROR_NONE;
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);
companion_group_h group)
{
int ret = COMP_ERROR_NONE;
+
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
NOTUSED(handle);
NOTUSED(group);
return ret;
companion_request_result_cb result_cb, void *user_data)
{
int ret = COMP_ERROR_NONE;
+
+ CHECK_FEATURE_SUPPORTED(COMPANION_FEATURE);
+
comp_manager_s *_handle = handle;
companion_check_null_ret_error("handle", handle, COMP_ERROR_INVALID_PARAMETER);