blob: 56611d6936e4e43da4c89b1092cc87493629baae
1 | /* |
2 | * getenforce |
3 | * |
4 | * Based on libselinux 1.33.1 |
5 | * Port to BusyBox Hiroshi Shinji <shiroshi@my.email.ne.jp> |
6 | * |
7 | * Licensed under GPLv2, see file LICENSE in this source tree. |
8 | */ |
9 | |
10 | //usage:#define getenforce_trivial_usage NOUSAGE_STR |
11 | //usage:#define getenforce_full_usage "" |
12 | |
13 | #include "libbb.h" |
14 | |
15 | int getenforce_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; |
16 | int getenforce_main(int argc UNUSED_PARAM, char **argv UNUSED_PARAM) |
17 | { |
18 | int rc; |
19 | |
20 | rc = is_selinux_enabled(); |
21 | if (rc < 0) |
22 | bb_error_msg_and_die("is_selinux_enabled() failed"); |
23 | |
24 | if (rc == 1) { |
25 | rc = security_getenforce(); |
26 | if (rc < 0) |
27 | bb_error_msg_and_die("getenforce() failed"); |
28 | |
29 | if (rc) |
30 | puts("Enforcing"); |
31 | else |
32 | puts("Permissive"); |
33 | } else { |
34 | puts("Disabled"); |
35 | } |
36 | |
37 | return 0; |
38 | } |
39 |