From 37bc4557e321494fb1fdc4b4883fc2d77ba65784 Mon Sep 17 00:00:00 2001 From: Daniel J Walsh Date: Nov 08 2005 19:09:28 +0000 Subject: - Don't strip mls context if selinux is not enabled. --- diff --git a/libselinux-rhat.patch b/libselinux-rhat.patch index 9599ffb..a4e6c43 100644 --- a/libselinux-rhat.patch +++ b/libselinux-rhat.patch @@ -1,85 +1,12 @@ -diff --exclude-from=exclude -N -u -r nsalibselinux/include/selinux/selinux.h libselinux-1.27.14/include/selinux/selinux.h ---- nsalibselinux/include/selinux/selinux.h 2005-10-25 15:15:53.000000000 -0400 -+++ libselinux-1.27.14/include/selinux/selinux.h 2005-10-25 17:54:34.000000000 -0400 -@@ -359,6 +359,7 @@ - extern const char *selinux_customizable_types_path(void); - extern const char *selinux_users_path(void); - extern const char *selinux_usersconf_path(void); -+extern const char *selinux_translations_path(void); - extern const char *selinux_path(void); - - /* Check a permission in the passwd class. -diff --exclude-from=exclude -N -u -r nsalibselinux/src/file_path_suffixes.h libselinux-1.27.14/src/file_path_suffixes.h ---- nsalibselinux/src/file_path_suffixes.h 2005-10-25 15:15:53.000000000 -0400 -+++ libselinux-1.27.14/src/file_path_suffixes.h 2005-10-25 17:53:04.000000000 -0400 -@@ -13,3 +13,4 @@ - S_(CUSTOMIZABLE_TYPES, "/contexts/customizable_types") - S_(USERS_DIR, "/users/") - S_(SEUSERS, "/seusers") -+S_(TRANSLATIONS, "/setrans.conf") -diff --exclude-from=exclude -N -u -r nsalibselinux/src/selinux_config.c libselinux-1.27.14/src/selinux_config.c ---- nsalibselinux/src/selinux_config.c 2005-10-25 15:15:53.000000000 -0400 -+++ libselinux-1.27.14/src/selinux_config.c 2005-10-26 15:58:29.000000000 -0400 -@@ -32,7 +32,8 @@ - #define CUSTOMIZABLE_TYPES 11 - #define USERS_DIR 12 - #define SEUSERS 13 --#define NEL 14 -+#define TRANSLATIONS 14 -+#define NEL 15 - - /* New layout is relative to SELINUXDIR/policytype. */ - static char *file_paths[NEL]; -@@ -192,7 +193,9 @@ - } - free(line_buf); - fclose(fp); -- } -+ } -+ else -+ return; - - for (i = 0; i < NEL; i++) { - len = rootlen + strlen(file_path_suffixes_data.str -@@ -303,10 +306,16 @@ - const char *selinux_users_path() { - return get_path(USERS_DIR); - } -+hidden_def(selinux_users_path) -+ - const char *selinux_usersconf_path() { - return get_path(SEUSERS); - } -- --hidden_def(selinux_users_path) - hidden_def(selinux_usersconf_path) - -+const char *selinux_translations_path() -+{ -+ return get_path(TRANSLATIONS); -+} -+hidden_def(selinux_translations_path) -+ -diff --exclude-from=exclude -N -u -r nsalibselinux/src/selinux_internal.h libselinux-1.27.14/src/selinux_internal.h ---- nsalibselinux/src/selinux_internal.h 2005-10-25 15:15:53.000000000 -0400 -+++ libselinux-1.27.14/src/selinux_internal.h 2005-10-25 18:01:47.000000000 -0400 -@@ -60,6 +60,7 @@ - hidden_proto(matchpathcon_init) - hidden_proto(selinux_users_path) - hidden_proto(selinux_usersconf_path); -+hidden_proto(selinux_translations_path); - hidden_proto(selinux_getenforcemode); - - extern int context_translations hidden; -diff --exclude-from=exclude -N -u -r nsalibselinux/src/seusers.c libselinux-1.27.14/src/seusers.c ---- nsalibselinux/src/seusers.c 2005-10-17 13:42:38.000000000 -0400 -+++ libselinux-1.27.14/src/seusers.c 2005-10-26 16:13:53.000000000 -0400 -@@ -115,7 +115,7 @@ - if (!strcmp(username, name)) - break; - -- if (!defaultseuser && !strcmp(username,"default")) { -+ if (!defaultseuser && !strcmp(username,"__default__")) { - free(username); - defaultseuser = seuser; - defaultlevel = level; +diff --exclude-from=exclude -N -u -r nsalibselinux/src/matchpathcon.c libselinux-1.27.19/src/matchpathcon.c +--- nsalibselinux/src/matchpathcon.c 2005-10-06 09:20:38.000000000 -0400 ++++ libselinux-1.27.19/src/matchpathcon.c 2005-11-08 14:04:09.000000000 -0500 +@@ -605,7 +605,7 @@ + unsigned int lineno, pass, i, j, maxnspec; + spec_t *spec_copy=NULL; + int status=-1; +- int mls_enabled=is_selinux_mls_enabled(); ++ int mls_enabled=is_selinux_mls_enabled() && ( is_selinux_enabled() > 0 ); + + /* Open the specification file. */ + if (!path) diff --git a/libselinux.spec b/libselinux.spec index c97c856..3e41868 100644 --- a/libselinux.spec +++ b/libselinux.spec @@ -2,10 +2,11 @@ Summary: SELinux library and simple utilities Name: libselinux Version: 1.27.19 -Release: 1 +Release: 2 License: Public domain (uncopyrighted) Group: System Environment/Libraries Source: http://www.nsa.gov/selinux/archives/%{name}-%{version}.tgz +Patch : libselinux-rhat.patch Prereq: libsetrans Requires: libsepol >= %{libsepolver} @@ -38,6 +39,7 @@ needed for developing SELinux applications. %prep %setup -q +%patch -p1 -b .rhat %build make CFLAGS="-g %{optflags}" @@ -90,6 +92,9 @@ exit 0 %{_mandir}/man8/* %changelog +* Tue Nov 8 2005 Dan Walsh 1.27.19-2 +- Don't strip mls context if selinux is not enabled. + * Mon Nov 7 2005 Dan Walsh 1.27.19-1 - Update to latest from NSA * Merged seusers parser changes from Ivan Gyurdiev.