selinux fixes by KaiGai Kohei <kaigai@kaigai.gr.jp>

This commit is contained in:
Denis Vlasenko 2007-02-07 22:08:42 +00:00
parent 710694f0e5
commit 8c6c6e955b
5 changed files with 11 additions and 9 deletions

View File

@ -8,6 +8,7 @@
#include "busybox.h" #include "busybox.h"
int getenforce_main(int argc, char **argv);
int getenforce_main(int argc, char **argv) int getenforce_main(int argc, char **argv)
{ {
int rc; int rc;

View File

@ -8,6 +8,7 @@
#include "busybox.h" #include "busybox.h"
int getsebool_main(int argc, char **argv);
int getsebool_main(int argc, char **argv) int getsebool_main(int argc, char **argv)
{ {
int i, rc = 0, active, pending, len = 0; int i, rc = 0, active, pending, len = 0;

View File

@ -29,6 +29,7 @@ static int print_matchpathcon(char *path, int noprint)
#define OPT_PREFIX (1<<3) /* -p */ #define OPT_PREFIX (1<<3) /* -p */
#define OPT_VERIFY (1<<4) /* -V */ #define OPT_VERIFY (1<<4) /* -V */
int matchpathcon_main(int argc, char **argv);
int matchpathcon_main(int argc, char **argv) int matchpathcon_main(int argc, char **argv)
{ {
int error = 0; int error = 0;
@ -41,7 +42,7 @@ int matchpathcon_main(int argc, char **argv)
argv += optind; argv += optind;
if (opts & OPT_NOT_TRANS) { if (opts & OPT_NOT_TRANS) {
set_matchpathcon_flags(NOTRANS); set_matchpathcon_flags(MATCHPATHCON_NOTRANS);
} }
if (opts & OPT_FCONTEXT) { if (opts & OPT_FCONTEXT) {
if (matchpathcon_init(fcontext)) if (matchpathcon_init(fcontext))
@ -57,7 +58,7 @@ int matchpathcon_main(int argc, char **argv)
int rc; int rc;
if (!(opts & OPT_VERIFY)) { if (!(opts & OPT_VERIFY)) {
error += print_matchpathcon(path, opt & OPT_NOT_PRINT); error += print_matchpathcon(path, opts & OPT_NOT_PRINT);
continue; continue;
} }

View File

@ -7,6 +7,7 @@
*/ */
#include "busybox.h" #include "busybox.h"
int selinuxenabled_main(int argc, char **argv);
int selinuxenabled_main(int argc, char **argv) int selinuxenabled_main(int argc, char **argv)
{ {
return !is_selinux_enabled(); return !is_selinux_enabled();

View File

@ -8,12 +8,9 @@
#include "busybox.h" #include "busybox.h"
static const smallint setenforce_mode[] = { /* These strings are arranged so that odd ones
0, * result in security_setenforce(1) being done,
1, * the rest will do security_setenforce(0) */
0,
1,
};
static const char *const setenforce_cmd[] = { static const char *const setenforce_cmd[] = {
"0", "0",
"1", "1",
@ -22,6 +19,7 @@ static const char *const setenforce_cmd[] = {
NULL, NULL,
}; };
int setenforce_main(int argc, char **argv);
int setenforce_main(int argc, char **argv) int setenforce_main(int argc, char **argv)
{ {
int i, rc; int i, rc;
@ -34,7 +32,7 @@ int setenforce_main(int argc, char **argv)
for (i = 0; setenforce_cmd[i]; i++) { for (i = 0; setenforce_cmd[i]; i++) {
if (strcasecmp(argv[1], setenforce_cmd[i]) != 0) if (strcasecmp(argv[1], setenforce_cmd[i]) != 0)
continue; continue;
rc = security_setenforce(setenforce_mode[i]); rc = security_setenforce(i & 1);
if (rc < 0) if (rc < 0)
bb_perror_msg_and_die("setenforce() failed"); bb_perror_msg_and_die("setenforce() failed");
return 0; return 0;