[libselinux/f19] Fix patch that Handles substitutions for /

Daniel J Walsh dwalsh at fedoraproject.org
Mon May 6 13:44:12 UTC 2013


commit 72420cf777237ab77b42410dddac863456efac69
Author: Dan Walsh <dwalsh at redhat.com>
Date:   Mon May 6 09:44:09 2013 -0400

    Fix patch that Handles substitutions for /

 libselinux-rhat.patch |   24 ++++++++++++++++++++++++
 libselinux.spec       |    9 ++++++++-
 2 files changed, 32 insertions(+), 1 deletions(-)
---
diff --git a/libselinux-rhat.patch b/libselinux-rhat.patch
index 5042570..d19cc56 100644
--- a/libselinux-rhat.patch
+++ b/libselinux-rhat.patch
@@ -652,6 +652,30 @@ index b9e8002..355730a 100644
  }
  
  hidden_def(get_ordered_context_list)
+diff --git a/libselinux/src/label.c b/libselinux/src/label.c
+index 11f6e96..f5cb52a 100644
+--- a/libselinux/src/label.c
++++ b/libselinux/src/label.c
+@@ -43,12 +43,18 @@ static void selabel_subs_fini(struct selabel_sub *ptr)
+ static char *selabel_sub(struct selabel_sub *ptr, const char *src)
+ {
+ 	char *dst = NULL;
++	int len;
+ 
+ 	while (ptr) {
+ 		if (strncmp(src, ptr->src, ptr->slen) == 0 ) {
+ 			if (src[ptr->slen] == '/' || 
+ 			    src[ptr->slen] == 0) {
+-				if (asprintf(&dst, "%s%s", ptr->dst, &src[ptr->slen]) < 0)
++				if ((src[ptr->slen] == '/') && 
++				    (strcmp(ptr->dst, "/") == 0))
++					len = ptr->slen + 1;
++				else
++					len = ptr->slen;
++				if (asprintf(&dst, "%s%s", ptr->dst, &src[len]) < 0)
+ 					return NULL;
+ 				return dst;
+ 			}
 diff --git a/libselinux/src/label_file.c b/libselinux/src/label_file.c
 index 5f697f3..9b0d6b0 100644
 --- a/libselinux/src/label_file.c
diff --git a/libselinux.spec b/libselinux.spec
index 4a78de5..aad4bdc 100644
--- a/libselinux.spec
+++ b/libselinux.spec
@@ -10,7 +10,7 @@
 Summary: SELinux library and simple utilities
 Name: libselinux
 Version: 2.1.13
-Release: 13%{?dist}
+Release: 15%{?dist}
 License: Public Domain
 Group: System Environment/Libraries
 Source: %{name}-%{version}.tgz
@@ -241,6 +241,13 @@ rm -rf %{buildroot}
 %{ruby_sitearch}/selinux.so
 
 %changelog
+* Mon May 6 2013 Dan Walsh <dwalsh at redhat.com> - 2.1.13-15
+- Fix patch that Handles substitutions for /
+
+* Wed Apr 17 2013 Dan Walsh <dwalsh at redhat.com> - 2.1.13-14
+- Handle substitutions for /
+- semanage fcontext -a -e  / /opt/rh/devtoolset-2/root
+
 * Tue Apr 9 2013 Dan Walsh <dwalsh at redhat.com> - 2.1.13-13
 - Add Eric Paris patch to fix procattr calls after a fork.
 


More information about the scm-commits mailing list