Add c-layer privilege description getter
authorhb.min <hb.min@samsung.com>
Fri, 31 May 2013 11:06:18 +0000 (20:06 +0900)
committerhb.min <hb.min@samsung.com>
Fri, 31 May 2013 11:06:18 +0000 (20:06 +0900)
Change-Id: I719e156e779258aec2f61457a2f2aafeafb6ec76
Signed-off-by: hb.min <hb.min@samsung.com>
59 files changed:
CMakeLists.txt
capi/CMakeLists.txt [new file with mode: 0644]
capi/include/privilege_info.h [new file with mode: 0644]
capi/include/privilege_info_types.h [new file with mode: 0644]
capi/res/string/ar.po [new file with mode: 0755]
capi/res/string/bg.po [new file with mode: 0755]
capi/res/string/ca.po [new file with mode: 0755]
capi/res/string/cs.po [new file with mode: 0755]
capi/res/string/da.po [new file with mode: 0755]
capi/res/string/de_DE.po [new file with mode: 0755]
capi/res/string/el_GR.po [new file with mode: 0755]
capi/res/string/en.po [new file with mode: 0755]
capi/res/string/en_US.po [new file with mode: 0755]
capi/res/string/es_ES.po [new file with mode: 0755]
capi/res/string/fi.po [new file with mode: 0755]
capi/res/string/fr_FR.po [new file with mode: 0755]
capi/res/string/he.po [new file with mode: 0755]
capi/res/string/hi.po [new file with mode: 0755]
capi/res/string/hr.po [new file with mode: 0755]
capi/res/string/hu.po [new file with mode: 0755]
capi/res/string/id.po [new file with mode: 0755]
capi/res/string/it_IT.po [new file with mode: 0755]
capi/res/string/ja_JP.po [new file with mode: 0755]
capi/res/string/ko_KR.po [new file with mode: 0755]
capi/res/string/lt.po [new file with mode: 0755]
capi/res/string/lv.po [new file with mode: 0755]
capi/res/string/ms.po [new file with mode: 0755]
capi/res/string/nl_NL.po [new file with mode: 0755]
capi/res/string/no.po [new file with mode: 0755]
capi/res/string/pl.po [new file with mode: 0755]
capi/res/string/pt_PT.po [new file with mode: 0755]
capi/res/string/ro.po [new file with mode: 0755]
capi/res/string/ru_RU.po [new file with mode: 0755]
capi/res/string/sk.po [new file with mode: 0755]
capi/res/string/sl.po [new file with mode: 0755]
capi/res/string/sr.po [new file with mode: 0755]
capi/res/string/sv.po [new file with mode: 0755]
capi/res/string/test.ori [new file with mode: 0755]
capi/res/string/test.ori~ [new file with mode: 0755]
capi/res/string/th.po [new file with mode: 0755]
capi/res/string/tr_TR.po [new file with mode: 0755]
capi/res/string/uk.po [new file with mode: 0755]
capi/res/string/vi.po [new file with mode: 0755]
capi/res/string/zh_CN.po [new file with mode: 0755]
capi/res/string/zh_HK.po [new file with mode: 0755]
capi/res/string/zh_TW.po [new file with mode: 0755]
capi/src/privilege_info.c [new file with mode: 0644]
packaging/capi-security-privilege-manager.manifest [new file with mode: 0644]
packaging/privilege-checker.spec
util/CMakeLists.txt [new file with mode: 0644]
util/include/CheckerTypes.h [moved from include/CheckerTypes.h with 100% similarity]
util/include/DbManager.h [moved from include/DbManager.h with 100% similarity]
util/include/Parser.h [moved from include/Parser.h with 100% similarity]
util/include/Util.h [moved from include/Util.h with 100% similarity]
util/res/opt/dbspace/.privilegelist.db [moved from res/opt/dbspace/.privilegelist.db with 100% similarity]
util/src/DbManager.cpp [moved from src/DbManager.cpp with 100% similarity]
util/src/Main.cpp [moved from src/Main.cpp with 92% similarity]
util/src/Parser.cpp [moved from src/Parser.cpp with 100% similarity]
util/src/Util.cpp [moved from src/Util.cpp with 100% similarity]

index 024a63f..56110c3 100644 (file)
@@ -1,72 +1,18 @@
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)\r
-PROJECT(privilege-checker)\r
 \r
 MESSAGE("build privilege-checker")\r
 \r
 SET(CMAKE_VERBOSE_MAKEFILE OFF)\r
 \r
-SET(CMAKE_INSTALL_PREFIX /usr)\r
-SET(PREFIX ${CMAKE_INSTALL_PREFIX})\r
-SET(EXEC_PREFIX "\${prefix}")\r
-SET(LIBDIR "\${prefix}/lib")\r
-SET(INCLUDEDIR "\${prefix}/include")\r
-SET(VERSION 0.0)\r
+IF("${USE_AUTOSTART}" STREQUAL "1")\r
+       ADD_DEFINITIONS("-DUSE_AUTOSTART")\r
+ENDIF()\r
 \r
-SET(VERSION_MAJOR 0)\r
-SET(VERSION "${VERSION_MAJOR}.0.1")\r
+ADD_DEFINITIONS("-DCLIENT_IPC_THREAD")\r
+ADD_DEFINITIONS("-DUSE_IPC_EPOLL")\r
 \r
