#define AUL_K_MOUNT_GLOBAL_RES_DIR "__AUL_MOUNT_GLOBAL_RES_DIR__"
#define AUL_K_MOUNT_ALLOWED_RES_DIR "__AUL_MOUNT_ALLOWED_RES_DIR__"
#define AUL_K_ENABLED_LIGHT_USER "__AUL_ENABLED_LIGHT_USER__"
+#define AUL_K_MOUNT_RES_PKGIDS "__AUL_MOUNT_RES_PKGIDS__"
#ifdef __cplusplus
}
return 0;
}
+static void __set_mount_pkgids_to_env(const char *pkgids[], size_t len)
+{
+ int i;
+ char val[PATH_MAX] = { 0 };
+
+ for (i = 0; i < len; i++)
+ snprintf(val + strlen(val), sizeof(val) - strlen(val), "%s:",
+ pkgids[i]);
+
+ val[strlen(val) - 1] = '\0';
+
+ /* RES_PKGIDS=org.tizen.res1:org.tizen.res2:org.tizen.res3 */
+ setenv("RES_PKGIDS", val, 1);
+}
+
int _mount_res_dir(const char *root_path, bundle *kb)
{
const char **val;
return -1;
}
+ val = bundle_get_str_array(kb, AUL_K_MOUNT_RES_PKGIDS, &len);
+ if (val) {
+ __set_mount_pkgids_to_env(val, len);
+ } else if (get_last_result() != BUNDLE_ERROR_KEY_NOT_AVAILABLE) {
+ _E("invalid mount info");
+ return -1;
+ }
return 0;
}