am bef08b8d
: Merge "Handle policy reloads within installd rather than restarting it."
* commit 'bef08b8d1b30976ff273fc9041bc8d934f52fea9': Handle policy reloads within installd rather than restarting it.
This commit is contained in:
commit
651dc7440b
@ -16,6 +16,8 @@
|
||||
|
||||
#include <sys/capability.h>
|
||||
#include <linux/prctl.h>
|
||||
#include <selinux/android.h>
|
||||
#include <selinux/avc.h>
|
||||
|
||||
#include "installd.h"
|
||||
|
||||
@ -526,6 +528,7 @@ int main(const int argc, const char *argv[]) {
|
||||
struct sockaddr addr;
|
||||
socklen_t alen;
|
||||
int lsocket, s, count;
|
||||
int selinux_enabled = (is_selinux_enabled() > 0);
|
||||
|
||||
ALOGI("installd firing up\n");
|
||||
|
||||
@ -539,6 +542,11 @@ int main(const int argc, const char *argv[]) {
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if (selinux_enabled && selinux_status_open(true) < 0) {
|
||||
ALOGE("Could not open selinux status; exiting.\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
drop_privileges();
|
||||
|
||||
lsocket = android_get_control_socket(SOCKET_PATH);
|
||||
@ -577,6 +585,9 @@ int main(const int argc, const char *argv[]) {
|
||||
break;
|
||||
}
|
||||
buf[count] = 0;
|
||||
if (selinux_enabled && selinux_status_updated() > 0) {
|
||||
selinux_android_seapp_context_reload();
|
||||
}
|
||||
if (execute(s, buf)) break;
|
||||
}
|
||||
ALOGI("closing connection\n");
|
||||
|
Loading…
Reference in New Issue
Block a user