Move selinux dependencies out of header files.
Bug: http://b/27764900
Change-Id: Ib62a59edcb13054f40f514c404d32b87b14ed5f1
diff --git a/minzip/DirUtil.cpp b/minzip/DirUtil.cpp
index 823b6ed..e08e360 100644
--- a/minzip/DirUtil.cpp
+++ b/minzip/DirUtil.cpp
@@ -14,6 +14,8 @@
* limitations under the License.
*/
+#include "DirUtil.h"
+
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
@@ -26,7 +28,8 @@
#include <string>
-#include "DirUtil.h"
+#include <selinux/label.h>
+#include <selinux/selinux.h>
typedef enum { DMISSING, DDIR, DILLEGAL } DirStatus;
diff --git a/minzip/DirUtil.h b/minzip/DirUtil.h
index 85a0012..85b83c3 100644
--- a/minzip/DirUtil.h
+++ b/minzip/DirUtil.h
@@ -24,8 +24,7 @@
extern "C" {
#endif
-#include <selinux/selinux.h>
-#include <selinux/label.h>
+struct selabel_handle;
/* Like "mkdir -p", try to guarantee that all directories
* specified in path are present, creating as many directories
diff --git a/minzip/Zip.c b/minzip/Zip.c
index 0f89835..9f550f8 100644
--- a/minzip/Zip.c
+++ b/minzip/Zip.c
@@ -23,6 +23,9 @@
#undef NDEBUG // do this after including Log.h
#include <assert.h>
+#include <selinux/label.h>
+#include <selinux/selinux.h>
+
#define SORT_ENTRIES 1
/*
diff --git a/minzip/Zip.h b/minzip/Zip.h
index e6b19e1..c932c11 100644
--- a/minzip/Zip.h
+++ b/minzip/Zip.h
@@ -18,8 +18,7 @@
extern "C" {
#endif
-#include <selinux/selinux.h>
-#include <selinux/label.h>
+struct selabel_handle;
/*
* One entry in the Zip archive. Treat this as opaque -- use accessors below.
diff --git a/recovery.cpp b/recovery.cpp
index b5514a1..169413a 100644
--- a/recovery.cpp
+++ b/recovery.cpp
@@ -41,10 +41,11 @@
#include <android-base/stringprintf.h>
#include <cutils/android_reboot.h>
#include <cutils/properties.h>
+#include <healthd/BatteryMonitor.h>
#include <log/logger.h> /* Android Log packet format */
#include <private/android_logger.h> /* private pmsg functions */
-
-#include <healthd/BatteryMonitor.h>
+#include <selinux/label.h>
+#include <selinux/selinux.h>
#include "adb_install.h"
#include "bootloader.h"
diff --git a/updater/install.cpp b/updater/install.cpp
index bc4cca9..925604f 100644
--- a/updater/install.cpp
+++ b/updater/install.cpp
@@ -27,7 +27,6 @@
#include <unistd.h>
#include <fcntl.h>
#include <time.h>
-#include <selinux/selinux.h>
#include <ftw.h>
#include <sys/capability.h>
#include <sys/xattr.h>
@@ -40,6 +39,8 @@
#include <android-base/parseint.h>
#include <android-base/strings.h>
#include <android-base/stringprintf.h>
+#include <selinux/label.h>
+#include <selinux/selinux.h>
#include "bootloader.h"
#include "applypatch/applypatch.h"
diff --git a/updater/updater.cpp b/updater/updater.cpp
index 1693fa1..0497d6a 100644
--- a/updater/updater.cpp
+++ b/updater/updater.cpp
@@ -27,6 +27,9 @@
#include "minzip/SysUtil.h"
#include "config.h"
+#include <selinux/label.h>
+#include <selinux/selinux.h>
+
// Generated by the makefile, this function defines the
// RegisterDeviceExtensions() function, which calls all the
// registration functions for device-specific extensions.
diff --git a/updater/updater.h b/updater/updater.h
index d1dfdd0..d3a09b9 100644
--- a/updater/updater.h
+++ b/updater/updater.h
@@ -20,9 +20,6 @@
#include <stdio.h>
#include "minzip/Zip.h"
-#include <selinux/selinux.h>
-#include <selinux/label.h>
-
typedef struct {
FILE* cmd_pipe;
ZipArchive* package_zip;
@@ -32,6 +29,7 @@
size_t package_zip_len;
} UpdaterInfo;
+struct selabel_handle;
extern struct selabel_handle *sehandle;
#endif