aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2007-09-26 18:01:32 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2007-09-26 18:01:32 +0000
commitb042bd95143dbf84ddee08ee20a3845e003df1de (patch)
treebea43f903e4f3a53dab0d2d2f53c19f1b6962249
parentdd5e11bb053e8dd278662b1ba69d04b6c5d9b3ff (diff)
downloadbusybox-w32-b042bd95143dbf84ddee08ee20a3845e003df1de.tar.gz
busybox-w32-b042bd95143dbf84ddee08ee20a3845e003df1de.tar.bz2
busybox-w32-b042bd95143dbf84ddee08ee20a3845e003df1de.zip
load_policy: update (Yuichi Nakamura <ynakam@hitachisoft.jp>)
-rw-r--r--include/usage.h4
-rw-r--r--selinux/load_policy.c19
2 files changed, 7 insertions, 16 deletions
diff --git a/include/usage.h b/include/usage.h
index b028f5a5c..4152fecd3 100644
--- a/include/usage.h
+++ b/include/usage.h
@@ -1813,8 +1813,8 @@
1813 "$ ls -l /tmp/ls\n" \ 1813 "$ ls -l /tmp/ls\n" \
1814 "lrwxrwxrwx 1 root root 7 Apr 12 18:39 ls -> BusyBox*\n" 1814 "lrwxrwxrwx 1 root root 7 Apr 12 18:39 ls -> BusyBox*\n"
1815 1815
1816#define load_policy_trivial_usage \ 1816#define load_policy_trivial_usage
1817 "[FILE]" 1817
1818#define load_policy_full_usage 1818#define load_policy_full_usage
1819 1819
1820#define loadfont_trivial_usage \ 1820#define loadfont_trivial_usage \
diff --git a/selinux/load_policy.c b/selinux/load_policy.c
index 5d140bc96..add5c662c 100644
--- a/selinux/load_policy.c
+++ b/selinux/load_policy.c
@@ -1,6 +1,5 @@
1/* 1/*
2 * load_policy 2 * load_policy
3 * This implementation is based on old load_policy to be small.
4 * Author: Yuichi Nakamura <ynakam@hitachisoft.jp> 3 * Author: Yuichi Nakamura <ynakam@hitachisoft.jp>
5 */ 4 */
6#include "libbb.h" 5#include "libbb.h"
@@ -8,22 +7,14 @@
8int load_policy_main(int argc, char **argv); 7int load_policy_main(int argc, char **argv);
9int load_policy_main(int argc, char **argv) 8int load_policy_main(int argc, char **argv)
10{ 9{
11 int fd; 10 int rc;
12 struct stat st; 11
13 void *data; 12 if (argc != 1) {
14 if (argc != 2) {
15 bb_show_usage(); 13 bb_show_usage();
16 } 14 }
17 15
18 fd = xopen(argv[1], O_RDONLY); 16 rc = selinux_mkload_policy(1);
19 if (fstat(fd, &st) < 0) { 17 if (rc < 0) {
20 bb_perror_msg_and_die("can't fstat");
21 }
22 data = mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, fd, 0);
23 if (data == MAP_FAILED) {
24 bb_perror_msg_and_die("can't mmap");
25 }
26 if (security_load_policy(data, st.st_size) < 0) {
27 bb_perror_msg_and_die("can't load policy"); 18 bb_perror_msg_and_die("can't load policy");
28 } 19 }
29 20