Replace codes to check feature and privilege 77/278977/1
authorsooyeon <sooyeon.kim@samsung.com>
Wed, 6 Jul 2022 07:11:34 +0000 (16:11 +0900)
committersooyeon <sooyeon.kim@samsung.com>
Fri, 29 Jul 2022 01:25:59 +0000 (10:25 +0900)
Change-Id: I2691dbf7a1c3f4a5bcdb8e9eebb29b28cad050ce
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
client/vc.c
client/vc_mgr.c
server/vce.c

index 07234ba82c6d07b4fbe9e1082ea1ecb90d1c35b5..c61a3f073fe37b4e65767ff410d25e238d5cb3ed 100644 (file)
@@ -208,6 +208,18 @@ static int __vc_check_privilege()
        return VC_ERROR_NONE;
 }
 
+int __check_feature_privilege()
+{
+       if (0 != __vc_get_feature_enabled()) {
+               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
+       }
+       if (0 != __vc_check_privilege()) {
+               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
+       }
+
+       return VC_ERROR_NONE;
+}
+
 //LCOV_EXCL_START
 static const char* __vc_get_error_code(vc_error_e err)
 {
@@ -349,12 +361,10 @@ static Eina_Bool __focus_changed_cb(void *data, int type, void *event)
 
 int vc_initialize(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        SLOG(LOG_INFO, TAG_VCC, "@@@ [Client] Initialize");
 
@@ -379,7 +389,7 @@ int vc_initialize(void)
                return VC_ERROR_OUT_OF_MEMORY; //LCOV_EXCL_LINE
        }
 
-       int ret = vc_config_mgr_initialize(g_vc->handle);
+       ret = vc_config_mgr_initialize(g_vc->handle);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to init config manager : %s",
                         __vc_get_error_code(__vc_convert_config_error_code(ret))); //LCOV_EXCL_LINE