-INCLUDE(FindPkgConfig)\r
-pkg_check_modules(pkgs REQUIRED \r
-       dlog \r
-       sqlite3 \r
-       libwbxml2\r
-       )\r
+STRING(REGEX MATCH "([^.]*)" API_VERSION "${VERSION}")\r
+ADD_DEFINITIONS("-DAPI_VERSION=\"$(API_VERSION)\"")\r
 \r
-FOREACH(flag ${pkgs_CFLAGS})\r
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")\r
-ENDFOREACH(flag)\r
-\r
-SET(CMAKE_C_FLAGS_PROFILING    " -g -pg")\r
-SET(CMAKE_CXX_FLAGS_PROFILING  " -std=c++0x -g -pg")\r
-SET(CMAKE_C_FLAGS_DEBUG        " -g")\r
-SET(CMAKE_CXX_FLAGS_DEBUG      " -std=c++0x -g")\r
-SET(CMAKE_C_FLAGS_RELEASE      " -g")\r
-SET(CMAKE_CXX_FLAGS_RELEASE    " -std=c++0x -g")\r
-SET(CMAKE_C_FLAGS_CCOV         " -g --coverage")\r
-SET(CMAKE_CXX_FLAGS_CCOV       " -std=c++0x -g --coverage")\r
-\r
-SET(src_dir "${CMAKE_SOURCE_DIR}/src")\r
-SET(include_dir "${CMAKE_SOURCE_DIR}/include")\r
-SET(xml_include_dir "/usr/include/libxml2")\r
-\r
-## Additional flag\r
-ADD_DEFINITIONS("-fvisibility=hidden")\r
-ADD_DEFINITIONS("-Wall -Werror")\r
-ADD_DEFINITIONS("-DDLOG_ERROR_ENABLED")\r
-\r
-###################################################################################################\r
-## for privilege-checker (executable)\r
-INCLUDE_DIRECTORIES(\r
-       ${pkgs_INCLUDE_DIRS} \r
-       ${include_dir}\r
-    ${xml_include_dir} \r
-       )\r
-SET(PRIVILEGE_CHECKER_SOURCES \r
-       ${src_dir}/Parser.cpp\r
-       ${src_dir}/Main.cpp\r
-       ${src_dir}/Util.cpp\r
-       ${src_dir}/DbManager.cpp\r
-       )\r
-SET(PRIVILEGE_CHECKER_HEADERS\r
-)\r
-SET(PRIVILEGE_CHECKER_LDFLAGS " -module -avoid-version ")\r
-\r
-SET(PRIVILEGE_CHECKER_CFLAGS  " ${CFLAGS} -fPIC ")\r
-\r
-ADD_DEFINITIONS("-DLOG_TAG=\"PRIVILEGE_CHECKER\"")\r
-ADD_EXECUTABLE(privilege-checker ${PRIVILEGE_CHECKER_SOURCES})\r
-TARGET_LINK_LIBRARIES(privilege-checker ${pkgs_LDFLAGS} ${pkgs_LIBRARIES})\r
-SET_TARGET_PROPERTIES(privilege-checker PROPERTIES COMPILE_FLAGS "${PRIVILEGE_CHECKER_CFLAGS}")\r
-###################################################################################################\r
-\r
-INSTALL(TARGETS privilege-checker DESTINATION bin)\r
+ADD_SUBDIRECTORY(util)\r
+ADD_SUBDIRECTORY(capi)\r
diff --git a/capi/CMakeLists.txt b/capi/CMakeLists.txt
new file mode 100644 (file)
index 0000000..d25b3a2
--- /dev/null
@@ -0,0 +1,121 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+SET(fw_name "capi-security-privilege-manager")
+
+PROJECT(${fw_name})
+
+SET(CMAKE_INSTALL_PREFIX /usr)
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+
+SET(INC_DIR include)
+
+INCLUDE_DIRECTORIES(
+       "${INC_DIR}" 
+       )
+       
+SET(pc_requires "capi-base-common")
+
+INCLUDE(FindPkgConfig)
+pkg_check_modules(${fw_name} REQUIRED capi-base-common dlog    vconf pkgmgr-info)
+FOREACH(flag ${${fw_name}_CFLAGS})
+    SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
+ENDFOREACH(flag)
+
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror")
+SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
+
+IF("${ARCH}" STREQUAL "arm")
+    ADD_DEFINITIONS("-DTARGET")
+ENDIF("${ARCH}" STREQUAL "arm")
+
+ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
+ADD_DEFINITIONS("-DSLP_DEBUG")
+
+SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib")
+
+aux_source_directory(src SOURCES)
+ADD_LIBRARY(${fw_name} SHARED ${SOURCES})
+
+TARGET_LINK_LIBRARIES(${fw_name} ${${fw_name}_LDFLAGS})
+
+SET_TARGET_PROPERTIES(${fw_name} 
+    PROPERTIES 
+    SOVERSION ${API_VERSION} 
+    VERSION ${VERSION} 
+    CLEAN_DIRECT_OUTPUT 1
+)
+
+INSTALL(TARGETS ${fw_name} DESTINATION ../lib)
+INSTALL(
+        DIRECTORY ${INC_DIR}/ DESTINATION ../include/privilegemgr
+        FILES_MATCHING
+        PATTERN "*_private.h" EXCLUDE
+        PATTERN "${INC_DIR}/*.h"
+        )
+
+SET(PC_NAME ${fw_name})
+SET(PC_REQUIRED ${pc_requires})
+SET(PC_LDFLAGS -l${fw_name})
+SET(PC_CFLAGS -I\${includedir}/privilegemgr)
+
+
+IF(UNIX)
+
+ADD_CUSTOM_TARGET (distclean @echo cleaning for source distribution)
+ADD_CUSTOM_COMMAND(
+        DEPENDS clean 
+        COMMENT "distribution clean"
+        COMMAND find
+        ARGS    . 
+        -not -name config.cmake -and \(
+        -name tester.c -or
+        -name Testing -or
+        -name CMakeFiles -or
+        -name cmake.depends -or
+        -name cmake.check_depends -or
+        -name CMakeCache.txt -or
+        -name cmake.check_cache -or
+        -name *.cmake -or
+        -name Makefile -or
+        -name core -or
+        -name core.* -or
+        -name gmon.out -or
+        -name install_manifest.txt -or
+        -name *.pc -or
+        -name *~ \)
+        | grep -v TC | xargs rm -rf
+        TARGET  distclean
+        VERBATIM
+)
+
+ENDIF(UNIX)
+
+
+SET(ROOT_DIR ${CMAKE_SOURCE_DIR}/cmake_build_tmp/output)
+SET(LOCALE_ROOT_PATH "${ROOT_DIR}/target/generic/root/usr/share/locale")
+
+FILE(GLOB _pofiles res/string/*.po)
+
+FOREACH(_file ${_pofiles})
+       GET_FILENAME_COMPONENT(_in ${_file} ABSOLUTE)
+       GET_FILENAME_COMPONENT(_basename ${_file} NAME_WE)
+
+       SET(_out "${LOCALE_ROOT_PATH}/${_basename}/LC_MESSAGES/privilege.mo")
+
+       ADD_CUSTOM_COMMAND(
+               OUTPUT ${_out}
+               COMMENT "Generating ${_out}"
+               COMMAND mkdir -p ${LOCALE_ROOT_PATH}/${_basename}/LC_MESSAGES
+               COMMAND msgfmt -o ${_out} ${_in}
+               DEPENDS ${_in}
+               )
+
+       SET(mo_files ${mo_files} ${_out})
+
+       #INSTALL(FILES ${_out} DESTINATION "${_out}")
+ENDFOREACH(_file ${_pofiles})
+
+ADD_CUSTOM_TARGET(privilege-string ALL DEPENDS ${mo_files})
+
+INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/cmake_build_tmp/output/target/generic/root/usr/share/locale DESTINATION ../share)
+
+
diff --git a/capi/include/privilege_info.h b/capi/include/privilege_info.h
new file mode 100644 (file)
index 0000000..e25c2b5
--- /dev/null
@@ -0,0 +1,125 @@
+/*
+ * Copyright (c) 2013 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef __TIZEN_SECURITY_PRIVILEGE_INFO_H
+#define __TIZEN_SECURITY_PRIVILEGE_INFO_H
+
+#include <tizen.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * @brief Enumerations of error code for Privilege Information.
+ */
+typedef enum
+{
+       PRVMGR_ERR_NONE                                 =  0, /**< Successful */
+       PRVMGR_ERR_INVALID_PARAMETER    = -1, /**< Invalid parameter */
+       PRVMGR_ERR_OUT_OF_MEMORY                = -2, /**< Out of memory */
+       PRVMGR_ERR_INTERNAL_ERROR               = -3, /**< Internal error */
+       PRVMGR_ERR_NO_DATA                              = -4, /**< No data found */
+} privilege_manager_error_e;
+
+/**
+ * @brief Called to get a privilege group once for specific package.
+ * @param[in] privilege_group The privilege group
+ * @param[in] user_data The user data passed from the foreach function
+ * @return 0 if success, negative value(<0) if fail. Callback is not called if return value is negative.
+ * @pre privilege_info_foreach_privilege_group_list_by_pkgid() will invoke this callback.
+ * @see privilege_info_foreach_privilege_group_list_by_pkgid()
+ */
+typedef int (*privilege_info_privilege_groups_cb) (const char *privilege_group, void* user_data);
+
+/**
+ * @brief Called to get a privilege in the privilege group once for specific package.
+ * @param[in] privilege The privilege
+ * @param[in] user_data The user data passed from the foreach function
+ * @return 0 if success, negative value(<0) if fail. Callback is not called if return value is negative.
+ * @pre privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group() will invoke this callback.
+ * @see privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group()
+ */
+typedef int (*privilege_info_privileges_cb) (const char *privilege, void* user_data);
+
+/**
+ * @brief Retrieves privilege group list of the package.
+ * @param [in] package_id The package id
+ * @param [in] callback The callback function to invoke
+ * @param [in] user_data The user data to be passed to the callback function
+ * @return 0 on success, otherwise a negative error value.
+ * @retval #PRVMGR_ERR_NONE Successful
+ * @retval #PRVMGR_ERR_INTERNAL_ERROR Internal error
+ * @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
+ * @post       This function invokes privilege_info_privilege_groups_cb() repeatedly for each application context.
+ * @see privilege_info_privilege_groups_cb()
+ */
+EXPORT_API int privilege_info_foreach_privilege_group_list_by_pkgid(const char *package_id, privilege_info_privilege_groups_cb callback, void* user_data);
+
+/**
+ * @brief Retrieves privilege list in specific group of the package.
+ * @param [in] package_id The package id
+ * @param [in] callback The callback function to invoke
+ * @param [in] user_data The user data to be passed to the callback function
+ * @return 0 on success, otherwise a negative error value.
+ * @retval #PRVMGR_ERR_NONE Successful
+ * @retval #PRVMGR_ERR_INTERNAL_ERROR Internal error
+ * @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
+ * @see privilege_info_privileges_cb()
+ */
+EXPORT_API int privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group(const char *package_id, const char* privilege_group, privilege_info_privileges_cb callback, void* user_data);
+
+/**
+ * @brief Gets the display name of privilege group with the given privilege.
+ * @remarks @a name must be released with free() by you.
+ * @param [in] privilege_group The privilege group
+ * @param [out] name The display name of the privilege group
+ * @return 0 on success, otherwise a negative error value.
+ * @retval #PRVMGR_ERR_NONE Successful
+ * @retval #PRVMGR_ERR_OUT_OF_MEMORY Out of memory
+ * @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
+ */
+EXPORT_API int privilege_info_get_privilege_group_display_name(const char *privilege_group, char **name);
+
+/**
+ * @brief Gets the display name of privilege with the given privilege.
+ * @remarks @a name must be released with free() by you.
+ * @param [in] privilege The privilege
+ * @param [out] name The display name of the privilege
+ * @return 0 on success, otherwise a negative error value.
+ * @retval #PRVMGR_ERR_NONE Successful
+ * @retval #PRVMGR_ERR_OUT_OF_MEMORY Out of memory
+ * @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
+ */
+EXPORT_API int privilege_info_get_privilege_display_name(const char *privilege, char **name);
+
+/**
+ * @brief Gets the description of privilege with the given privilege.
+ * @remarks @a description must be released with free() by you.
+ * @param [in] privilege The privilege
+ * @param [out] description The description of the privilege
+ * @return 0 on success, otherwise a negative error value.
+ * @retval #PRVMGR_ERR_NONE Successful
+ * @retval #PRVMGR_ERR_OUT_OF_MEMORY Out of memory
+ * @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
+ */
+EXPORT_API int privilege_info_get_privilege_description(const char *privilege, char **description);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // __TIZEN_SECURITY_PRIVILEGE_INFO_H
diff --git a/capi/include/privilege_info_types.h b/capi/include/privilege_info_types.h
new file mode 100644 (file)
index 0000000..dc3c63b
--- /dev/null
@@ -0,0 +1,82 @@
+/*
+ * Copyright (c) 2013 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef __TIZEN_SECURITY_PRIVILEGE_INFO_TYPES_H
+#define __TIZEN_SECURITY_PRIVIELGE_INFO_TYPES_H
+
+#include <tizen.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum _privilegeGroup
+{
+       _PRV_GROUP_1,
+       _PRV_GROUP_2,
+       _PRV_GROUP_3,
+       MAX_PRV_GROUP,
+} privilegeGroup;
+
+#define PRIVILEGE_NUM 6
+#define EXTRA_GROUP MAX_PRV_GROUP - 1
+
+typedef struct
+{
+       const char* privilege;
+       const char* name_string_id;
+       const char* description_string_id;
+       privilegeGroup privilege_group_enum;
+
+} privilege_info_s;
+
+typedef struct
+{
+       const char* privilege_group;
+       privilegeGroup privilege_group_enum;
+       const char* name_string_id;
+
+} privilege_group_info_s;
+
+typedef struct
+{
+       int privilege_group;
+       privilege_info_privileges_cb callback;
+       void* user_data;
+} privilege_list_cb_data;
+
+const static privilege_group_info_s privilege_group_info_table[MAX_PRV_GROUP] =
+{
+       {"http://tizen.org/privilege/group1", _PRV_GROUP_1, "IDS_PRIVILEGE_GROUP_NAME1"},
+       {"http://tizen.org/privilege/group2", _PRV_GROUP_2, "IDS_PRIVILEGE_GROUP_NAME2"},
+       {"http://tizen.org/privilege/group3", _PRV_GROUP_3, "IDS_PRIVILEGE_GROUP_NAME3"},
+};
+
+const static privilege_info_s privilege_info_table[PRIVILEGE_NUM] =
+{
+       {"http://tizen.org/privilege/alarm", "IDS_PRIVILEGE_NAME_ALARM", "IDS_PRIVILEGE_DESC_ALARM", _PRV_GROUP_1},
+       {"http://tizen.org/privilege/application.launch", "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH", "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH", _PRV_GROUP_1},
+       {"http://tizen.org/privilege/application.kill", "IDS_PRIVILEGE_NAME_APPLICATION_KILL", "IDS_PRIVILEGE_DESC_APPLICATION_KILL", _PRV_GROUP_1},
+       {"http://tizen.org/privilege/appmanager.launch", "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH", "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH", _PRV_GROUP_2},
+       {"http://tizen.org/privilege/appsetting", "IDS_PRIVILEGE_NAME_APPSETTING", "IDS_PRIVILEGE_DESC_APPSETTING", _PRV_GROUP_2},
+       {"http://tizen.org/privilege/appusage", "IDS_PRIVILEGE_NAME_APPUSAGE", "IDS_PRIVILEGE_DESC_APPUSAGE", _PRV_GROUP_2},
+};
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // __TIZEN_SECURITY_PRIVACY_INFO_TYPES_H
diff --git a/capi/res/string/ar.po b/capi/res/string/ar.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/bg.po b/capi/res/string/bg.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/ca.po b/capi/res/string/ca.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/cs.po b/capi/res/string/cs.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/da.po b/capi/res/string/da.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/de_DE.po b/capi/res/string/de_DE.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/el_GR.po b/capi/res/string/el_GR.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/en.po b/capi/res/string/en.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/en_US.po b/capi/res/string/en_US.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/es_ES.po b/capi/res/string/es_ES.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/fi.po b/capi/res/string/fi.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/fr_FR.po b/capi/res/string/fr_FR.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/he.po b/capi/res/string/he.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/hi.po b/capi/res/string/hi.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/hr.po b/capi/res/string/hr.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/hu.po b/capi/res/string/hu.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/id.po b/capi/res/string/id.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/it_IT.po b/capi/res/string/it_IT.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/ja_JP.po b/capi/res/string/ja_JP.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/ko_KR.po b/capi/res/string/ko_KR.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/lt.po b/capi/res/string/lt.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/lv.po b/capi/res/string/lv.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/ms.po b/capi/res/string/ms.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/nl_NL.po b/capi/res/string/nl_NL.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/no.po b/capi/res/string/no.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/pl.po b/capi/res/string/pl.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/pt_PT.po b/capi/res/string/pt_PT.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/ro.po b/capi/res/string/ro.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/ru_RU.po b/capi/res/string/ru_RU.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/sk.po b/capi/res/string/sk.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/sl.po b/capi/res/string/sl.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/sr.po b/capi/res/string/sr.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/sv.po b/capi/res/string/sv.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/test.ori b/capi/res/string/test.ori
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/test.ori~ b/capi/res/string/test.ori~
new file mode 100755 (executable)
index 0000000..e6a94d5
--- /dev/null
@@ -0,0 +1,36 @@
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/th.po b/capi/res/string/th.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/tr_TR.po b/capi/res/string/tr_TR.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/uk.po b/capi/res/string/uk.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/vi.po b/capi/res/string/vi.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/zh_CN.po b/capi/res/string/zh_CN.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/zh_HK.po b/capi/res/string/zh_HK.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/res/string/zh_TW.po b/capi/res/string/zh_TW.po
new file mode 100755 (executable)
index 0000000..5e7322d
--- /dev/null
@@ -0,0 +1,51 @@
+msgid "IDS_COM_SK_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_SK_OK"
+msgstr "OK"
+
+msgid "IDS_COM_POP_APPLICATION_TYPE"
+msgstr "Application type"
+
+msgid "IDS_COM_POP_DEFAULT_APPLICATION"
+msgstr "Default application"
+
+msgid "IDS_COM_POP_SELECT_DEFAULT_APPLICATION"
+msgstr "Select default application"
+
+msgid "IDS_PRIVILEGE_NAME_ALARM"
+msgstr "Alarm"
+
+msgid "IDS_PRIVILEGE_DESC_ALARM"
+msgstr "Allows the application to set an alarm and wake up the device at the scheduled time."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_LAUNCH"
+msgstr "Application launch"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_LAUNCH"
+msgstr "Allows the application to be opened conditionally or to open another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPLICATION_KILL"
+msgstr "Application termination"
+
+msgid "IDS_PRIVILEGE_DESC_APPLICATION_KILL"
+msgstr "Allows the application to close another application."
+
+msgid "IDS_PRIVILEGE_NAME_APPMANAGER_LAUNCH"
+msgstr "Application management"
+
+msgid "IDS_PRIVILEGE_DESC_APPMANAGER_LAUNCH"
+msgstr "Allows the application to open another application conditionally."
+
+msgid "IDS_PRIVILEGE_NAME_APPSETTING"
+msgstr "Application settings"
+
+msgid "IDS_PRIVILEGE_DESC_APPSETTING"
+msgstr "Allows the application to manage application settings."
+
+msgid "IDS_PRIVILEGE_NAME_APPUSAGE"
+msgstr "Application usage notifications"
+
+msgid "IDS_PRIVILEGE_DESC_APPUSAGE"
+msgstr "Allows the application to receive notifications about foreground application changes."
+
diff --git a/capi/src/privilege_info.c b/capi/src/privilege_info.c
new file mode 100644 (file)
index 0000000..1b95359
--- /dev/null
@@ -0,0 +1,310 @@
+/*
+ * Copyright (c) 2013 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdlib.h>
+#include <libintl.h>
+#include <locale.h>
+#include <vconf.h>
+#include <dlog.h>
+#include <privilege_info.h>
+#include <privilege_info_types.h>
+#include <pkgmgr-info.h>
+
+#define TryReturn(condition, returnValue, ...) \
+       if (!(condition)) { \
+               LOGE(__VA_ARGS__); \
+               return returnValue;     \
+       } \
+       else {;}
+
+int privilege_info_privilege_list_by_pkgid_callback (const char *privilege_name, void *user_data)
+{
+       int i = 0;
+       int* groupTable = (int*)user_data;
+       bool matchedFlag = false;
+
+       TryReturn(privilege_name != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege_name is NULL");
+       TryReturn(user_data != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] user_data is NULL");
+
+       for (i = 0; i < PRIVILEGE_NUM; i++)
+       {
+               if (strcmp(privilege_info_table[i].privilege, privilege_name) == 0)
+               {
+                       groupTable[(privilege_info_table[i].privilege_group_enum)] = 1;
+                       matchedFlag = true;
+                       break;
+               }
+       }
+
+       if (matchedFlag == false)
+       {
+               groupTable[EXTRA_GROUP] = 1;
+       }
+
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_foreach_privilege_group_list_by_pkgid(const char *package_id, privilege_info_privileges_cb callback, void* user_data)
+{
+       int groupTable[MAX_PRV_GROUP] = {0,};
+       int i = 0;
+       int res = PRVMGR_ERR_NONE;
+
+       TryReturn(package_id != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] package_id is NULL");
+       TryReturn(callback != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] callback is NULL");
+
+       pkgmgrinfo_pkginfo_h handle;
+       res = pkgmgrinfo_pkginfo_get_pkginfo(package_id, &handle);
+       TryReturn(res == PMINFO_R_OK, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_get_pkginfo is failed.");
+
+       res = pkgmgrinfo_pkginfo_foreach_privilege(handle, privilege_info_privilege_list_by_pkgid_callback, &groupTable);
+       pkgmgrinfo_pkginfo_destroy_pkginfo(handle);
+       TryReturn(res == PMINFO_R_OK, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_foreach_privilege is failed.")
+
+       for (i = 0; i < MAX_PRV_GROUP; i++)
+       {
+               if (groupTable[i] == 1)
+               {
+                       res = callback(privilege_group_info_table[i].privilege_group, user_data);
+                       TryReturn(res >= 0, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
+               }
+       }
+
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_privilege_list_callback (const char *privilege_name, void *user_data)
+{
+       int i = 0;
+       int res = PRVMGR_ERR_NONE;
+       bool matchedFlag = false;
+       privilege_list_cb_data data = *((privilege_list_cb_data*)(user_data));
+
+       TryReturn(privilege_name != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege_name is NULL");
+       TryReturn(user_data != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] user_data is NULL");
+
+       for (i = 0; i < PRIVILEGE_NUM; i++)
+       {
+               if (strcmp(privilege_info_table[i].privilege, privilege_name) == 0)
+               {
+                       matchedFlag = true;
+                       if (privilege_info_table[i].privilege_group_enum == data.privilege_group)
+                       {
+                               res = data.callback(privilege_name, data.user_data);
+                               TryReturn(res >= 0, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
+
+                               break;
+                       }
+               }
+       }
+
+       if ((matchedFlag == false) && (data.privilege_group == EXTRA_GROUP))
+       {
+               res = data.callback(privilege_name, data.user_data);
+               TryReturn(res >= 0, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
+       }
+
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group(const char *package_id, const char* privilege_group, privilege_info_privileges_cb callback, void* user_data)
+{
+       int i = 0;
+       int res = PRVMGR_ERR_NONE;
+       privilege_list_cb_data data;
+
+       TryReturn(package_id != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] package_id is NULL");
+       TryReturn(privilege_group != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege_group is NULL");
+       TryReturn(callback != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] callback is NULL");
+
+       data.privilege_group = -1;
+       data.callback = callback;
+       data.user_data = user_data;
+
+       for (i = 0; i < MAX_PRV_GROUP; i++)
+       {
+               if (strcmp(privilege_group_info_table[i].privilege_group, privilege_group) == 0)
+               {
+                       data.privilege_group = privilege_group_info_table[i].privilege_group_enum;
+                       break;
+               }
+       }
+
+       if (data.privilege_group > -1)
+       {
+               pkgmgrinfo_pkginfo_h handle;
+               res = pkgmgrinfo_pkginfo_get_pkginfo(package_id, &handle);
+               TryReturn(res == PMINFO_R_OK, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_get_pkginfo is failed.")
+
+               res = pkgmgrinfo_pkginfo_foreach_privilege(handle, privilege_info_privilege_list_callback, &data);
+               pkgmgrinfo_pkginfo_destroy_pkginfo(handle);
+               TryReturn(res == PMINFO_R_OK, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_foreach_privilege is failed.")
+       }
+
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_get_group_string_id(const char *privilege_group, char **group_string_id)
+{
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_get_privilege_group_display_name(const char *privilege_group, char **name)
+{
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_get_privilege_group_display_name_by_string_id(const char *string_id, char **name)
+{
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_get_name_string_id(const char *privilege, char **name_string_id)
+{
+       int index = 0;
+       bool validStringFlag = false;
+
+       TryReturn(privilege != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+
+       for (index = 0; index < PRIVILEGE_NUM; index++)
+       {
+               if (strcmp(privilege_info_table[index].privilege, privilege) == 0)
+               {
+                       *name_string_id = (char*)calloc(strlen(privilege_info_table[index].name_string_id) + 1, sizeof(char));
+                       TryReturn(*name_string_id != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+
+                       memcpy(*name_string_id, privilege_info_table[index].name_string_id, strlen(privilege_info_table[index].name_string_id));
+                       validStringFlag = true;
+                       break;
+               }
+       }
+
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_get_privilege_display_name_by_string_id(const char *string_id, char **name)
+{
+       char *temp = NULL;
+
+       TryReturn(string_id != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] string_id is NULL");
+
+       temp = dgettext("privilege", string_id);
+
+       *name = (char*)calloc(strlen(temp) + 1, sizeof(char));
+       TryReturn(*name != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+
+       memcpy(*name, temp, strlen(temp));
+
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_get_privilege_display_name(const char *privilege, char **name)
+{
+       int ret = 0;
+       char* name_string_id = NULL;
+
+       TryReturn(privilege != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+
+       ret = privilege_info_get_name_string_id(privilege, &name_string_id);
+       if (name_string_id == NULL)
+       {
+               char tempPrivilege[256] = {0,};
+               char* temp = NULL;
+               char* buffer = NULL;
+               memcpy(tempPrivilege, privilege, strlen(privilege));
+               temp = strtok(tempPrivilege, "/");
+               while(temp)
+               {
+                       buffer = temp;
+                       temp = strtok(NULL, "/");
+               }
+               *name = (char*)calloc(strlen(buffer) + 1, sizeof(char));
+               TryReturn(*name != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+
+               memcpy(*name, buffer, strlen(buffer));
+       }
+       else
+       {
+               ret = privilege_info_get_privilege_display_name_by_string_id(name_string_id, name);
+               free(name_string_id);
+               TryReturn(ret == PRVMGR_ERR_NONE, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+       }
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_get_description_string_id(const char *privilege, char **description_string_id)
+{
+       int index = 0;
+       bool validStringFlag = false;
+
+       TryReturn(privilege != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+
+       for (index = 0; index < PRIVILEGE_NUM; index++)
+       {
+               if (strcmp(privilege_info_table[index].privilege, privilege) == 0)
+               {
+                       *description_string_id = (char*)calloc(strlen(privilege_info_table[index].description_string_id) + 1, sizeof(char));
+                       TryReturn(*description_string_id != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+
+                       memcpy(*description_string_id, privilege_info_table[index].description_string_id, strlen(privilege_info_table[index].description_string_id));
+                       validStringFlag = true;
+                       break;
+               }
+       }
+
+       return PRVMGR_ERR_NONE;
+}
+
+int privilege_info_get_privilege_description_by_string_id(const char *string_id, char **description)
+{
+       char *temp = NULL;
+
+       TryReturn(string_id != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] string_id is NULL");
+
+       temp = dgettext("privilege", string_id);
+
+       *description = (char*)calloc(strlen(temp) + 1, sizeof(char));
+       TryReturn(*description != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+
+       memcpy(*description, temp, strlen(temp));
+
+       return  PRVMGR_ERR_NONE;
+}
+
+int privilege_info_get_privilege_description(const char *privilege, char **description)
+{
+       int ret = 0;
+       char* description_string_id = NULL;
+
+       TryReturn(privilege != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+
+       ret = privilege_info_get_description_string_id(privilege, &description_string_id);
+       if (description_string_id == NULL)
+       {
+               char temp[] = "Undefined";
+               *description = (char*)calloc(strlen(temp) + 1, sizeof(char));
+               TryReturn(*description != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+
+               memcpy(*description, temp, strlen(temp));
+       }
+       else
+       {
+               ret = privilege_info_get_privilege_display_name_by_string_id(description_string_id, description);
+               free(description_string_id);
+               TryReturn(ret == PRVMGR_ERR_NONE, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+       }
+       return  PRVMGR_ERR_NONE;
+}
diff --git a/packaging/capi-security-privilege-manager.manifest b/packaging/capi-security-privilege-manager.manifest
new file mode 100644 (file)
index 0000000..75b0fa5
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+    <request>
+        <domain name="_"/>
+    </request>
+</manifest>
index d7fbf5c..214cbf4 100644 (file)
@@ -22,6 +22,27 @@ Requires: privilege-checker = %{version}-%{release}
 %description -n privilege-checker-devel
 privilege-checker devel
 
+%package -n capi-security-privilege-manager
+Summary:    Privilege Manager API
+Group:      TO_BE/FILLED_IN
+License:    TO BE FILLED IN
+BuildRequires:  cmake
+BuildRequires:  pkgconfig(dlog)
+BuildRequires:  pkgconfig(capi-base-common)
+BuildRequires:  pkgconfig(vconf)
+BuildRequires:  gettext-tools
+BuildRequires:  pkgconfig(pkgmgr-info)
+
+%description -n capi-security-privilege-manager
+The Privilege Manager API provides functions to get information about privilege information of installed packages.
+
+%package  -n capi-security-privilege-manager-devel
+Summary:  Privilege Manager API (Development)
+Group:    TO_BE/FILLED_IN
+
+%description -n capi-security-privilege-manager-devel
+The Privilege Manager API provides functions to get information about privilege information of installed packages.(DEV)
+
 %prep
 %setup -q
 
@@ -31,12 +52,16 @@ echo cmake . -DPREFIX=%{_prefix} \
         -DEXEC_PREFIX=%{_exec_prefix} \
         -DLIBDIR=%{_libdir} \
         -DINCLUDEDIR=%{_includedir} \
-        -DCMAKE_BUILD_TYPE=%{build_type}
+        -DCMAKE_BUILD_TYPE=%{build_type} \
+        -DVERSION=%{version} \
+        -DDPL_LOG="ON" 
 cmake . -DPREFIX=%{_prefix} \
         -DEXEC_PREFIX=%{_exec_prefix} \
         -DLIBDIR=%{_libdir} \
         -DINCLUDEDIR=%{_includedir} \
-        -DCMAKE_BUILD_TYPE=%{build_type}
+        -DCMAKE_BUILD_TYPE=%{build_type} \
+        -DVERSION=%{version} \
+        -DDPL_LOG="ON" 
 make %{?jobs:-j%jobs}
 
 %install
@@ -44,7 +69,7 @@ rm -rf %{buildroot}
 mkdir -p %{buildroot}/usr/share/license
 cp LICENSE.APLv2 %{buildroot}/usr/share/license/privilege-checker
 mkdir -p %{buildroot}/opt/dbspace
-cp res/opt/dbspace/.privilegelist.db /%{buildroot}/opt/dbspace/
+cp util/res/opt/dbspace/.privilegelist.db /%{buildroot}/opt/dbspace/
 
 %make_install
 
@@ -54,6 +79,15 @@ cp res/opt/dbspace/.privilegelist.db /%{buildroot}/opt/dbspace/
 /opt/dbspace/.privilegelist.db
 %manifest packaging/privilege-checker.manifest
 
+%files -n capi-security-privilege-manager
+%{_libdir}/libcapi-security-privilege-manager.so.*
+/usr/share/locale/*
+%manifest packaging/capi-security-privilege-manager.manifest
+
+%files -n capi-security-privilege-manager-devel
+%{_includedir}/privilegemgr/*.h
+%{_libdir}/libcapi-security-privilege-manager.so
+
 %clean
 rm -rf %{buildroot}
 
diff --git a/util/CMakeLists.txt b/util/CMakeLists.txt
new file mode 100644 (file)
index 0000000..6502bc3
--- /dev/null
@@ -0,0 +1,62 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)\r
+PROJECT(privilege-checker)\r
+\r
+MESSAGE("build privilege-checker util")\r
+\r
+SET(CMAKE_INSTALL_PREFIX /usr)\r
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})\r
+SET(EXEC_PREFIX "\${prefix}")\r
+SET(LIBDIR "\${prefix}/lib")\r
+SET(INCLUDEDIR "\${prefix}/include")\r
+\r
+INCLUDE(FindPkgConfig)\r
+pkg_check_modules(pkgs REQUIRED dlog sqlite3 libwbxml2 )\r
+\r
+FOREACH(flag ${pkgs_CFLAGS})\r
+       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")\r
+ENDFOREACH(flag)\r
+\r
+SET(CMAKE_C_FLAGS_PROFILING    " -g -pg")\r
+SET(CMAKE_CXX_FLAGS_PROFILING  " -std=c++0x -g -pg")\r
+SET(CMAKE_C_FLAGS_DEBUG        " -g")\r
+SET(CMAKE_CXX_FLAGS_DEBUG      " -std=c++0x -g")\r
+SET(CMAKE_C_FLAGS_RELEASE      " -g")\r
+SET(CMAKE_CXX_FLAGS_RELEASE    " -std=c++0x -g")\r
+SET(CMAKE_C_FLAGS_CCOV         " -g --coverage")\r
+SET(CMAKE_CXX_FLAGS_CCOV       " -std=c++0x -g --coverage")\r
+\r
+SET(src_dir "${CMAKE_SOURCE_DIR}/util/src")\r
+SET(include_dir "${CMAKE_SOURCE_DIR}/util/include")\r
+SET(xml_include_dir "/usr/include/libxml2")\r
+\r
+## Additional flag\r
+ADD_DEFINITIONS("-fvisibility=hidden")\r
+ADD_DEFINITIONS("-Wall -Werror")\r
+ADD_DEFINITIONS("-DDLOG_ERROR_ENABLED")\r
+\r
+###################################################################################################\r
+## for privilege-checker (executable)\r
+INCLUDE_DIRECTORIES(\r
+       ${pkgs_INCLUDE_DIRS} \r
+       ${include_dir}\r
+    ${xml_include_dir} \r
+       )\r
+SET(PRIVILEGE_CHECKER_SOURCES \r
+       ${src_dir}/Parser.cpp\r
+       ${src_dir}/Main.cpp\r
+       ${src_dir}/Util.cpp\r
+       ${src_dir}/DbManager.cpp\r
+       )\r
+SET(PRIVILEGE_CHECKER_HEADERS\r
+)\r
+SET(PRIVILEGE_CHECKER_LDFLAGS " -module -avoid-version ")\r
+\r
+SET(PRIVILEGE_CHECKER_CFLAGS  " ${CFLAGS} -fPIC ")\r
+\r
+ADD_DEFINITIONS("-DLOG_TAG=\"PRIVILEGE_CHECKER\"")\r
+ADD_EXECUTABLE(privilege-checker ${PRIVILEGE_CHECKER_SOURCES})\r
+TARGET_LINK_LIBRARIES(privilege-checker ${pkgs_LDFLAGS} ${pkgs_LIBRARIES})\r
+SET_TARGET_PROPERTIES(privilege-checker PROPERTIES COMPILE_FLAGS "${PRIVILEGE_CHECKER_CFLAGS}")\r
+###################################################################################################\r
+\r
+INSTALL(TARGETS privilege-checker DESTINATION ../bin)\r
similarity index 100%
rename from include/DbManager.h
rename to util/include/DbManager.h
similarity index 100%
rename from include/Parser.h
rename to util/include/Parser.h
similarity index 100%
rename from include/Util.h
rename to util/include/Util.h
similarity index 100%
rename from src/DbManager.cpp
rename to util/src/DbManager.cpp
similarity index 92%
rename from src/Main.cpp
rename to util/src/Main.cpp
index a075c4f..062d9ef 100644 (file)
@@ -16,9 +16,6 @@
 
 #include <stdio.h>
 #include <Parser.h>
-#include <dlog.h>
-#include <libintl.h>
-#include <locale.h>
 
 int
 main(int argc, char **argv) {
@@ -33,5 +30,5 @@ main(int argc, char **argv) {
        fileName = argv[1];
        Parser::ParseExtendedPolicy(fileName);
 
-       return 1;
+       return 0;
 }
similarity index 100%
rename from src/Parser.cpp
rename to util/src/Parser.cpp
similarity index 100%
rename from src/Util.cpp
rename to util/src/Util.cpp