Design Introduction “Air” Styles Mobile Design Principles Styles UX Overview Design Patterns UI Components for Tizen App Design 2.3 TV Design Principles Styles UX Overview Patterns UI Components Wearable Development Tizen Studio Overview Download Tizen Studio Deprecation Notice Tizen Extensions for Visual Studio Family IoT extension SDK Docs Blog Blog Announcing the Tizen Studio 3.7 Release Announcing the Tizen Studio 3.1 Release Community Forums General Support Tizen .NET Web Application Development Native Application Development SDK & IDE Design Introduction “Air” Styles Mobile Design Principles Styles UX Overview Design Patterns UI Components for Tizen App Design 2.3 TV Design Principles Styles UX Overview Patterns UI Components Wearable Development Tizen Studio Overview Download Tizen Studio Deprecation Notice Tizen Extensions for Visual Studio Family IoT extension SDK Docs Blog Blog Announcing the Tizen Studio 3.7 Release Announcing the Tizen Studio 3.1 Release Community Forums General Support Tizen .NET Web Application Development Native Application Development SDK & IDE
Shared Libraries ckmc_get_data error
1. call source //call.h char* (*get_f)(char*, char*); //call.c lib_handle = dlopen("lib_so.so", RTLD_NOW); get_f = dlsym(lib_handle, "get_v"); const char *value = NULL; char *str_air = "air"; char *str_key = "key"; value = get_f(str_air, str_key); 2. shared library //shared_lib.h EXPORT_API char *get_v(char *str_air, char *str_key); //shared_lib.c char *get_v(char *str_air, char *str_key) { int ret = CKMC_ERROR_NONE; char *str; //str = calloc(1, sizeof(char) * 251); //strcpy(str, str_air); //strcat(str, str_key); char str[251] = {'\0'}; eina_strlcpy(str, str_air, strlen(str_air)+1); eina_strlcat(str, str_key, strlen(str_air)+strlen(str_key)+1); char* alias = str; char* key_password = NULL; char* error_c = NULL; ckmc_raw_buffer_s *_data; ret = ckmc_get_data(alias, key_password, &_data); //-31522804 if (CKMC_ERROR_NONE != ret) { switch (ret) { case CKMC_ERROR_INVALID_PARAMETER : snprintf(error_c, DISP_STR_SIZE, "%s", "error : 1"); return error_c; case CKMC_ERROR_DB_LOCKED : snprintf(error_c, DISP_STR_SIZE, "%s", "error : 2"); return error_c; case CKMC_ERROR_DB_ALIAS_EXISTS : snprintf(error_c, DISP_STR_SIZE, "%s", "error : 3"); return error_c; case CKMC_ERROR_INVALID_FORMAT : snprintf(error_c, DISP_STR_SIZE, "%s", "error : 4"); return error_c; case CKMC_ERROR_DB_ERROR : snprintf(error_c, DISP_STR_SIZE, "%s", "error : 5"); return error_c; case CKMC_ERROR_PERMISSION_DENIED : snprintf(error_c, DISP_STR_SIZE, "%s", "error : 5"); return error_c; default : snprintf(error_c, DISP_STR_SIZE, "error code : %d", ret); return error_c; // => -31522804 Returned } char *ret_str; ret_str = calloc(1, sizeof(char) * DISP_STR_SIZE); eina_strlcpy(ret_str, magic_data->data, magic_data->size+1); ckmc_buffer_free(magic_data); return ret_str; }~ret = ckmc_get_data (alias, key_password, & _data); // -31522804
– The return value is the value does not get inflated the value of returns as -31522804.
– The general non-shared library code gets the normal value.
What do you have problems?
BY
16 Apr 2025
Tizen Studio
BY
04 Nov 2024
Tizen Studio
BY
02 Apr 2024
Tizen Studio