diff --git a/jni/Android.mk b/jni/Android.mk index 5f5f876b0..43dfe1582 100644 --- a/jni/Android.mk +++ b/jni/Android.mk @@ -6,10 +6,7 @@ LOCAL_STATIC_LIBRARIES := libsepol LOCAL_SHARED_LIBRARIES := libsqlite libselinux LOCAL_C_INCLUDES := \ - $(LOCAL_PATH)/utils \ - $(LOCAL_PATH)/daemon \ - $(LOCAL_PATH)/resetprop \ - $(LOCAL_PATH)/magiskpolicy \ + $(LOCAL_PATH)/include \ $(LOCAL_PATH)/external \ $(LOCAL_PATH)/selinux/libsepol/include diff --git a/jni/daemon/daemon.c b/jni/daemon/daemon.c index 700771cf5..51bcca0db 100644 --- a/jni/daemon/daemon.c +++ b/jni/daemon/daemon.c @@ -96,7 +96,7 @@ static int setup_socket(struct sockaddr_un *sun) { int fd = xsocket(AF_LOCAL, SOCK_STREAM | SOCK_CLOEXEC, 0); memset(sun, 0, sizeof(*sun)); sun->sun_family = AF_LOCAL; - memcpy(sun->sun_path, REQUESTOR_DAEMON_PATH, REQUESTOR_DAEMON_PATH_LEN); + memcpy(sun->sun_path, REQUESTOR_DAEMON_PATH, sizeof(REQUESTOR_DAEMON_PATH) - 1); return fd; } diff --git a/jni/daemon/daemon.h b/jni/include/daemon.h similarity index 100% rename from jni/daemon/daemon.h rename to jni/include/daemon.h diff --git a/jni/utils/list.h b/jni/include/list.h similarity index 100% rename from jni/utils/list.h rename to jni/include/list.h diff --git a/jni/magisk.h b/jni/include/magisk.h similarity index 98% rename from jni/magisk.h rename to jni/include/magisk.h index 9931becb1..510d51a3b 100644 --- a/jni/magisk.h +++ b/jni/include/magisk.h @@ -10,13 +10,11 @@ #include #include -#define MAGISK_VER_STR xstr(MAGISK_VERSION) ":MAGISK" - #define str(a) #a #define xstr(a) str(a) +#define MAGISK_VER_STR xstr(MAGISK_VERSION) ":MAGISK" #define REQUESTOR_DAEMON_PATH "\0MAGISK" -#define REQUESTOR_DAEMON_PATH_LEN 7 #define LOG_TAG "Magisk" diff --git a/jni/include/magiskpolicy.h b/jni/include/magiskpolicy.h new file mode 100644 index 000000000..062e0bb03 --- /dev/null +++ b/jni/include/magiskpolicy.h @@ -0,0 +1,36 @@ +/* magiskpolicy.h - Public API for policy patching + */ + +#ifndef _MAGISKPOLICY_H +#define _MAGISKPOLICY_H + +#include + +#define ALL NULL + +// policydb functions +int load_policydb(const char *filename); +int dump_policydb(const char *filename); +void destroy_policydb(); + +// Handy functions +int sepol_allow(char *s, char *t, char *c, char *p); +int sepol_deny(char *s, char *t, char *c, char *p); +int sepol_auditallow(char *s, char *t, char *c, char *p); +int sepol_auditdeny(char *s, char *t, char *c, char *p); +int sepol_typetrans(char *s, char *t, char *c, char *d, char *o); +int sepol_allowxperm(char *s, char *t, char *c, char *range); +int sepol_auditallowxperm(char *s, char *t, char *c, char *range); +int sepol_dontauditxperm(char *s, char *t, char *c, char *range); +int sepol_create(char *s); +int sepol_permissive(char *s); +int sepol_enforce(char *s); +int sepol_attradd(char *s, char *a); +int sepol_exists(char *source); + +// Built in rules +void sepol_min_rules(); +void sepol_med_rules(); +void sepol_full_rules(); + +#endif diff --git a/jni/resetprop/resetprop.h b/jni/include/resetprop.h similarity index 100% rename from jni/resetprop/resetprop.h rename to jni/include/resetprop.h diff --git a/jni/utils/utils.h b/jni/include/utils.h similarity index 100% rename from jni/utils/utils.h rename to jni/include/utils.h diff --git a/jni/utils/vector.h b/jni/include/vector.h similarity index 100% rename from jni/utils/vector.h rename to jni/include/vector.h diff --git a/jni/magiskboot/Android.mk b/jni/magiskboot/Android.mk index 368948f1e..bf83929f6 100644 --- a/jni/magiskboot/Android.mk +++ b/jni/magiskboot/Android.mk @@ -4,7 +4,8 @@ include $(CLEAR_VARS) LOCAL_MODULE := magiskboot LOCAL_STATIC_LIBRARIES := libz liblzma liblz4 libbz2 LOCAL_C_INCLUDES := \ - jni/utils \ + $(LOCAL_PATH) \ + jni/include \ jni/ndk-compression/zlib/ \ jni/ndk-compression/xz/src/liblzma/api/ \ jni/ndk-compression/lz4/lib/ \ diff --git a/jni/magiskpolicy b/jni/magiskpolicy index c1c6f55f8..a0be47ab8 160000 --- a/jni/magiskpolicy +++ b/jni/magiskpolicy @@ -1 +1 @@ -Subproject commit c1c6f55f8f51cd24b5f926059e32d4a70a422430 +Subproject commit a0be47ab8b2e1d7778a73a5b5a8122b1881368b5