From 8efd1ef10e91006e6f2958cc04e1c424ec9bb0bd Mon Sep 17 00:00:00 2001 From: Daniel J Walsh Date: Feb 23 2007 21:49:32 +0000 Subject: - Upgrade to upstream Removed sending of setrans init message. Merged matchpathcon memory leak fix from Steve Grubb. --- diff --git a/.cvsignore b/.cvsignore index f1188d1..cb13306 100644 --- a/.cvsignore +++ b/.cvsignore @@ -107,3 +107,6 @@ libselinux-1.34.0.tgz libselinux-1.34.1.tgz libselinux-2.0.0.tgz libselinux-2.0.1.tgz +libselinux-2.0.2.tgz +libselinux-2.0.3.tgz +libselinux-2.0.4.tgz diff --git a/libselinux-rhat.patch b/libselinux-rhat.patch index e7afea2..e69de29 100644 --- a/libselinux-rhat.patch +++ b/libselinux-rhat.patch @@ -1,266 +0,0 @@ ---- libselinux-2.0.1/src/selinuxswig_wrap.c.rhat 2007-02-20 09:25:03.000000000 -0500 -+++ libselinux-2.0.1/src/selinuxswig_wrap.c 2007-02-20 09:25:14.000000000 -0500 -@@ -2832,7 +2832,7 @@ - security_context_t *arg1 = (security_context_t *) 0 ; - int result; - security_context_t temp1 = NULL ; -- char *temp10 ; -+ char *temp10 = NULL ; - - { - arg1 = &temp1; -@@ -2879,7 +2879,7 @@ - int val1 ; - int ecode1 = 0 ; - security_context_t temp2 = NULL ; -- char *temp20 ; -+ char *temp20 = NULL ; - PyObject * obj0 = 0 ; - - { -@@ -2911,7 +2911,7 @@ - security_context_t *arg1 = (security_context_t *) 0 ; - int result; - security_context_t temp1 = NULL ; -- char *temp10 ; -+ char *temp10 = NULL ; - - { - arg1 = &temp1; -@@ -2937,7 +2937,7 @@ - security_context_t *arg1 = (security_context_t *) 0 ; - int result; - security_context_t temp1 = NULL ; -- char *temp10 ; -+ char *temp10 = NULL ; - - { - arg1 = &temp1; -@@ -2981,7 +2981,7 @@ - security_context_t *arg1 = (security_context_t *) 0 ; - int result; - security_context_t temp1 = NULL ; -- char *temp10 ; -+ char *temp10 = NULL ; - - { - arg1 = &temp1; -@@ -3025,7 +3025,7 @@ - security_context_t *arg1 = (security_context_t *) 0 ; - int result; - security_context_t temp1 = NULL ; -- char *temp10 ; -+ char *temp10 = NULL ; - - { - arg1 = &temp1; -@@ -3069,7 +3069,7 @@ - security_context_t *arg1 = (security_context_t *) 0 ; - int result; - security_context_t temp1 = NULL ; -- char *temp10 ; -+ char *temp10 = NULL ; - - { - arg1 = &temp1; -@@ -3117,7 +3117,7 @@ - char *buf1 = 0 ; - int alloc1 = 0 ; - security_context_t temp2 = NULL ; -- char *temp20 ; -+ char *temp20 = NULL ; - PyObject * obj0 = 0 ; - - { -@@ -3155,7 +3155,7 @@ - char *buf1 = 0 ; - int alloc1 = 0 ; - security_context_t temp2 = NULL ; -- char *temp20 ; -+ char *temp20 = NULL ; - PyObject * obj0 = 0 ; - - { -@@ -3192,7 +3192,7 @@ - int val1 ; - int ecode1 = 0 ; - security_context_t temp2 = NULL ; -- char *temp20 ; -+ char *temp20 = NULL ; - PyObject * obj0 = 0 ; - - { -@@ -3314,7 +3314,7 @@ - int val1 ; - int ecode1 = 0 ; - security_context_t temp2 = NULL ; -- char *temp20 ; -+ char *temp20 = NULL ; - PyObject * obj0 = 0 ; - - { -@@ -3475,7 +3475,7 @@ - security_context_t *arg2 = (security_context_t *) 0 ; - int result; - security_context_t temp2 = NULL ; -- char *temp20 ; -+ char *temp20 = NULL ; - PyObject * obj0 = 0 ; - - { -@@ -3735,7 +3735,7 @@ - unsigned int val2 ; - int ecode2 = 0 ; - security_context_t temp3 = NULL ; -- char *temp30 ; -+ char *temp30 = NULL ; - PyObject * obj0 = 0 ; - PyObject * obj1 = 0 ; - -@@ -3779,7 +3779,7 @@ - char *buf1 = 0 ; - int alloc1 = 0 ; - security_context_t temp2 = NULL ; -- char *temp20 ; -+ char *temp20 = NULL ; - PyObject * obj0 = 0 ; - - { -@@ -4213,7 +4213,7 @@ - char *buf1 = 0 ; - int alloc1 = 0 ; - security_context_t temp2 = NULL ; -- char *temp20 ; -+ char *temp20 = NULL ; - PyObject * obj0 = 0 ; - - { -@@ -4251,7 +4251,7 @@ - char *buf1 = 0 ; - int alloc1 = 0 ; - security_context_t temp2 = NULL ; -- char *temp20 ; -+ char *temp20 = NULL ; - PyObject * obj0 = 0 ; - - { -@@ -4284,7 +4284,7 @@ - PyObject *resultobj = 0; - char **arg1 = (char **) 0 ; - int result; -- char *temp1 ; -+ char *temp1 = NULL ; - - { - arg1 = &temp1; -@@ -4310,8 +4310,8 @@ - int res1 ; - char *buf1 = 0 ; - int alloc1 = 0 ; -- char *temp2 ; -- char *temp3 ; -+ char *temp2 = NULL ; -+ char *temp3 = NULL ; - PyObject * obj0 = 0 ; - - { ---- libselinux-2.0.1/src/enabled.c.rhat 2007-02-20 09:25:03.000000000 -0500 -+++ libselinux-2.0.1/src/enabled.c 2007-02-20 09:27:53.000000000 -0500 -@@ -8,10 +8,44 @@ - #include - #include "policy.h" - -+static int readFD (int fd, char **buf) -+{ -+ char *p; -+ size_t size = 16384; -+ int s, filesize; -+ -+ *buf = calloc (16384, sizeof (char)); -+ if (*buf == 0) -+ return -1; -+ -+ filesize = 0; -+ do { -+ p = &(*buf) [filesize]; -+ do { -+ s = read (fd, p, 16384); -+ } while (s < 0 && errno == EINTR); -+ if (s < 0) -+ break; -+ filesize += s; -+ /* only exit for empty reads */ -+ if (s == 0) -+ break; -+ size += s; -+ *buf = realloc (*buf, size); -+ } while (1); -+ -+ if (filesize == 0 && s < 0) { -+ free (*buf); -+ *buf = NULL; -+ return -1; -+ } -+ -+ return filesize; -+} -+ - int is_selinux_enabled(void) - { -- char *buf; -- size_t size; -+ char *buf = NULL; - int fd; - ssize_t ret; - int enabled = 0; -@@ -21,19 +55,11 @@ - if (fd < 0) - return -1; - -- size = selinux_page_size; -- buf = malloc(size); -- if (!buf) { -- enabled = -1; -- goto out; -- } -- -- memset(buf, 0, size); -- -- ret = read(fd, buf, size - 1); -+ ret = readFD(fd, &buf); -+ close(fd); - if (ret < 0) { - enabled = -1; -- goto out2; -+ goto out; - } - - if (!strstr(buf, "selinuxfs")) -@@ -49,7 +75,6 @@ - out2: - free(buf); - out: -- close(fd); - return enabled; - } - ---- libselinux-2.0.1/src/selinuxswig.i.rhat 2007-02-20 09:25:03.000000000 -0500 -+++ libselinux-2.0.1/src/selinuxswig.i 2007-02-20 09:25:14.000000000 -0500 -@@ -28,7 +28,7 @@ - %typemap(in, numinputs=0) security_context_t *(security_context_t temp=NULL) { - $1 = &temp; - } --%typemap(argout) security_context_t * (char *temp) { -+%typemap(argout) security_context_t * (char *temp=NULL) { - if (*$1) - temp = *$1; - else -@@ -126,7 +126,7 @@ - extern int selinux_raw_to_trans_context(char *raw, - security_context_t *transp); - --%typemap(in, numinputs=0) char **(char *temp) { -+%typemap(in, numinputs=0) char **(char *temp=NULL) { - $1 = &temp; - } - diff --git a/libselinux.spec b/libselinux.spec index c12c0e0..b64368b 100644 --- a/libselinux.spec +++ b/libselinux.spec @@ -1,7 +1,7 @@ %define libsepolver 2.0.1-1 Summary: SELinux library and simple utilities Name: libselinux -Version: 2.0.1 +Version: 2.0.4 Release: 1%{?dist} License: Public domain (uncopyrighted) Group: System Environment/Libraries @@ -121,6 +121,15 @@ exit 0 %{_libdir}/python*/site-packages/selinux.py* %changelog +* Fri Feb 21 2007 Dan Walsh - 2.0.4-1 +- Upgrade to upstream + * Removed sending of setrans init message. + * Merged matchpathcon memory leak fix from Steve Grubb. + +* Thu Feb 20 2007 Dan Walsh - 2.0.2-1 +- Upgrade to upstream + * Merged more swig initializers from Dan Walsh. + * Tue Feb 20 2007 Dan Walsh - 2.0.1-1 - Upgrade to upstream * Merged patch from Todd Miller to convert int types over to C99 style. diff --git a/sources b/sources index 572972c..b026f25 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -d8b478690440a9012c629a65158823f2 libselinux-2.0.1.tgz +7bdaaafbbcec0cdd6eeb9a1993cd4292 libselinux-2.0.4.tgz