forked from pool/libsemanage
Accepting request 139192 from home:vitezslav_cizek:branches:security:SELinux
- when building "standard" (not MCS/MLS) selinux-policies, libsemanage will crash, because "level" is NULL (libsemanage-2.1.6-NULL_level_fix.patch) OBS-URL: https://build.opensuse.org/request/show/139192 OBS-URL: https://build.opensuse.org/package/show/security:SELinux/libsemanage?expand=0&rev=37
This commit is contained in:
parent
6a94fb1241
commit
d35140335c
37
libsemanage-2.1.6-NULL_level_fix.patch
Normal file
37
libsemanage-2.1.6-NULL_level_fix.patch
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
From 64aff2c80f28280724f64628d6bf4c4722b4f75f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Xin Ouyang <xinpascal@gmail.com>
|
||||||
|
Date: Thu, 12 Jan 2012 16:58:34 +0800
|
||||||
|
Subject: [PATCH] libsemanage: Fix segfault for building standard policies.
|
||||||
|
|
||||||
|
If you are building "standard" policies(not MCS/MLS), libsemanage
|
||||||
|
will crash, which caused by strdup() to "level" NULL pointers.
|
||||||
|
For example, semodule -s refpolicy -b base.pp -i a.pp
|
||||||
|
---
|
||||||
|
libsemanage/src/genhomedircon.c | 4 ++++
|
||||||
|
1 files changed, 4 insertions(+), 0 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/libsemanage/src/genhomedircon.c b/libsemanage/src/genhomedircon.c
|
||||||
|
index d2646ae..262a6cd 100644
|
||||||
|
--- a/libsemanage/src/genhomedircon.c
|
||||||
|
+++ b/libsemanage/src/genhomedircon.c
|
||||||
|
@@ -778,6 +778,8 @@ static int setup_fallback_user(genhomedircon_settings_t * s)
|
||||||
|
{
|
||||||
|
prefix = semanage_user_get_prefix(u);
|
||||||
|
level = semanage_user_get_mlslevel(u);
|
||||||
|
+ if (level == NULL)
|
||||||
|
+ level = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (set_fallback_user(s, seuname, prefix, level) != 0)
|
||||||
|
@@ -861,6 +863,8 @@ static genhomedircon_user_entry_t *get_users(genhomedircon_settings_t * s,
|
||||||
|
if (u) {
|
||||||
|
prefix = semanage_user_get_prefix(*u);
|
||||||
|
level = semanage_user_get_mlslevel(*u);
|
||||||
|
+ if (level == NULL)
|
||||||
|
+ level = "";
|
||||||
|
} else {
|
||||||
|
prefix = name;
|
||||||
|
level = "s0";
|
||||||
|
--
|
||||||
|
1.7.7.3
|
||||||
|
|
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Oct 24 16:36:25 UTC 2012 - vcizek@suse.com
|
||||||
|
|
||||||
|
- when building "standard" (not MCS/MLS) selinux-policies,
|
||||||
|
libsemanage will crash, because "level" is NULL
|
||||||
|
(libsemanage-2.1.6-NULL_level_fix.patch)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Aug 27 13:49:45 UTC 2012 - cfarrell@suse.com
|
Mon Aug 27 13:49:45 UTC 2012 - cfarrell@suse.com
|
||||||
|
|
||||||
|
@ -32,6 +32,7 @@ Group: System/Libraries
|
|||||||
Url: http://userspace.selinuxproject.org/
|
Url: http://userspace.selinuxproject.org/
|
||||||
Source: http://userspace.selinuxproject.org/releases/20120216/%{name}-%{version}.tar.gz
|
Source: http://userspace.selinuxproject.org/releases/20120216/%{name}-%{version}.tar.gz
|
||||||
Source1: baselibs.conf
|
Source1: baselibs.conf
|
||||||
|
Patch: libsemanage-2.1.6-NULL_level_fix.patch
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
%define debug_package_requires libsemanage1 = %{version}-%{release}
|
%define debug_package_requires libsemanage1 = %{version}-%{release}
|
||||||
|
|
||||||
@ -93,6 +94,7 @@ needed for developing applications that manipulate binary policies.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch -p2
|
||||||
|
|
||||||
%build
|
%build
|
||||||
make clean
|
make clean
|
||||||
|
@ -18,8 +18,8 @@
|
|||||||
|
|
||||||
BuildRequires: bison
|
BuildRequires: bison
|
||||||
BuildRequires: flex
|
BuildRequires: flex
|
||||||
BuildRequires: libselinux-devel
|
|
||||||
BuildRequires: libbz2-devel
|
BuildRequires: libbz2-devel
|
||||||
|
BuildRequires: libselinux-devel
|
||||||
BuildRequires: libsepol-devel
|
BuildRequires: libsepol-devel
|
||||||
BuildRequires: libustr-devel
|
BuildRequires: libustr-devel
|
||||||
BuildRequires: python-devel
|
BuildRequires: python-devel
|
||||||
|
Loading…
Reference in New Issue
Block a user