@@ -439,13 +449,9 @@ static void __vc_internal_unprepare(void)
 int vc_deinitialize(void)
 {
        int ret = VC_ERROR_NONE;
-
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        SLOG(LOG_INFO, TAG_VCC, "@@@ [Client] Deinitialize");
 
@@ -671,12 +677,10 @@ static void __end_prepare_thread(void *data, Ecore_Thread *thread)
 
 int vc_prepare(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ [Client] Prepare");
 
@@ -698,12 +702,10 @@ int vc_prepare(void)
 //LCOV_EXCL_START
 int vc_prepare_sync(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ [Client] Prepare");
 
@@ -729,12 +731,10 @@ int vc_prepare_sync(void)
 
 int vc_unprepare(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ [Client] Unprepare");
 
@@ -759,12 +759,10 @@ int vc_unprepare(void)
 
 int vc_foreach_supported_languages(vc_supported_language_cb callback, void* user_data)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Input parameter is NULL");
 
@@ -776,8 +774,6 @@ int vc_foreach_supported_languages(vc_supported_language_cb callback, void* user
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ [Client] Foreach Supported Language");
 
-
-       int ret = -1;
        ret = vc_config_mgr_get_language_list(callback, user_data);
        if (0 != ret) {
                ret = vc_config_convert_error_code((vc_config_error_e)ret);
@@ -792,12 +788,10 @@ int vc_foreach_supported_languages(vc_supported_language_cb callback, void* user
 
 int vc_get_current_language(char** language)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == language, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Input parameter is NULL");
 
@@ -810,7 +804,6 @@ int vc_get_current_language(char** language)
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ [Client] Get Current Language");
 
-       int ret = -1;
        ret = vc_config_mgr_get_default_language(language);
        if (0 != ret) {
                ret = vc_config_convert_error_code((vc_config_error_e)ret);
@@ -824,12 +817,10 @@ int vc_get_current_language(char** language)
 
 int vc_get_state(vc_state_e* state)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == state, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Input parameter is NULL");
 
@@ -860,12 +851,10 @@ int vc_get_state(vc_state_e* state)
 
 int vc_get_service_state(vc_service_state_e* state)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == state, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Input parameter is NULL");
 
@@ -906,12 +895,10 @@ int vc_get_service_state(vc_service_state_e* state)
 
 int vc_get_system_command_list(vc_cmd_list_h* vc_sys_cmd_list)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == vc_sys_cmd_list, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Input parameter is NULL");
        *vc_sys_cmd_list = NULL;
@@ -935,7 +922,7 @@ int vc_get_system_command_list(vc_cmd_list_h* vc_sys_cmd_list)
 
        bool is_sys_cmd_valid = false;
        int count = 0;
-       int ret = -1;
+       ret = -1;
        bool is_prepared = false;
        do {
                ret = vc_tidl_request_is_system_command_valid(g_vc->handle, &is_sys_cmd_valid);
@@ -1021,12 +1008,10 @@ int vc_get_system_command_list(vc_cmd_list_h* vc_sys_cmd_list)
 */
 int vc_is_command_format_supported(vc_cmd_format_e format, bool* support)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ [Client] Is command format supported");
 
@@ -1154,12 +1139,10 @@ void __set_command(vc_h vc, vc_cmd_type_e type)
 
 int vc_set_command_list(vc_cmd_list_h vc_cmd_list, int type)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == vc_cmd_list, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Input parameter is NULL");
 
@@ -1185,7 +1168,7 @@ int vc_set_command_list(vc_cmd_list_h vc_cmd_list, int type)
        list = (vc_cmd_list_s*)vc_cmd_list;
        RETVM_IF(NULL == list->list, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Invalid command list");
 
-       int ret = 0;
+       ret = 0;
        char* invocation_name = NULL;
        if (VC_COMMAND_TYPE_BACKGROUND == type) {
                ret = __vc_get_invocation_name(&invocation_name);
@@ -1218,12 +1201,10 @@ int vc_set_command_list(vc_cmd_list_h vc_cmd_list, int type)
 
 int vc_unset_command_list(int type)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
@@ -1238,7 +1219,7 @@ int vc_unset_command_list(int type)
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ [Client] Unset Command list");
 
        int count = 0;
-       int ret = -1;
+       ret = -1;
        bool is_prepared = false;
        while (0 != ret) {
                ret = vc_tidl_request_unset_command(g_vc->handle, (vc_cmd_type_e)type);
@@ -1280,12 +1261,10 @@ int vc_unset_command_list(int type)
 //LCOV_EXCL_START
 int vc_set_command_list_from_file(const char* file_path, int type)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
@@ -1305,7 +1284,7 @@ int vc_set_command_list_from_file(const char* file_path, int type)
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ [Client] Set Command list from file");
 
-       int ret = 0;
+       ret = 0;
        char* invocation_name = NULL;
        if (VC_COMMAND_TYPE_BACKGROUND == type) {
                ret = __vc_get_invocation_name(&invocation_name);
@@ -1740,12 +1719,10 @@ void __vc_cb_result(void)
 
 int vc_get_result(vc_result_cb callback, void* user_data)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
@@ -1770,7 +1747,7 @@ int vc_get_result(vc_result_cb callback, void* user_data)
                return VC_ERROR_INVALID_PARAMETER;
        }
 
-       int ret = vc_info_parser_get_result(&temp_text, &event, NULL, getpid(), vc_cmd_list, false);
+       ret = vc_info_parser_get_result(&temp_text, &event, NULL, getpid(), vc_cmd_list, false);
        if (0 != ret || NULL == temp_text) {
                SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to get result, ret(%d) temp_text(%s)", ret, temp_text); //LCOV_EXCL_LINE
                return ret;
@@ -1797,12 +1774,10 @@ int vc_get_result(vc_result_cb callback, void* user_data)
 
 int vc_set_result_cb(vc_result_cb callback, void* user_data)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Client result callback is NULL");
 
@@ -1822,12 +1797,10 @@ int vc_set_result_cb(vc_result_cb callback, void* user_data)
 
 int vc_unset_result_cb(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
@@ -1889,12 +1862,10 @@ int __vc_cb_manager_pid(int manager_pid)
 
 int vc_set_service_state_changed_cb(vc_service_state_changed_cb callback, void* user_data)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Client service state changed callback is NULL");
 
@@ -1914,12 +1885,10 @@ int vc_set_service_state_changed_cb(vc_service_state_changed_cb callback, void*
 
 int vc_unset_service_state_changed_cb(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
@@ -1937,12 +1906,10 @@ int vc_unset_service_state_changed_cb(void)
 
 int vc_set_state_changed_cb(vc_state_changed_cb callback, void* user_data)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Client state changed callback is NULL");
 
@@ -1962,12 +1929,10 @@ int vc_set_state_changed_cb(vc_state_changed_cb callback, void* user_data)
 
 int vc_unset_state_changed_cb(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
@@ -1985,12 +1950,10 @@ int vc_unset_state_changed_cb(void)
 
 int vc_set_current_language_changed_cb(vc_current_language_changed_cb callback, void* user_data)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Client current language changed callback is NULL");
 
@@ -2010,12 +1973,10 @@ int vc_set_current_language_changed_cb(vc_current_language_changed_cb callback,
 
 int vc_unset_current_language_changed_cb(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
@@ -2033,12 +1994,10 @@ int vc_unset_current_language_changed_cb(void)
 
 int vc_set_error_cb(vc_error_cb callback, void* user_data)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Client error callback is NULL");
 
@@ -2058,12 +2017,10 @@ int vc_set_error_cb(vc_error_cb callback, void* user_data)
 
 int vc_unset_error_cb(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
@@ -2081,17 +2038,15 @@ int vc_unset_error_cb(void)
 
 int vc_set_invocation_name(const char* name)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ Set invocation name");
 
-       int ret = vc_client_get_client_state(g_vc, &state);
+       ret = vc_client_get_client_state(g_vc, &state);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCC, "[ERROR] A handle is not valid");
                return ret;
@@ -2112,13 +2067,9 @@ int vc_set_server_dialog(const char* app_id, const char* credential)
 {
        vc_state_e state;
        int ret = -1;
-
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == credential, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Credential is NULL");
 
@@ -2192,12 +2143,9 @@ int vc_unset_server_dialog(const char* app_id)
        int ret = -1;
        char* tmp_appid = NULL;
 
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (0 != vc_client_get_client_state(g_vc, &state)) {
                SLOG(LOG_ERROR, TAG_VCC, "[ERROR] A handle is not valid");
@@ -2266,13 +2214,10 @@ int vc_unset_server_dialog(const char* app_id)
 int vc_request_dialog(const char* disp_text, const char* utt_text, bool auto_start)
 {
        vc_state_e state;
-
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (0 != vc_client_get_client_state(g_vc, &state)) {
                SLOG(LOG_ERROR, TAG_VCC, "[ERROR] A handle is not valid");
@@ -2288,7 +2233,7 @@ int vc_request_dialog(const char* disp_text, const char* utt_text, bool auto_sta
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCC, "[ERROR] Invalid State: service state(%d) is not 'READY'", service_state);
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ Request dialog : pid(%d) disp_text(%s), utt_text(%s), auto_start(%d)", getpid(), disp_text, utt_text, auto_start);
-       int ret = vc_tidl_request_request_dialog(getpid(), disp_text, utt_text, auto_start);
+       ret = vc_tidl_request_request_dialog(getpid(), disp_text, utt_text, auto_start);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to request dialog, ret(%d)", ret);
                return VC_ERROR_OPERATION_FAILED;
@@ -2797,12 +2742,9 @@ int vc_tts_request(const char* text, const char* language, bool to_vc_manager, i
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ Request tts");
 
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (0 != vc_client_get_client_state(g_vc, &state)) {
                SLOG(LOG_ERROR, TAG_VCC, "[ERROR] A handle is not valid");
@@ -2858,12 +2800,9 @@ int vc_tts_cancel(int utt_id)
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ Cancel tts");
 
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (0 != vc_client_get_client_state(g_vc, &state)) {
                SLOG(LOG_ERROR, TAG_VCC, "[ERROR] A handle is not valid");
@@ -2924,12 +2863,9 @@ int vc_tts_get_synthesized_audio_details(int* rate, vc_audio_channel_e* channel,
 
        SLOG(LOG_DEBUG, TAG_VCC, "@@@ Get tts audio format");
 
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (0 != vc_client_get_client_state(g_vc, &state)) {
                SLOG(LOG_ERROR, TAG_VCC, "[ERROR] A handle is not valid");
@@ -2979,12 +2915,10 @@ int vc_tts_get_synthesized_audio_details(int* rate, vc_audio_channel_e* channel,
 
 int vc_tts_set_streaming_cb(vc_tts_streaming_cb callback, void* user_data)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (NULL == callback)
                return VC_ERROR_INVALID_PARAMETER;
@@ -3005,12 +2939,10 @@ int vc_tts_set_streaming_cb(vc_tts_streaming_cb callback, void* user_data)
 
 int vc_tts_unset_streaming_cb(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
@@ -3044,12 +2976,10 @@ int __vc_cb_utterance_status(int utt_id, int utt_status)
 
 int vc_tts_set_utterance_status_cb(vc_tts_utterance_status_cb callback, void* user_data)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCC, "[ERROR] Utterance status callback is null");
 
@@ -3069,12 +2999,10 @@ int vc_tts_set_utterance_status_cb(vc_tts_utterance_status_cb callback, void* us
 
 int vc_tts_unset_utterance_status_cb(void)
 {
-       if (0 != __vc_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;  //LCOV_EXCL_LINE
-       }
-       if (0 != __vc_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;      //LCOV_EXCL_LINE
-       }
+       int ret;
+       ret = __check_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_client_get_client_state(g_vc, &state)) {
index 813ee448a271af93a125dce3bf840b689897fece..e07325f4ae135290e6dab0a4413803ee142a2116 100644 (file)
@@ -273,11 +273,8 @@ static int __vc_mgr_check_privilege()
        return VC_ERROR_NONE;
 }
 
-int vc_mgr_initialize(void)
+int __check_mgr_feature_privilege()
 {
-       SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Initialize");
-
-
        if (0 != __vc_mgr_get_feature_enabled()) {
                SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
                return VC_ERROR_NOT_SUPPORTED;
@@ -287,6 +284,18 @@ int vc_mgr_initialize(void)
                return VC_ERROR_PERMISSION_DENIED;
        }
 
+       return VC_ERROR_NONE;
+}
+
+int vc_mgr_initialize(void)
+{
+       SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Initialize");
+
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
+
        /* check handle */
        if (true == vc_mgr_client_is_valid(g_vc_m)) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Already initialized");
@@ -303,7 +312,7 @@ int vc_mgr_initialize(void)
                return VC_ERROR_OUT_OF_MEMORY;
        }
 
-       int ret = vc_config_mgr_initialize(g_vc_m->handle + VC_MANAGER_CONFIG_HANDLE);
+       ret = vc_config_mgr_initialize(g_vc_m->handle + VC_MANAGER_CONFIG_HANDLE);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to init config manager : %d", ret);
                vc_mgr_client_destroy(g_vc_m);
@@ -354,14 +363,10 @@ int vc_mgr_deinitialize(void)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Deinitialize");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (false == vc_mgr_client_is_valid(g_vc_m)) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] NOT initialized");
@@ -403,12 +408,12 @@ int vc_mgr_deinitialize(void)
 
        int cnt = VC_COMMAND_TYPE_FOREGROUND;
        do {
-               int ret = vc_cmd_parser_delete_file(getpid(), cnt);
+               ret = vc_cmd_parser_delete_file(getpid(), cnt);
                if (0 != ret)
                        SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to delete file, type(%d), ret(%d)", cnt, ret);
        } while (VC_COMMAND_TYPE_EXCLUSIVE >= ++cnt);
 
-       int ret = vc_db_finalize();
+       ret = vc_db_finalize();
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to finalize DB, ret(%d)", ret);
        }
@@ -565,14 +570,10 @@ int vc_mgr_prepare(void)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Prepare");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -602,14 +603,10 @@ int vc_mgr_unprepare(void)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Unprepare");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -634,14 +631,10 @@ int vc_mgr_foreach_supported_languages(vc_supported_language_cb callback, void*
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] Foreach Supported Language");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Input parameter is NULL");
 
@@ -651,7 +644,6 @@ int vc_mgr_foreach_supported_languages(vc_supported_language_cb callback, void*
                return VC_ERROR_INVALID_STATE;
        }
 
-       int ret = -1;
        ret = vc_config_mgr_get_language_list(callback, user_data);
        if (0 != ret) {
                ret = vc_config_convert_error_code((vc_config_error_e)ret);
@@ -665,14 +657,10 @@ int vc_mgr_foreach_supported_languages(vc_supported_language_cb callback, void*
 
 int vc_mgr_get_current_language(char** language)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == language, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Input parameter is NULL");
 
@@ -682,7 +670,6 @@ int vc_mgr_get_current_language(char** language)
                return VC_ERROR_INVALID_STATE;
        }
 
-       int ret = -1;
        ret = vc_config_mgr_get_default_language(language);
        if (0 != ret) {
                ret = vc_config_convert_error_code((vc_config_error_e)ret);
@@ -698,14 +685,10 @@ int vc_mgr_get_state(vc_state_e* state)
 {
        SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] Get State");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == state, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Input parameter is NULL");
 
@@ -735,14 +718,10 @@ int vc_mgr_get_service_state(vc_service_state_e* state)
 {
        SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] Get Service State");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == state, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Input parameter is NULL");
 
@@ -781,14 +760,10 @@ int vc_mgr_set_demandable_client_rule(const char* rule)
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] Set Demandable client rule(%s)", rule);
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -799,7 +774,6 @@ int vc_mgr_set_demandable_client_rule(const char* rule)
        /* check state */
        RETVM_IF(state != VC_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current state(%d) is not 'Ready'", state);
 
-       int ret = -1;
        ret = vc_info_parser_set_demandable_client(rule);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] rule is NOT valid");
@@ -821,18 +795,14 @@ int vc_mgr_unset_demandable_client_rule(void)
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] Unset Demandable client");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_info_parser_set_demandable_client(NULL);
 
-       int ret = vc_mgr_tidl_request_demandable_client(g_vc_m->handle);
+       ret = vc_mgr_tidl_request_demandable_client(g_vc_m->handle);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to request unset client rule to daemon : %s", __vc_mgr_get_error_code(ret));
        }
@@ -845,14 +815,10 @@ int vc_mgr_is_command_format_supported(int format, bool* support)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Is command type supported");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == support, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Input parameter is NULL");
 
@@ -888,14 +854,10 @@ int vc_mgr_enable_command_type(int cmd_type)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Enable Command Type, cmd_type(%d)", cmd_type);
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (VC_COMMAND_TYPE_FOREGROUND > cmd_type || VC_COMMAND_TYPE_EXCLUSIVE < cmd_type) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] cmd_type is not valid. (%d)", cmd_type);
@@ -916,8 +878,6 @@ int vc_mgr_enable_command_type(int cmd_type)
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret;
-
        ret = vc_mgr_client_enable_command_type(g_vc_m, (vc_cmd_type_e)cmd_type);               // enable the cmd type
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to enable the command type(%d). ret(%d)", cmd_type, ret);
@@ -934,14 +894,10 @@ int vc_mgr_disable_command_type(int cmd_type)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Disable Command Type, cmd_type(%d)", cmd_type);
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (VC_COMMAND_TYPE_FOREGROUND > cmd_type || VC_COMMAND_TYPE_EXCLUSIVE < cmd_type) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] cmd type is not valid, (%d)", cmd_type);
@@ -962,8 +918,6 @@ int vc_mgr_disable_command_type(int cmd_type)
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret;
-
        ret = vc_mgr_client_disable_command_type(g_vc_m, (vc_cmd_type_e)cmd_type);              // enable the cmd type
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to disable the command type(%d). ret(%d)", cmd_type, ret);
@@ -980,14 +934,10 @@ int vc_mgr_set_command_list(vc_cmd_list_h vc_cmd_list)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Set Command list");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -1012,7 +962,6 @@ int vc_mgr_set_command_list(vc_cmd_list_h vc_cmd_list)
        RETVM_IF(NULL == list->list, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Input command list");
 
        int i;
-       int ret;
        bool success_save = false;
        for (i = VC_COMMAND_TYPE_FOREGROUND; i <= VC_COMMAND_TYPE_EXCLUSIVE; i++) {
                ret = vc_cmd_parser_delete_file(getpid(), i);
@@ -1047,14 +996,10 @@ int vc_mgr_unset_command_list(void)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Unset Command list");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -1065,8 +1010,6 @@ int vc_mgr_unset_command_list(void)
        /* check state */
        RETVM_IF(state != VC_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current state(%d) is not 'READY'", state);
 
-
-       int ret = -1;
        ret = vc_mgr_tidl_request_unset_command(g_vc_m->handle);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to request unset command to daemon : %s", __vc_mgr_get_error_code(ret));
@@ -1089,14 +1032,10 @@ int vc_mgr_set_command_list_from_file(const char* file_path, int type)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Set Command list from file, type(%d)", type);
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == file_path, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
        SLOG(LOG_INFO, TAG_VCM, "@@@ File path: %s", file_path);
@@ -1121,7 +1060,7 @@ int vc_mgr_set_command_list_from_file(const char* file_path, int type)
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret = vc_cmd_parser_delete_file(getpid(), type);
+       ret = vc_cmd_parser_delete_file(getpid(), type);
        if (0 != ret)
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to delete file, type(4), ret(%d)", ret);
 
@@ -1144,14 +1083,10 @@ int vc_mgr_set_preloaded_commands_from_file(const char* file_path)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Set preloaded command list");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == file_path, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
        SLOG(LOG_INFO, TAG_VCM, "@@@ File path: %s", file_path);
@@ -1171,7 +1106,7 @@ int vc_mgr_set_preloaded_commands_from_file(const char* file_path)
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
        /* Only support to set background commands for preloaded application */
-       int ret = vc_json_set_commands_from_file(file_path, VC_COMMAND_TYPE_BACKGROUND, NULL);
+       ret = vc_json_set_commands_from_file(file_path, VC_COMMAND_TYPE_BACKGROUND, NULL);
        if (0 != ret)
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to insert preloaded commands into db");
 
@@ -1183,14 +1118,10 @@ int vc_mgr_set_audio_type(const char* audio_id)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Set audio type, audio_id(%s)", audio_id);
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (NULL == audio_id || !strncmp(audio_id, "", strlen(audio_id))) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Input parameter is NULL");
@@ -1211,7 +1142,6 @@ int vc_mgr_set_audio_type(const char* audio_id)
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret = -1;
        /* Request */
        ret = vc_mgr_tidl_request_set_audio_type(g_vc_m->handle, audio_id);
        if (0 != ret) {
@@ -1231,14 +1161,10 @@ int vc_mgr_get_audio_type(char** audio_id)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Get audio type");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == audio_id, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -1262,7 +1188,7 @@ int vc_mgr_get_audio_type(char** audio_id)
 
        if (NULL == temp) {
                /* Not initiallized */
-               int ret = -1;
+               ret = -1;
                while (0 != ret) {
                        ret = vc_mgr_tidl_request_get_audio_type(g_vc_m->handle, &temp);
                        if (0 != ret) {
@@ -1289,14 +1215,10 @@ int vc_mgr_get_current_commands(vc_cmd_list_h* vc_cmd_list)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Foreach current commands");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -1324,7 +1246,6 @@ int vc_mgr_get_current_commands(vc_cmd_list_h* vc_cmd_list)
 
        int fg_pid = 0;
        int mgr_pid = 0;
-       int ret = -1;
 
        /* Get foreground pid */
        if (0 != vc_mgr_client_get_foreground(g_vc_m, &fg_pid)) {
@@ -1463,14 +1384,10 @@ int vc_mgr_set_recognition_mode(vc_recognition_mode_e mode)
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] Set recognition mode = %d", mode);
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        /* check vc recognition mode */
        if (mode < VC_RECOGNITION_MODE_STOP_BY_SILENCE || mode > VC_RECOGNITION_MODE_MANUAL) {
@@ -1498,16 +1415,10 @@ int vc_mgr_set_recognition_mode(vc_recognition_mode_e mode)
 
 int vc_mgr_get_recognition_mode(vc_recognition_mode_e* mode)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
-
-       int ret = -1;
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == mode, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter, mode is NULL ptr");
 
@@ -1531,14 +1442,10 @@ int vc_mgr_set_private_data(const char* key, const char* data)
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] Set private data");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == key, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -1556,7 +1463,6 @@ int vc_mgr_set_private_data(const char* key, const char* data)
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret = -1;
        ret = vc_mgr_tidl_request_set_private_data(g_vc_m->handle, key, data);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to set private data : %s", __vc_mgr_get_error_code(ret));
@@ -1574,14 +1480,10 @@ int vc_mgr_get_private_data(const char* key, char** data)
 {
        SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] Get private data");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (NULL == key || NULL == data) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Invalid parameter");
@@ -1602,10 +1504,7 @@ int vc_mgr_get_private_data(const char* key, char** data)
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret = -1;
        char* temp = NULL;
-
-
        ret = vc_mgr_tidl_request_get_private_data(g_vc_m->handle, key, &temp);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to get private data request : %s", __vc_mgr_get_error_code(ret));
@@ -1613,7 +1512,6 @@ int vc_mgr_get_private_data(const char* key, char** data)
                SLOG(LOG_INFO, TAG_VCM, "[SUCCESS] Get private data, key(%s), data(%s)", key, temp);
        }
 
-
        if (NULL != temp) {
                *data = strdup(temp);
                free(temp);
@@ -1630,14 +1528,10 @@ int vc_mgr_set_domain(const char* domain)
 {
        SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] Set domain");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == domain, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -1655,8 +1549,6 @@ int vc_mgr_set_domain(const char* domain)
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret = -1;
-
        ret = vc_mgr_tidl_request_set_domain(g_vc_m->handle, domain);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to set domain request : %s", __vc_mgr_get_error_code(ret));
@@ -1673,14 +1565,10 @@ int vc_mgr_do_action(vc_send_event_type_e type, char* send_event)
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] do action");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (type < VC_SEND_EVENT_TYPE_TEXT || VC_SEND_EVENT_TYPE_HAPTIC_EVENT < type) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] send event type is not valid, (%d)", type);
@@ -1703,7 +1591,6 @@ int vc_mgr_do_action(vc_send_event_type_e type, char* send_event)
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret = -1;
        ret = vc_mgr_tidl_request_do_action(g_vc_m->handle, type, send_event);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to do action request : %s", __vc_mgr_get_error_code(ret));
@@ -1720,14 +1607,10 @@ int vc_mgr_send_specific_engine_request(const char* engine_app_id, const char* e
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] send specific engine request");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] specific engine request. engine app id(%s), event(%s), request(%s)", engine_app_id, event, request);
 
@@ -1754,7 +1637,6 @@ int vc_mgr_send_specific_engine_request(const char* engine_app_id, const char* e
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret = -1;
        ret = vc_mgr_tidl_send_specific_engine_request(g_vc_m->handle, engine_app_id, event, request);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to specific engine request : %s", __vc_mgr_get_error_code(ret));
@@ -1771,14 +1653,10 @@ int vc_mgr_start(bool exclusive_command_option)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Request start");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -1814,7 +1692,6 @@ int vc_mgr_start(bool exclusive_command_option)
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to get disabled command type");
        }
 
-       int ret;
        vc_recognition_mode_e recognition_mode = VC_RECOGNITION_MODE_STOP_BY_SILENCE;
        if (0 != vc_mgr_get_recognition_mode(&recognition_mode)) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to get recognition mode");
@@ -1844,14 +1721,10 @@ int vc_mgr_stop(void)
 {
        SLOG(LOG_ERROR, TAG_VCM, "@@@ [Manager] Request stop");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -1881,7 +1754,7 @@ int vc_mgr_stop(void)
                return VC_ERROR_IN_PROGRESS_TO_READY;
        }
 
-       int ret = -1;
+       ret = -1;
        /* do request */
        vc_mgr_client_set_internal_state(g_vc_m, VC_INTERNAL_STATE_STOPPING);
        ret = vc_mgr_tidl_request_stop(g_vc_m->handle);
@@ -1901,14 +1774,10 @@ int vc_mgr_cancel(void)
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] Request cancel");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -1937,7 +1806,7 @@ int vc_mgr_cancel(void)
                return VC_ERROR_IN_PROGRESS_TO_READY;
        }
 
-       int ret = -1;
+       ret = -1;
        vc_mgr_client_set_internal_state(g_vc_m, VC_INTERNAL_STATE_CANCELING);
        ret = vc_mgr_tidl_request_cancel(g_vc_m->handle);
        if (0 != ret) {
@@ -1996,14 +1865,10 @@ int __vc_mgr_set_volume(float volume)
 
 int vc_mgr_get_recording_volume(float* volume)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == volume, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -2060,14 +1925,10 @@ int vc_mgr_set_selected_results(vc_cmd_list_h vc_cmd_list)
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] Select result");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        /* Do not check state for 'restart continuously' mode */
 
@@ -2098,7 +1959,6 @@ int vc_mgr_set_selected_results(vc_cmd_list_h vc_cmd_list)
        }
 
        /* Request */
-       int ret = -1;
        ret = vc_mgr_tidl_send_result_selection(g_vc_m->handle);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to send result selection : %s", __vc_mgr_get_error_code(ret));
@@ -2321,14 +2181,10 @@ void __vc_mgr_cb_speech_detected()
 
 int vc_mgr_set_all_result_cb(vc_mgr_all_result_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -2350,14 +2206,10 @@ int vc_mgr_set_all_result_cb(vc_mgr_all_result_cb callback, void* user_data)
 
 int vc_mgr_unset_all_result_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -2375,14 +2227,10 @@ int vc_mgr_unset_all_result_cb(void)
 
 int vc_mgr_set_result_cb(vc_result_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -2402,14 +2250,10 @@ int vc_mgr_set_result_cb(vc_result_cb callback, void* user_data)
 
 int vc_mgr_unset_result_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -2427,14 +2271,10 @@ int vc_mgr_unset_result_cb(void)
 
 int vc_mgr_set_pre_result_cb(vc_mgr_pre_result_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -2454,14 +2294,10 @@ int vc_mgr_set_pre_result_cb(vc_mgr_pre_result_cb callback, void* user_data)
 
 int vc_mgr_unset_pre_result_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -2481,14 +2317,10 @@ int vc_mgr_get_error_message(char** err_msg)
 {
        SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] Get error message");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        /* check state */
        vc_state_e state;
@@ -2504,7 +2336,6 @@ int vc_mgr_get_error_message(char** err_msg)
                return VC_ERROR_OPERATION_FAILED;
        }
 
-       int ret;
        ret = vc_mgr_client_get_error_message(g_vc_m, err_msg);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to get error message");
@@ -2607,14 +2438,10 @@ static Eina_Bool __vc_mgr_notify_state_changed(void *data)
 
 int vc_mgr_set_state_changed_cb(vc_state_changed_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (callback == NULL)
                return VC_ERROR_INVALID_PARAMETER;
@@ -2636,14 +2463,10 @@ int vc_mgr_set_state_changed_cb(vc_state_changed_cb callback, void* user_data)
 
 int vc_mgr_unset_state_changed_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -2708,14 +2531,10 @@ int __vc_mgr_cb_service_state(int state)
 
 int vc_mgr_set_service_state_changed_cb(vc_service_state_changed_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (callback == NULL)
                return VC_ERROR_INVALID_PARAMETER;
@@ -2737,14 +2556,10 @@ int vc_mgr_set_service_state_changed_cb(vc_service_state_changed_cb callback, vo
 
 int vc_mgr_unset_service_state_changed_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -2761,14 +2576,10 @@ int vc_mgr_unset_service_state_changed_cb(void)
 
 int vc_mgr_set_speech_detected_cb(vc_mgr_begin_speech_detected_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (callback == NULL)
                return VC_ERROR_INVALID_PARAMETER;
@@ -2790,14 +2601,10 @@ int vc_mgr_set_speech_detected_cb(vc_mgr_begin_speech_detected_cb callback, void
 
 int vc_mgr_unset_speech_detected_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -2814,14 +2621,10 @@ int vc_mgr_unset_speech_detected_cb(void)
 
 int vc_mgr_set_current_language_changed_cb(vc_current_language_changed_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -2842,14 +2645,10 @@ int vc_mgr_set_current_language_changed_cb(vc_current_language_changed_cb callba
 
 int vc_mgr_unset_current_language_changed_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -2867,14 +2666,10 @@ int vc_mgr_unset_current_language_changed_cb(void)
 
 int vc_mgr_set_error_cb(vc_error_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -2894,14 +2689,10 @@ int vc_mgr_set_error_cb(vc_error_cb callback, void* user_data)
 
 int vc_mgr_unset_error_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -3054,14 +2845,10 @@ int __vc_mgr_cb_feedback_streaming(int pid, int utt_id, vc_feedback_event_e even
 
 int vc_mgr_set_dialog_request_cb(vc_mgr_dialog_request_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -3081,14 +2868,10 @@ int vc_mgr_set_dialog_request_cb(vc_mgr_dialog_request_cb callback, void* user_d
 
 int vc_mgr_unset_dialog_request_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -3106,14 +2889,10 @@ int vc_mgr_unset_dialog_request_cb(void)
 
 int vc_mgr_set_private_data_set_cb(vc_mgr_private_data_set_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -3133,14 +2912,10 @@ int vc_mgr_set_private_data_set_cb(vc_mgr_private_data_set_cb callback, void* us
 
 int vc_mgr_unset_private_data_set_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -3158,14 +2933,10 @@ int vc_mgr_unset_private_data_set_cb(void)
 
 int vc_mgr_set_private_data_requested_cb(vc_mgr_private_data_requested_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -3185,14 +2956,10 @@ int vc_mgr_set_private_data_requested_cb(vc_mgr_private_data_requested_cb callba
 
 int vc_mgr_unset_private_data_requested_cb(void)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -3393,13 +3160,10 @@ int __vc_mgr_request_auth_cancel(int pid)
 
 int vc_mgr_set_specific_engine_result_cb(vc_mgr_specific_engine_result_cb callback, void* user_data)
 {
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -3457,13 +3221,10 @@ int vc_mgr_set_feedback_audio_format_cb(vc_mgr_feedback_audio_format_cb callback
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] set feedback audio format");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -3487,13 +3248,10 @@ int vc_mgr_unset_feedback_audio_format_cb()
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] unset feedback audio format");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state;
        if (0 != vc_mgr_client_get_client_state(g_vc_m, &state)) {
@@ -3515,13 +3273,10 @@ int vc_mgr_set_feedback_streaming_cb(vc_mgr_feedback_streaming_cb callback, void
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] set feedback streaming");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -3554,13 +3309,10 @@ int vc_mgr_unset_feedback_streaming_cb()
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] unset feedback streaming");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        pthread_mutex_lock(&g_feedback_streaming_cb_mutex);
 
@@ -3591,14 +3343,10 @@ int vc_mgr_set_vc_tts_streaming_cb(vc_mgr_vc_tts_streaming_cb callback, void* us
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] set vc tts streaming callback");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        RETVM_IF(NULL == callback, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
@@ -3631,14 +3379,10 @@ int vc_mgr_unset_vc_tts_streaming_cb()
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] unset vc tts streaming callback");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        pthread_mutex_lock(&g_vc_tts_streaming_cb_mutex);
 
@@ -3780,13 +3524,10 @@ int vc_mgr_start_feedback(void)
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] start feedback");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] Request start TTS feedback");
 
@@ -3820,13 +3561,10 @@ int vc_mgr_stop_feedback(void)
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] stop feedback");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] Request stop TTS feedback");
 
@@ -3840,7 +3578,7 @@ int vc_mgr_stop_feedback(void)
        RETVM_IF(VC_STATE_READY != state, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Stop feedback : Current state is not 'Ready' (%d)", state);
 
 #if 1
-       int ret = -1;
+       ret = -1;
 
        while (1) {
                vc_feedback_data_s* feedback_data = NULL;
@@ -3873,14 +3611,10 @@ int vc_mgr_send_utterance_status(int pid, int utt_id, vc_tts_utterance_status_e
 {
        SLOG(LOG_INFO, TAG_VCM, "@@@ [Manager] send utterance status, pid(%d), utt_id(%d), utt_status(%d)", pid, utt_id, utt_status);
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (VC_TTS_UTTERANCE_NONE > utt_status || VC_TTS_UTTERANCE_CANCELED < utt_status || 0 == utt_status) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] utt_status is not valid. (%d)", utt_status);
@@ -3901,7 +3635,7 @@ int vc_mgr_send_utterance_status(int pid, int utt_id, vc_tts_utterance_status_e
        vc_mgr_client_get_service_state(g_vc_m, &service_state);
        RETVM_IF(service_state != VC_SERVICE_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current service state(%d) is not 'READY'", service_state);
 
-       int ret = vc_mgr_tidl_send_utterance_status(pid, utt_id, utt_status);
+       ret = vc_mgr_tidl_send_utterance_status(pid, utt_id, utt_status);
        if (0 != ret)
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to send utterance status : %s", __vc_mgr_get_error_code(ret));
        else
@@ -3947,14 +3681,10 @@ int vc_mgr_send_audio_streaming(vc_audio_streaming_event_e event, unsigned char*
 {
        SLOG(LOG_INFO, TAG_VCM, "[Manager] Send audio streaming to the engine service, event(%d)", event);
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (VC_AUDIO_STREAMING_EVENT_FAIL > event || VC_AUDIO_STREAMING_EVENT_FINISH < event || 0 == event) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] event is invalid parameter (%d)", event);
@@ -3964,7 +3694,7 @@ int vc_mgr_send_audio_streaming(vc_audio_streaming_event_e event, unsigned char*
        RETVM_IF(NULL == buffer, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Invalid parameter");
 
        vc_state_e state = VC_STATE_NONE;
-       int ret = vc_mgr_client_get_client_state(g_vc_m, &state);
+       ret = vc_mgr_client_get_client_state(g_vc_m, &state);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] A handle is not available");
                return VC_ERROR_INVALID_STATE;
@@ -3999,14 +3729,10 @@ int vc_mgr_set_audio_streaming_mode(vc_audio_streaming_mode_e mode)
 {
        SLOG(LOG_INFO, TAG_VCM, "[Manager] Set multi assistant mode, mode(%d)", mode);
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (VC_AUDIO_STREAMING_MODE_VC_SERVICE > mode || VC_AUDIO_STREAMING_MODE_OUTSIDE < mode) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] mode is invalid parameter (%d)", mode);
@@ -4014,7 +3740,7 @@ int vc_mgr_set_audio_streaming_mode(vc_audio_streaming_mode_e mode)
        }
 
        vc_state_e state = VC_STATE_NONE;
-       int ret = vc_mgr_client_get_client_state(g_vc_m, &state);
+       ret = vc_mgr_client_get_client_state(g_vc_m, &state);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] A handle is not available");
                return VC_ERROR_INVALID_STATE;
@@ -4173,14 +3899,10 @@ int vc_mgr_change_system_volume(vc_system_volume_event_e event)
 {
        SLOG(LOG_INFO, TAG_VCM, "[Manager] Change system volume");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        if (VC_SYSTEM_VOLUME_EVENT_CHANGE_FOR_NEARFIELD > event || VC_SYSTEM_VOLUME_EVENT_CHANGE_FOR_FARFIELD < event) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] event is invalid parameter (%d)", event);
@@ -4188,7 +3910,7 @@ int vc_mgr_change_system_volume(vc_system_volume_event_e event)
        }
 
        vc_state_e state;
-       int ret = vc_mgr_client_get_client_state(g_vc_m, &state);
+       ret = vc_mgr_client_get_client_state(g_vc_m, &state);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] A handle is not available");
                return VC_ERROR_INVALID_STATE;
@@ -4211,17 +3933,13 @@ int vc_mgr_recover_system_volume(void)
 {
        SLOG(LOG_INFO, TAG_VCM, "[Manager] recover system volume");
 
-       if (0 != __vc_mgr_get_feature_enabled()) {
-               SLOG(LOG_DEBUG, TAG_VCM, "@@@ [Manager] not supported");
-               return VC_ERROR_NOT_SUPPORTED;
-       }
-
-       if (0 != __vc_mgr_check_privilege()) {
-               return VC_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_mgr_feature_privilege();
+       if (VC_ERROR_NONE != ret)
+               return ret;
 
        vc_state_e state = VC_STATE_NONE;
-       int ret = vc_mgr_client_get_client_state(g_vc_m, &state);
+       ret = vc_mgr_client_get_client_state(g_vc_m, &state);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCM, "[ERROR] A handle is not available");
                return VC_ERROR_INVALID_STATE;
index 7ea23274c31ec7d866edb31e400900a2eca73721..1b4839f0b4edab68b9dd5602f4d8e5a81342f19b 100644 (file)
@@ -172,7 +172,7 @@ static int __vce_check_privilege()
        return VCE_ERROR_NONE;
 }
 
-int vce_main(int argc, char** argv, vce_request_callback_s *callback)
+int __check_engine_feature_privilege()
 {
        if (0 != __vce_get_feature_enabled()) {
                return VCE_ERROR_NOT_SUPPORTED;
@@ -181,11 +181,21 @@ int vce_main(int argc, char** argv, vce_request_callback_s *callback)
                return VCE_ERROR_PERMISSION_DENIED;
        }
 
+       return VCE_ERROR_NONE;
+}
+
+int vce_main(int argc, char** argv, vce_request_callback_s *callback)
+{
+       int ret;
+       ret = __check_engine_feature_privilege();
+       if (VCE_ERROR_NONE != ret)
+               return ret;
+
        SLOG(LOG_DEBUG, TAG_VCD, "  ");
        SLOG(LOG_DEBUG, TAG_VCD, "  ");
        SLOG(LOG_INFO, TAG_VCD, "===== VC Engine Service Initialize");
 
-       int ret = VCE_ERROR_NONE;
+       ret = VCE_ERROR_NONE;
 
        if (!ecore_init()) {
                SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail ecore_init()");
@@ -373,14 +383,10 @@ int vce_get_command_count(vce_cmd_h vce_command, int* count)
 
 int vce_get_audio_type(char** audio_type)
 {
-       if (0 != __vce_get_feature_enabled()) {
-               return VCE_ERROR_NOT_SUPPORTED;
-       }
-       if (0 != __vce_check_privilege()) {
-               return VCE_ERROR_PERMISSION_DENIED;
-       }
-
-       int ret = VCE_ERROR_NONE;
+       int ret;
+       ret = __check_engine_feature_privilege();
+       if (VCE_ERROR_NONE != ret)
+               return ret;
 
        ret = vcd_get_audio_type(audio_type);
        if (0 != ret) {
@@ -392,14 +398,10 @@ int vce_get_audio_type(char** audio_type)
 
 int vce_set_private_data(const char* key, const char* data)
 {
-       if (0 != __vce_get_feature_enabled()) {
-               return VCE_ERROR_NOT_SUPPORTED;
-       }
-       if (0 != __vce_check_privilege()) {
-               return VCE_ERROR_PERMISSION_DENIED;
-       }
-
-       int ret = VCE_ERROR_NONE;
+       int ret;
+       ret = __check_engine_feature_privilege();
+       if (VCE_ERROR_NONE != ret)
+               return ret;
 
        if (NULL == key || NULL == data) {
                SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Invalid parameter");
@@ -428,14 +430,10 @@ int vce_set_private_data(const char* key, const char* data)
 
 int vce_get_private_data(const char* key, char** data)
 {
-       if (0 != __vce_get_feature_enabled()) {
-               return VCE_ERROR_NOT_SUPPORTED;
-       }
-       if (0 != __vce_check_privilege()) {
-               return VCE_ERROR_PERMISSION_DENIED;
-       }
-
-       int ret = VCE_ERROR_NONE;
+       int ret;
+       ret = __check_engine_feature_privilege();
+       if (VCE_ERROR_NONE != ret)
+               return ret;
 
        if (NULL == key || NULL == data) {
                SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Invalid parameter");
@@ -452,14 +450,10 @@ int vce_get_private_data(const char* key, char** data)
 
 int vce_start_recording()
 {
-       if (0 != __vce_get_feature_enabled()) {
-               return VCE_ERROR_NOT_SUPPORTED;
-       }
-       if (0 != __vce_check_privilege()) {
-               return VCE_ERROR_PERMISSION_DENIED;
-       }
-
-       int ret = VCE_ERROR_NONE;
+       int ret;
+       ret = __check_engine_feature_privilege();
+       if (VCE_ERROR_NONE != ret)
+               return ret;
 
        ret = vcd_start_recording();
        if (0 != ret) {
@@ -471,14 +465,10 @@ int vce_start_recording()
 
 int vce_stop_recording()
 {
-       if (0 != __vce_get_feature_enabled()) {
-               return VCE_ERROR_NOT_SUPPORTED;
-       }
-       if (0 != __vce_check_privilege()) {
-               return VCE_ERROR_PERMISSION_DENIED;
-       }
-
-       int ret = VCE_ERROR_NONE;
+       int ret;
+       ret = __check_engine_feature_privilege();
+       if (VCE_ERROR_NONE != ret)
+               return ret;
 
        ret = vcd_stop_recording();
        if (0 != ret) {
@@ -490,14 +480,12 @@ int vce_stop_recording()
 
 int vce_send_update_status(vce_update_event_e update_event, const char* msg)
 {
-       if (0 != __vce_get_feature_enabled()) {
-               return VCE_ERROR_NOT_SUPPORTED;
-       }
-       if (0 != __vce_check_privilege()) {
-               return VCE_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_engine_feature_privilege();
+       if (VCE_ERROR_NONE != ret)
+               return ret;
 
-       int ret = vcd_send_update_status(update_event, msg);
+       ret = vcd_send_update_status(update_event, msg);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to send update status");
        }
@@ -507,19 +495,17 @@ int vce_send_update_status(vce_update_event_e update_event, const char* msg)
 
 int vce_set_private_data_set_cb(vce_private_data_set_cb callback_func)
 {
-       if (0 != __vce_get_feature_enabled()) {
-               return VCE_ERROR_NOT_SUPPORTED;
-       }
-       if (0 != __vce_check_privilege()) {
-               return VCE_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_engine_feature_privilege();
+       if (VCE_ERROR_NONE != ret)
+               return ret;
 
        if (NULL == callback_func) {
                SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Invalid parameter");
                return VCE_ERROR_INVALID_PARAMETER;
        }
 
-       int ret = vcd_set_private_data_set_cb(callback_func);
+       ret = vcd_set_private_data_set_cb(callback_func);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to set private data set cb");
        }
@@ -529,19 +515,17 @@ int vce_set_private_data_set_cb(vce_private_data_set_cb callback_func)
 
 int vce_set_private_data_requested_cb(vce_private_data_requested_cb callback_func)
 {
-       if (0 != __vce_get_feature_enabled()) {
-               return VCE_ERROR_NOT_SUPPORTED;
-       }
-       if (0 != __vce_check_privilege()) {
-               return VCE_ERROR_PERMISSION_DENIED;
-       }
+       int ret;
+       ret = __check_engine_feature_privilege();
+       if (VCE_ERROR_NONE != ret)
+               return ret;
 
        if (NULL == callback_func) {
                SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Invalid parameter");
                return VCE_ERROR_INVALID_PARAMETER;
        }
 
-       int ret = vcd_set_private_data_requested_cb(callback_func);
+       ret = vcd_set_private_data_requested_cb(callback_func);
        if (0 != ret) {
                SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to set private data requested cb");
        }