rpms/kernel/F-7 linux-2.6-selinux-fix-netlabel-leak.patch, NONE, 1.1 kernel-2.6.spec, 1.3416, 1.3417

Chuck Ebbert (cebbert) fedora-extras-commits at redhat.com
Tue Jan 22 23:46:09 UTC 2008


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv23096

Modified Files:
	kernel-2.6.spec 
Added Files:
	linux-2.6-selinux-fix-netlabel-leak.patch 
Log Message:
* Tue Jan 22 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.23.14-66
- Fix memory leak in netlabel code (#352281)


linux-2.6-selinux-fix-netlabel-leak.patch:

--- NEW FILE linux-2.6-selinux-fix-netlabel-leak.patch ---
Gitweb:     http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=45c950e0f839fded922ebc0bfd59b1081cc71b70
Commit:     45c950e0f839fded922ebc0bfd59b1081cc71b70
Parent:     a7da60f41551abb3c520b03d42ec05dd7decfc7f
Author:     Paul Moore <paul.moore at hp.com>
AuthorDate: Tue Jan 22 09:31:00 2008 +1100
Committer:  James Morris <jmorris at namei.org>
CommitDate: Tue Jan 22 09:31:00 2008 +1100

    selinux: fix memory leak in netlabel code
    
    Fix a memory leak in security_netlbl_sid_to_secattr() as reported here:
     * https://bugzilla.redhat.com/show_bug.cgi?id=352281
    
    Signed-off-by: Paul Moore <paul.moore at hp.com>
    Signed-off-by: James Morris <jmorris at namei.org>
---
 security/selinux/netlabel.c    |    7 +++++--
 security/selinux/ss/services.c |    2 --
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/security/selinux/netlabel.c b/security/selinux/netlabel.c
index d243ddc..66e013d 100644
--- a/security/selinux/netlabel.c
+++ b/security/selinux/netlabel.c
@@ -53,10 +53,11 @@ static int selinux_netlbl_sock_setsid(struct sock *sk, u32 sid)
 	struct sk_security_struct *sksec = sk->sk_security;
 	struct netlbl_lsm_secattr secattr;
 
+	netlbl_secattr_init(&secattr);
+
 	rc = security_netlbl_sid_to_secattr(sid, &secattr);
 	if (rc != 0)
-		return rc;
-
+		goto sock_setsid_return;
 	rc = netlbl_sock_setattr(sk, &secattr);
 	if (rc == 0) {
 		spin_lock_bh(&sksec->nlbl_lock);
@@ -64,6 +65,8 @@ static int selinux_netlbl_sock_setsid(struct sock *sk, u32 sid)
 		spin_unlock_bh(&sksec->nlbl_lock);
 	}
 
+sock_setsid_return:
+	netlbl_secattr_destroy(&secattr);
 	return rc;
 }
 
diff --git a/security/selinux/ss/services.c b/security/selinux/ss/services.c
index d572dc9..f83b19d 100644
--- a/security/selinux/ss/services.c
+++ b/security/selinux/ss/services.c
@@ -2606,8 +2606,6 @@ int security_netlbl_sid_to_secattr(u32 sid, struct netlbl_lsm_secattr *secattr)
 	int rc = -ENOENT;
 	struct context *ctx;
 
-	netlbl_secattr_init(secattr);
-
 	if (!ss_initialized)
 		return 0;
 


Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/kernel-2.6.spec,v
retrieving revision 1.3416
retrieving revision 1.3417
diff -u -r1.3416 -r1.3417
--- kernel-2.6.spec	22 Jan 2008 17:49:45 -0000	1.3416
+++ kernel-2.6.spec	22 Jan 2008 23:45:17 -0000	1.3417
@@ -575,6 +575,7 @@
 Patch480: linux-2.6-proc-self-maps-fix.patch
 Patch510: linux-2.6-silence-noise.patch
 Patch570: linux-2.6-selinux-mprotect-checks.patch
+Patch571: linux-2.6-selinux-fix-netlabel-leak.patch
 Patch590: linux-2.6-unexport-symbols.patch
 
 Patch600: linux-2.6-vm-silence-atomic-alloc-failures.patch
@@ -1250,6 +1251,8 @@
 
 # Fix the SELinux mprotect checks on executable mappings
 ApplyPatch linux-2.6-selinux-mprotect-checks.patch
+# Fix leak in netlabel
+ApplyPatch linux-2.6-selinux-fix-netlabel-leak.patch
 
 # Remove kernel-internal functionality that nothing external should use.
 ApplyPatch linux-2.6-unexport-symbols.patch
@@ -2315,6 +2318,9 @@
 %endif
 
 %changelog
+* Tue Jan 22 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.23.14-66
+- Fix memory leak in netlabel code (#352281)
+
 * Tue Jan 22 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.23.14-65
 - Autoload the Dell dcdbas driver like in F8 (#326041)
 




More information about the fedora-extras-commits mailing list