123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- /*
- * getenforce
- *
- * Based on libselinux 1.33.1
- * Port to BusyBox Hiroshi Shinji <shiroshi@my.email.ne.jp>
- *
- * Licensed under GPLv2, see file LICENSE in this source tree.
- */
- //config:config GETENFORCE
- //config: bool "getenforce"
- //config: default n
- //config: depends on SELINUX
- //config: help
- //config: Enable support to get the current mode of SELinux.
- //applet:IF_GETENFORCE(APPLET(getenforce, BB_DIR_USR_SBIN, BB_SUID_DROP))
- //kbuild:lib-$(CONFIG_GETENFORCE) += getenforce.o
- //usage:#define getenforce_trivial_usage NOUSAGE_STR
- //usage:#define getenforce_full_usage ""
- #include "libbb.h"
- int getenforce_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
- int getenforce_main(int argc UNUSED_PARAM, char **argv UNUSED_PARAM)
- {
- int rc;
- rc = is_selinux_enabled();
- if (rc < 0)
- bb_error_msg_and_die("is_selinux_enabled() failed");
- if (rc == 1) {
- rc = security_getenforce();
- if (rc < 0)
- bb_error_msg_and_die("getenforce() failed");
- if (rc)
- puts("Enforcing");
- else
- puts("Permissive");
- } else {
- puts("Disabled");
- }
- return 0;
- }
|