From 2bfbe603e115b5da7029aae729b5b0332a877405 Mon Sep 17 00:00:00 2001 From: Dan Walsh Date: Mon, 16 Sep 2013 17:29:19 -0400 Subject: [PATCH] Fix handling of libselinux getconlist with only one entry --- libselinux-rhat.patch | 11 +++++++---- libselinux.spec | 5 ++++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/libselinux-rhat.patch b/libselinux-rhat.patch index a607fa7..56fbf36 100644 --- a/libselinux-rhat.patch +++ b/libselinux-rhat.patch @@ -706,7 +706,7 @@ index 802a07f..6ff83a7 100644 } diff --git a/libselinux/src/get_context_list.c b/libselinux/src/get_context_list.c -index b9e8002..355730a 100644 +index b9e8002..1d91123 100644 --- a/libselinux/src/get_context_list.c +++ b/libselinux/src/get_context_list.c @@ -426,7 +426,7 @@ int get_ordered_context_list(const char *user, @@ -727,8 +727,11 @@ index b9e8002..355730a 100644 snprintf(fname, fname_len, "%s%s", user_contexts_path, user); fp = fopen(fname, "r"); if (fp) { -@@ -465,31 +465,28 @@ int get_ordered_context_list(const char *user, +@@ -463,33 +463,31 @@ int get_ordered_context_list(const char *user, + __FUNCTION__, selinux_default_context_path()); + /* Fall through */ } ++ rc = 0; } + if (!nordered) @@ -764,7 +767,7 @@ index b9e8002..355730a 100644 - to the caller. Otherwise, fall back to the entire reachable list. */ - if (nordered && nordered < nreach) { + /* Only report the ordered entries to the caller. */ -+ if (nordered < nreach) { ++ if (nordered <= nreach) { for (i = nordered; i < nreach; i++) free(reachable[i]); reachable[nordered] = NULL; @@ -774,7 +777,7 @@ index b9e8002..355730a 100644 } out: -@@ -523,14 +520,6 @@ int get_ordered_context_list(const char *user, +@@ -523,14 +521,6 @@ int get_ordered_context_list(const char *user, } rc = 1; /* one context in the list */ goto out; diff --git a/libselinux.spec b/libselinux.spec index c6fa792..0699ca3 100644 --- a/libselinux.spec +++ b/libselinux.spec @@ -10,7 +10,7 @@ Summary: SELinux library and simple utilities Name: libselinux Version: 2.1.13 -Release: 18%{?dist} +Release: 19%{?dist} License: Public Domain Group: System Environment/Libraries Source: %{name}-%{version}.tgz @@ -240,6 +240,9 @@ rm -rf %{buildroot} %{ruby_sitearch}/selinux.so %changelog +* Mon Sep 16 2013 Dan Walsh - 2.1.13-19 +- Fix handling of libselinux getconlist with only one entry + * Tue Sep 3 2013 Dan Walsh - 2.1.13-17 - Add Python constants for SELinux enforcing modes