GDBusMethodInvocation *invocation, GVariant *parameters)
{
uid_t target_uid = (uid_t)-1;
- char *pkgtype;
char *pkgid = NULL;
- char *reqkey = NULL;
g_variant_get(parameters, "(u&s)", &target_uid, &pkgid);
if (target_uid == (uid_t)-1 || pkgid == NULL) {
return -1;
}
- pkgtype = _get_pkgtype_from_pkgid(pkgid, target_uid);
- if (pkgtype == NULL) {
- g_dbus_method_invocation_return_value(invocation,
- g_variant_new("(i)", PKGMGR_R_ENOPKG));
- return -1;
- }
-
- reqkey = __generate_reqkey(pkgid);
- if (reqkey == NULL) {
- g_dbus_method_invocation_return_value(invocation,
- g_variant_new("(i)", PKGMGR_R_ENOMEM));
- free(pkgtype);
- return -1;
- }
-
- if (_push_queue(target_uid, caller_uid, reqkey, REQUEST_TYPE_CLEARDATA,
- pkgtype, pkgid, NULL)) {
+ if (_push_queue(target_uid, caller_uid, NULL, REQUEST_TYPE_CLEARDATA,
+ "pkgtool", pkgid, NULL)) {
g_dbus_method_invocation_return_value(invocation,
g_variant_new("(i)", PKGMGR_R_ESYSTEM));
- free(reqkey);
- free(pkgtype);
return -1;
}
g_dbus_method_invocation_return_value(invocation,
g_variant_new("(i)", PKGMGR_R_OK));
- free(reqkey);
- free(pkgtype);
-
return 0;
}