From 7d48098c805301f16727dacf855f391a13e7f140 Mon Sep 17 00:00:00 2001 From: Xin Ouyang Date: Tue, 27 Mar 2012 17:25:28 +0800 Subject: libsemanage: Patch to fix segfaults on Ubuntu. --- ...ibsemanage-Fix-execve-segfaults-on-Ubuntu.patch | 30 ++++++++++++++++++++++ recipes-security/selinux/libsemanage_2.1.6.bb | 1 + 2 files changed, 31 insertions(+) create mode 100644 recipes-security/selinux/libsemanage/libsemanage-Fix-execve-segfaults-on-Ubuntu.patch diff --git a/recipes-security/selinux/libsemanage/libsemanage-Fix-execve-segfaults-on-Ubuntu.patch b/recipes-security/selinux/libsemanage/libsemanage-Fix-execve-segfaults-on-Ubuntu.patch new file mode 100644 index 0000000..5198124 --- /dev/null +++ b/recipes-security/selinux/libsemanage/libsemanage-Fix-execve-segfaults-on-Ubuntu.patch @@ -0,0 +1,30 @@ +From 35aa581aa734d8d93dc5e08bc02d32fa3b50fae2 Mon Sep 17 00:00:00 2001 +From: Xin Ouyang +Date: Mon, 26 Mar 2012 15:15:16 +0800 +Subject: [PATCH] libsemanage: Fix execve segfaults on Ubuntu. + +semanage_exec_prog() has pass NULL as param 2 to call execve(), +this may cause segfaults on Ubuntu. +Such as "make load" while building refpolicy. + +http://oss.tresys.com/pipermail/refpolicy/2011-December/004859.html +--- + src/semanage_store.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/semanage_store.c b/src/semanage_store.c +index a223aa7..c0af87d 100644 +--- a/src/semanage_store.c ++++ b/src/semanage_store.c +@@ -1015,7 +1015,7 @@ static int semanage_exec_prog(semanage_handle_t * sh, + } else if (forkval == 0) { + /* child process. file descriptors will be closed + * because they were set as close-on-exec. */ +- execve(e->path, argv, NULL); ++ execv(e->path, argv); + _exit(EXIT_FAILURE); /* if execve() failed */ + } else { + /* parent process. wait for child to finish */ +-- +1.7.5.4 + diff --git a/recipes-security/selinux/libsemanage_2.1.6.bb b/recipes-security/selinux/libsemanage_2.1.6.bb index 8359e68..faddbe0 100644 --- a/recipes-security/selinux/libsemanage_2.1.6.bb +++ b/recipes-security/selinux/libsemanage_2.1.6.bb @@ -17,6 +17,7 @@ SRC_URI[sha256sum] = "64e6849fe50fb463ec0ba24653a26e3452fa4aaa7d7e192213d5c5a7c5 DEPENDS += "libsepol libselinux ustr bzip2 python" SRC_URI += "file://Fix-segfault-for-standard-policy.patch" +SRC_URI += "file://libsemanage-Fix-execve-segfaults-on-Ubuntu.patch" PACKAGES += "${PN}-python" FILES_${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*" -- cgit v1.2.3-54-g00ecf