- pkg_clearcache is replced by pkg_cleardata so change code to use it
- new pkg_cleardata will handle clear data of pkg
Related changes:
[pkgmgr-tool] : https://review.tizen.org/gerrit/106485
[app-installers] : https://review.tizen.org/gerrit/105691
[tpk-backend] : https://review.tizen.org/gerrit/106603
[wgt-backend] : https://review.tizen.org/gerrit/106601
Change-Id: Ifa296ecdaf00596261c7e676bbebe6a5b344a386
Signed-off-by: Junghyun Yeon <jungh.yeon@samsung.com>
static int __process_cleardata(struct backend_job *job)
{
static int __process_cleardata(struct backend_job *job)
{
+ static const char *backend_cmd = "/usr/bin/pkg_cleardata";
char **argv;
char args[MAX_PKG_ARGS_LEN];
int pid;
char **argv;
char args[MAX_PKG_ARGS_LEN];
int pid;
- backend_cmd = job->backend_path;
- if (backend_cmd == NULL)
+ if ((int)job->target_uid < REGULAR_USER)
- /* TODO: set movetype */
- snprintf(args, sizeof(args), "%s -k %s -c %s -u %d", backend_cmd,
- job->req_id, job->pkgid, (int)job->target_uid);
+ snprintf(args, sizeof(args), "%s -d %s", backend_cmd, job->pkgid);
argv = __generate_argv(args);
argv = __generate_argv(args);
-
- pid = __fork_and_exec_with_args(argv, APPFW_UID);
+ pid = __fork_and_exec_with_args(argv, job->target_uid);
return pid;
}
static int __process_clearcache(struct backend_job *job)
{
return pid;
}
static int __process_clearcache(struct backend_job *job)
{
- static const char *backend_cmd = "/usr/bin/pkg_clearcache";
+ static const char *backend_cmd = "/usr/bin/pkg_cleardata";
char **argv;
char args[MAX_PKG_ARGS_LEN];
int pid;
char **argv;
char args[MAX_PKG_ARGS_LEN];
int pid;
- snprintf(args, sizeof(args), "%s %s", backend_cmd, job->pkgid);
+ if ((int)job->target_uid < REGULAR_USER)
+ return -1;
+
+ snprintf(args, sizeof(args), "%s -c %s", backend_cmd, job->pkgid);
argv = __generate_argv(args);
pid = __fork_and_exec_with_args(argv, job->target_uid);
g_strfreev(argv);
argv = __generate_argv(args);
pid = __fork_and_exec_with_args(argv, job->target_uid);
g_strfreev(argv);