1f074036424618c130dacb3464465a8b40bffef5Stephen Smalley#ifndef _SELINUX_ANDROID_H_ 2f074036424618c130dacb3464465a8b40bffef5Stephen Smalley#define _SELINUX_ANDROID_H_ 3f074036424618c130dacb3464465a8b40bffef5Stephen Smalley 4f074036424618c130dacb3464465a8b40bffef5Stephen Smalley#include <sys/types.h> 5f074036424618c130dacb3464465a8b40bffef5Stephen Smalley#include <unistd.h> 6f074036424618c130dacb3464465a8b40bffef5Stephen Smalley 7047228a2a446603b21daf5116b830390d0642274Stephen Smalley#include <selinux/label.h> 8047228a2a446603b21daf5116b830390d0642274Stephen Smalley 9f074036424618c130dacb3464465a8b40bffef5Stephen Smalley#ifdef __cplusplus 10f074036424618c130dacb3464465a8b40bffef5Stephen Smalleyextern "C" { 11f074036424618c130dacb3464465a8b40bffef5Stephen Smalley#endif 12f074036424618c130dacb3464465a8b40bffef5Stephen Smalley 139b10083ab40e78cce8cc2b940ce22db6d1095fc5rpcraigextern struct selabel_handle* selinux_android_file_context_handle(void); 149b10083ab40e78cce8cc2b940ce22db6d1095fc5rpcraig 15f1724a371be1678ebf79474ab9a390dd6a5c96c7rpcraigextern int selinux_android_load_policy(void); 16f1724a371be1678ebf79474ab9a390dd6a5c96c7rpcraig 17f1724a371be1678ebf79474ab9a390dd6a5c96c7rpcraigextern int selinux_android_reload_policy(void); 18f1724a371be1678ebf79474ab9a390dd6a5c96c7rpcraig 19f074036424618c130dacb3464465a8b40bffef5Stephen Smalleyextern int selinux_android_setcontext(uid_t uid, 20f074036424618c130dacb3464465a8b40bffef5Stephen Smalley int isSystemServer, 21f074036424618c130dacb3464465a8b40bffef5Stephen Smalley const char *seinfo, 22f074036424618c130dacb3464465a8b40bffef5Stephen Smalley const char *name); 23f074036424618c130dacb3464465a8b40bffef5Stephen Smalley 24f074036424618c130dacb3464465a8b40bffef5Stephen Smalleyextern int selinux_android_setfilecon(const char *pkgdir, 25edfaad87e34e7a5bb691d45fd6df3e0b5ad0bb1aStephen Smalley const char *pkgname, 26f074036424618c130dacb3464465a8b40bffef5Stephen Smalley uid_t uid); 27f074036424618c130dacb3464465a8b40bffef5Stephen Smalley 28edfaad87e34e7a5bb691d45fd6df3e0b5ad0bb1aStephen Smalleyextern int selinux_android_setfilecon2(const char *pkgdir, 29edfaad87e34e7a5bb691d45fd6df3e0b5ad0bb1aStephen Smalley const char *pkgname, 30edfaad87e34e7a5bb691d45fd6df3e0b5ad0bb1aStephen Smalley const char *seinfo, 31edfaad87e34e7a5bb691d45fd6df3e0b5ad0bb1aStephen Smalley uid_t uid); 32edfaad87e34e7a5bb691d45fd6df3e0b5ad0bb1aStephen Smalley 330ca91b300c711079816fa67b4148cac3cd1eef8cStephen Smalleyextern int selinux_android_restorecon(const char *file); 340ca91b300c711079816fa67b4148cac3cd1eef8cStephen Smalley 357446c917148c778315e511ad5c990492d3c8cdb8Stephen Smalleyextern int selinux_android_seapp_context_reload(void); 367446c917148c778315e511ad5c990492d3c8cdb8Stephen Smalley 37f074036424618c130dacb3464465a8b40bffef5Stephen Smalley#ifdef __cplusplus 38f074036424618c130dacb3464465a8b40bffef5Stephen Smalley} 39f074036424618c130dacb3464465a8b40bffef5Stephen Smalley#endif 40f074036424618c130dacb3464465a8b40bffef5Stephen Smalley#endif 41