diff options
author | Kenny Root <kroot@google.com> | 2012-10-17 09:35:34 -0700 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2012-10-17 09:35:35 -0700 |
commit | 85f9ba9e7fdf9c3bf063f2e4c44a670861b4f199 (patch) | |
tree | f92e4d72caf27ece69a5a811f90b7b4f3a442be5 /cmds | |
parent | 826343138dfd8666d2263dd82bfdbf657fc1881e (diff) | |
parent | c9a1aabc49d31370e3bf41f85b805499640230b1 (diff) | |
download | frameworks_base-85f9ba9e7fdf9c3bf063f2e4c44a670861b4f199.zip frameworks_base-85f9ba9e7fdf9c3bf063f2e4c44a670861b4f199.tar.gz frameworks_base-85f9ba9e7fdf9c3bf063f2e4c44a670861b4f199.tar.bz2 |
Merge "Remove HAVE_SELINUX guards"
Diffstat (limited to 'cmds')
-rw-r--r-- | cmds/installd/Android.mk | 9 | ||||
-rw-r--r-- | cmds/installd/commands.c | 38 |
2 files changed, 11 insertions, 36 deletions
diff --git a/cmds/installd/Android.mk b/cmds/installd/Android.mk index 3e722ea..1dd4ee5 100644 --- a/cmds/installd/Android.mk +++ b/cmds/installd/Android.mk @@ -29,17 +29,12 @@ LOCAL_SRC_FILES := \ $(common_src_files) LOCAL_SHARED_LIBRARIES := \ - libcutils + libcutils \ + libselinux LOCAL_STATIC_LIBRARIES := \ libdiskusage -ifeq ($(HAVE_SELINUX),true) -LOCAL_C_INCLUDES += external/libselinux/include -LOCAL_SHARED_LIBRARIES += libselinux -LOCAL_CFLAGS := -DHAVE_SELINUX -endif # HAVE_SELINUX - LOCAL_MODULE := installd LOCAL_MODULE_TAGS := optional diff --git a/cmds/installd/commands.c b/cmds/installd/commands.c index 41e7b8d..9d0dc53 100644 --- a/cmds/installd/commands.c +++ b/cmds/installd/commands.c @@ -16,10 +16,7 @@ #include "installd.h" #include <diskusage/dirsize.h> - -#ifdef HAVE_SELINUX #include <selinux/android.h> -#endif /* Directory records that are used in execution of commands. */ dir_rec_t android_data_dir; @@ -76,14 +73,12 @@ int install(const char *pkgname, uid_t uid, gid_t gid) return -errno; } -#ifdef HAVE_SELINUX - if (selinux_android_setfilecon(libdir, pkgname, AID_SYSTEM) < 0) { + if (selinux_android_setfilecon(libdir, pkgname, uid) < 0) { ALOGE("cannot setfilecon dir '%s': %s\n", libdir, strerror(errno)); unlink(libdir); unlink(pkgdir); return -errno; } -#endif if (chown(pkgdir, uid, gid) < 0) { ALOGE("cannot chown dir '%s': %s\n", pkgdir, strerror(errno)); @@ -92,15 +87,6 @@ int install(const char *pkgname, uid_t uid, gid_t gid) return -errno; } -#ifdef HAVE_SELINUX - if (selinux_android_setfilecon(pkgdir, pkgname, uid) < 0) { - ALOGE("cannot setfilecon dir '%s': %s\n", pkgdir, strerror(errno)); - unlink(libdir); - unlink(pkgdir); - return -errno; - } -#endif - return 0; } @@ -193,19 +179,16 @@ int make_user_data(const char *pkgname, uid_t uid, uid_t persona) ALOGE("cannot create dir '%s': %s\n", pkgdir, strerror(errno)); return -errno; } - if (chown(pkgdir, uid, uid) < 0) { - ALOGE("cannot chown dir '%s': %s\n", pkgdir, strerror(errno)); + if (selinux_android_setfilecon(pkgdir, pkgname, uid) < 0) { + ALOGE("cannot setfilecon dir '%s': %s\n", pkgdir, strerror(errno)); unlink(pkgdir); return -errno; } - -#ifdef HAVE_SELINUX - if (selinux_android_setfilecon(pkgdir, pkgname, uid) < 0) { - ALOGE("cannot setfilecon dir '%s': %s\n", pkgdir, strerror(errno)); + if (chown(pkgdir, uid, uid) < 0) { + ALOGE("cannot chown dir '%s': %s\n", pkgdir, strerror(errno)); unlink(pkgdir); return -errno; } -#endif return 0; } @@ -394,21 +377,18 @@ int protect(char *pkgname, gid_t gid) if (stat(pkgpath, &s) < 0) return -1; - if (chown(pkgpath, s.st_uid, gid) < 0) { - ALOGE("failed to chgrp '%s': %s\n", pkgpath, strerror(errno)); - return -1; - } if (chmod(pkgpath, S_IRUSR|S_IWUSR|S_IRGRP) < 0) { ALOGE("failed to chmod '%s': %s\n", pkgpath, strerror(errno)); return -1; } - -#ifdef HAVE_SELINUX if (selinux_android_setfilecon(pkgpath, pkgname, s.st_uid) < 0) { ALOGE("cannot setfilecon dir '%s': %s\n", pkgpath, strerror(errno)); return -1; } -#endif + if (chown(pkgpath, s.st_uid, gid) < 0) { + ALOGE("failed to chgrp '%s': %s\n", pkgpath, strerror(errno)); + return -1; + } return 0; } |