diff options
-rw-r--r-- | Android.mk | 13 | ||||
-rw-r--r-- | minzip/Android.mk | 8 | ||||
-rw-r--r-- | minzip/DirUtil.c | 5 | ||||
-rw-r--r-- | minzip/DirUtil.h | 4 | ||||
-rw-r--r-- | minzip/SysUtil.c | 8 | ||||
-rw-r--r-- | minzip/Zip.c | 4 | ||||
-rw-r--r-- | minzip/Zip.h | 4 | ||||
-rw-r--r-- | recovery.cpp | 2 | ||||
-rw-r--r-- | updater/Android.mk | 7 | ||||
-rw-r--r-- | updater/install.c | 4 | ||||
-rw-r--r-- | updater/updater.c | 2 | ||||
-rw-r--r-- | updater/updater.h | 4 |
12 files changed, 8 insertions, 57 deletions
diff --git a/Android.mk b/Android.mk index 215cfe569..f4ecdb5dd 100644 --- a/Android.mk +++ b/Android.mk @@ -46,6 +46,7 @@ LOCAL_STATIC_LIBRARIES := \ libpixelflinger_static \ libpng \ libcutils \ + libselinux \ libstdc++ \ libm \ libc @@ -56,12 +57,6 @@ ifeq ($(TARGET_USERIMAGES_USE_EXT4), true) LOCAL_STATIC_LIBRARIES += libext4_utils_static libz endif -ifeq ($(HAVE_SELINUX), true) - LOCAL_C_INCLUDES += external/libselinux/include - LOCAL_STATIC_LIBRARIES += libselinux - LOCAL_CFLAGS += -DHAVE_SELINUX -endif # HAVE_SELINUX - # This binary is in the recovery ramdisk, which is otherwise a copy of root. # It gets copied there in config/Makefile. LOCAL_MODULE_TAGS suppresses # a (redundant) copy of the binary in /system/bin for user builds. @@ -74,12 +69,6 @@ else LOCAL_STATIC_LIBRARIES += $(TARGET_RECOVERY_UI_LIB) endif -ifeq ($(HAVE_SELINUX),true) - LOCAL_C_INCLUDES += external/libselinux/include - LOCAL_STATIC_LIBRARIES += libselinux - LOCAL_CFLAGS += -DHAVE_SELINUX -endif # HAVE_SELINUX - LOCAL_C_INCLUDES += system/extras/ext4_utils include $(BUILD_EXECUTABLE) diff --git a/minzip/Android.mk b/minzip/Android.mk index 6c1d0969c..045f35570 100644 --- a/minzip/Android.mk +++ b/minzip/Android.mk @@ -8,15 +8,11 @@ LOCAL_SRC_FILES := \ Inlines.c \ Zip.c -LOCAL_C_INCLUDES += \ +LOCAL_C_INCLUDES := \ external/zlib \ external/safe-iop/include -ifeq ($(HAVE_SELINUX),true) -LOCAL_C_INCLUDES += external/libselinux/include -LOCAL_STATIC_LIBRARIES += libselinux -LOCAL_CFLAGS += -DHAVE_SELINUX -endif +LOCAL_STATIC_LIBRARIES := libselinux LOCAL_MODULE := libminzip diff --git a/minzip/DirUtil.c b/minzip/DirUtil.c index 0d49b5780..8dd5da1da 100644 --- a/minzip/DirUtil.c +++ b/minzip/DirUtil.c @@ -145,24 +145,19 @@ dirCreateHierarchy(const char *path, int mode, } else if (ds == DMISSING) { int err; -#ifdef HAVE_SELINUX char *secontext = NULL; if (sehnd) { selabel_lookup(sehnd, &secontext, cpath, mode); setfscreatecon(secontext); } -#endif err = mkdir(cpath, mode); -#ifdef HAVE_SELINUX - if (secontext) { freecon(secontext); setfscreatecon(NULL); } -#endif if (err != 0) { free(cpath); diff --git a/minzip/DirUtil.h b/minzip/DirUtil.h index f8be64026..a5cfa761b 100644 --- a/minzip/DirUtil.h +++ b/minzip/DirUtil.h @@ -24,12 +24,8 @@ extern "C" { #endif -#ifdef HAVE_SELINUX #include <selinux/selinux.h> #include <selinux/label.h> -#else -struct selabel_handle; -#endif /* Like "mkdir -p", try to guarantee that all directories * specified in path are present, creating as many directories diff --git a/minzip/SysUtil.c b/minzip/SysUtil.c index 49a2522d6..31c76d6d4 100644 --- a/minzip/SysUtil.c +++ b/minzip/SysUtil.c @@ -95,16 +95,16 @@ int sysLoadFileInShmem(int fd, MemMapping* pMap) if (memPtr == NULL) return -1; - actual = read(fd, memPtr, length); + pMap->baseAddr = pMap->addr = memPtr; + pMap->baseLength = pMap->length = length; + + actual = TEMP_FAILURE_RETRY(read(fd, memPtr, length)); if (actual != length) { LOGE("only read %d of %d bytes\n", (int) actual, (int) length); sysReleaseShmem(pMap); return -1; } - pMap->baseAddr = pMap->addr = memPtr; - pMap->baseLength = pMap->length = length; - return 0; } diff --git a/minzip/Zip.c b/minzip/Zip.c index 54d5d55a3..c87f038c5 100644 --- a/minzip/Zip.c +++ b/minzip/Zip.c @@ -1115,23 +1115,19 @@ bool mzExtractRecursive(const ZipArchive *pArchive, * Open the target for writing. */ -#ifdef HAVE_SELINUX char *secontext = NULL; if (sehnd) { selabel_lookup(sehnd, &secontext, targetFile, UNZIP_FILEMODE); setfscreatecon(secontext); } -#endif int fd = creat(targetFile, UNZIP_FILEMODE); -#ifdef HAVE_SELINUX if (secontext) { freecon(secontext); setfscreatecon(NULL); } -#endif if (fd < 0) { LOGE("Can't create target file \"%s\": %s\n", diff --git a/minzip/Zip.h b/minzip/Zip.h index 4bb9ef6a4..c94282827 100644 --- a/minzip/Zip.h +++ b/minzip/Zip.h @@ -18,12 +18,8 @@ extern "C" { #endif -#ifdef HAVE_SELINUX #include <selinux/selinux.h> #include <selinux/label.h> -#else -struct selabel_handle; -#endif /* * One entry in the Zip archive. Treat this as opaque -- use accessors below. diff --git a/recovery.cpp b/recovery.cpp index 594774f5a..92aa50372 100644 --- a/recovery.cpp +++ b/recovery.cpp @@ -863,7 +863,6 @@ main(int argc, char **argv) { ui->SetBackground(RecoveryUI::NONE); if (show_text) ui->ShowText(true); -#ifdef HAVE_SELINUX struct selinux_opt seopts[] = { { SELABEL_OPT_PATH, "/file_contexts" } }; @@ -874,7 +873,6 @@ main(int argc, char **argv) { fprintf(stderr, "Warning: No file_contexts\n"); ui->Print("Warning: No file_contexts\n"); } -#endif device->StartRecovery(); diff --git a/updater/Android.mk b/updater/Android.mk index 8876120b0..4271371e9 100644 --- a/updater/Android.mk +++ b/updater/Android.mk @@ -27,17 +27,12 @@ LOCAL_STATIC_LIBRARIES += \ libz endif -ifeq ($(HAVE_SELINUX), true) -LOCAL_C_INCLUDES += external/libselinux/include -LOCAL_STATIC_LIBRARIES += libselinux -LOCAL_CFLAGS += -DHAVE_SELINUX -endif # HAVE_SELINUX - LOCAL_STATIC_LIBRARIES += $(TARGET_RECOVERY_UPDATER_LIBS) $(TARGET_RECOVERY_UPDATER_EXTRA_LIBS) LOCAL_STATIC_LIBRARIES += libapplypatch libedify libmtdutils libminzip libz LOCAL_STATIC_LIBRARIES += libmincrypt libbz LOCAL_STATIC_LIBRARIES += libminelf LOCAL_STATIC_LIBRARIES += libcutils libstdc++ libc +LOCAL_STATIC_LIBRARIES += libselinux LOCAL_C_INCLUDES += $(LOCAL_PATH)/.. # Each library in TARGET_RECOVERY_UPDATER_LIBS should have a function diff --git a/updater/install.c b/updater/install.c index 41f053d01..19054236c 100644 --- a/updater/install.c +++ b/updater/install.c @@ -78,23 +78,19 @@ Value* MountFn(const char* name, State* state, int argc, Expr* argv[]) { goto done; } -#ifdef HAVE_SELINUX char *secontext = NULL; if (sehandle) { selabel_lookup(sehandle, &secontext, mount_point, 0755); setfscreatecon(secontext); } -#endif mkdir(mount_point, 0755); -#ifdef HAVE_SELINUX if (secontext) { freecon(secontext); setfscreatecon(NULL); } -#endif if (strcmp(partition_type, "MTD") == 0) { mtd_scan_partitions(); diff --git a/updater/updater.c b/updater/updater.c index 5f1580870..58ac27f9e 100644 --- a/updater/updater.c +++ b/updater/updater.c @@ -105,7 +105,6 @@ int main(int argc, char** argv) { return 6; } -#ifdef HAVE_SELINUX struct selinux_opt seopts[] = { { SELABEL_OPT_PATH, "/file_contexts" } }; @@ -116,7 +115,6 @@ int main(int argc, char** argv) { fprintf(stderr, "Warning: No file_contexts\n"); fprintf(cmd_pipe, "ui_print Warning: No file_contexts\n"); } -#endif // Evaluate the parsed script. diff --git a/updater/updater.h b/updater/updater.h index a00872ca4..d2e901141 100644 --- a/updater/updater.h +++ b/updater/updater.h @@ -20,12 +20,8 @@ #include <stdio.h> #include "minzip/Zip.h" -#ifdef HAVE_SELINUX #include <selinux/selinux.h> #include <selinux/label.h> -#else -struct selabel_handle; -#endif typedef struct { FILE* cmd_pipe; |