/* find callback info */
cb_info = __find_op_cbinfo(pc, req_id);
if (cb_info == NULL) {
- ERR("cannot fint cb_info for req_id:%d", req_id);
+ ERR("cannot fint cb_info for req_id:%s", req_id);
return;
}
snprintf(buf, 128, "%d", get_type);
argv[argcnt++] = strdup(pkgid);
argv[argcnt++] = strdup(buf);
+ argv[argcnt++] = strdup("-k");
argv[argcnt++] = strdup(req_key);
/*** add quote in all string for special charactor like '\n'*** FIX */
snprintf(buf, 128, "%d", get_type);
argv[argcnt++] = strdup(pkgid);
argv[argcnt++] = strdup(buf);
- argv[argcnt++] = strdup(buf);
+ argv[argcnt++] = strdup("-k");
+ argv[argcnt++] = req_key;
/*** add quote in all string for special charactor like '\n'*** FIX */
for (i = 0; i < argcnt; i++) {
#define PRIVILEGE_PACKAGEMANAGER_ADMIN "http://tizen.org/privilege/packagemanager.admin"
#define PRIVILEGE_PACKAGEMANAGER_INFO "http://tizen.org/privilege/packagemanager.info"
+#define PRIVILEGE_PACKAGEMANAGER_CLEARCACHE "http://tizen.org/privilege/packagemanager.clearcache"
#define PRIVILEGE_PACKAGEMANAGER_NONE "NONE"
static const char *__convert_req_type_to_privilege(int req_type)
case COMM_REQ_TO_CLEARER:
case COMM_REQ_TO_MOVER:
case COMM_REQ_KILL_APP:
- case COMM_REQ_CLEAR_CACHE_DIR:
return PRIVILEGE_PACKAGEMANAGER_ADMIN;
case COMM_REQ_GET_SIZE:
case COMM_REQ_CHECK_APP:
return PRIVILEGE_PACKAGEMANAGER_INFO;
+ case COMM_REQ_CLEAR_CACHE_DIR:
+ return PRIVILEGE_PACKAGEMANAGER_CLEARCACHE;
case COMM_REQ_CANCEL:
default:
return PRIVILEGE_PACKAGEMANAGER_NONE;
break;
case COMM_REQ_GET_SIZE:
DBG("before run _get_backend_cmd()");
- __exec_with_arg_vector("usr/bin/pkg_getsize", __generate_argv(item->args), item->uid);
+ __exec_with_arg_vector("/usr/bin/pkg_getsize", __generate_argv(item->args), item->uid);
break;
case COMM_REQ_KILL_APP:
case COMM_REQ_CHECK_APP:
}
pkgmgrinfo_pkginfo_destroy_pkginfo(handle);
break;
+ case COMM_REQ_CLEAR_CACHE_DIR:
+ __exec_with_arg_vector("/usr/bin/pkg_clearcache", __generate_argv(item->args), item->uid);
+ break;
}
/* exit child */
_save_queue_status(item, "done");
if (info_str == NULL)
return -1;
- ret = pkgmgr_installer_send_signal(pi, req_key, pkgid, "get_size",
- info_str);
+ ret = pkgmgr_installer_send_signal(pi,
+ PKGMGR_INSTALLER_GET_SIZE_KEY_STR,
+ pkgid, PKGMGR_INSTALLER_GET_SIZE_KEY_STR, info_str);
free(info_str);
return ret;
// argv has bellowed meaning
// argv[0] = pkgid
// argv[1] = get type
- // argv[2] = req_key
+ // argv[3] = req_key
if (argv[0] == NULL) {
ERR("pkgid is NULL\n");
pkgid = argv[0];
get_type = atoi(argv[1]);
- req_key = argv[2];
+ req_key = argv[3];
DBG("start get size : [pkgid=%s, request type=%d]", pkgid, get_type);
ERR("failed to create installer");
return -1;
}
+ pkgmgr_installer_receive_request(pi, argc, argv);
switch (get_type) {
case PM_GET_TOTAL_SIZE:
if (ret == 0)
ret = __send_result_to_signal(pi, req_key,
PKG_SIZE_INFO_TOTAL, &info);
- __make_size_info_file(req_key, 0);
+ ret = __make_size_info_file(req_key, 0);
break;
default:
ret = -1;