summaryrefslogtreecommitdiffstats
path: root/cmds
diff options
context:
space:
mode:
authorKenny Root <kroot@google.com>2012-10-17 10:53:51 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2012-10-17 10:53:51 -0700
commitebf5569880043ffc55e3ecf65442fa50d8b72c81 (patch)
tree4c63486f0ab54bb70d93714a044404443a2f4f66 /cmds
parent61d5c431fdcc52feedb365bef840b9fb6654cc1d (diff)
parent63a183c41f26e4eb475dfbcc4386b37372eb5fba (diff)
downloadframeworks_base-ebf5569880043ffc55e3ecf65442fa50d8b72c81.zip
frameworks_base-ebf5569880043ffc55e3ecf65442fa50d8b72c81.tar.gz
frameworks_base-ebf5569880043ffc55e3ecf65442fa50d8b72c81.tar.bz2
am 63a183c4: Merge "resolved conflicts for merge of 40f2f751 to jb-mr1-dev-plus-aosp" into jb-mr1-dev-plus-aosp
* commit '63a183c41f26e4eb475dfbcc4386b37372eb5fba': Fix mistaken removal of setfilecon
Diffstat (limited to 'cmds')
-rw-r--r--cmds/installd/commands.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/cmds/installd/commands.c b/cmds/installd/commands.c
index 2c30ec7..4da772a 100644
--- a/cmds/installd/commands.c
+++ b/cmds/installd/commands.c
@@ -71,13 +71,20 @@ int install(const char *pkgname, uid_t uid, gid_t gid)
return -1;
}
- if (selinux_android_setfilecon(libsymlink, pkgname, uid) < 0) {
+ if (selinux_android_setfilecon(libsymlink, pkgname, AID_SYSTEM) < 0) {
ALOGE("cannot setfilecon dir '%s': %s\n", libsymlink, strerror(errno));
unlink(libsymlink);
unlink(pkgdir);
return -1;
}
+ if (selinux_android_setfilecon(pkgdir, pkgname, uid) < 0) {
+ ALOGE("cannot setfilecon dir '%s': %s\n", pkgdir, strerror(errno));
+ unlink(libsymlink);
+ unlink(pkgdir);
+ return -errno;
+ }
+
if (chown(pkgdir, uid, gid) < 0) {
ALOGE("cannot chown dir '%s': %s\n", pkgdir, strerror(errno));
unlink(libsymlink);