浏览代码

[SELinux]: Fix double free in selinux_netlbl_sock_setsid()

As pointed out by Adrian Bunk, commit
45c950e0f839fded922ebc0bfd59b1081cc71b70 ("fix memory leak in netlabel
code") caused a double-free when security_netlbl_sid_to_secattr()
fails.  This patch fixes this by removing the netlbl_secattr_destroy()
call from that function since we are already releasing the secattr
memory in selinux_netlbl_sock_setsid().

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Paul Moore 17 年之前
父节点
当前提交
e1770d97a7
共有 1 个文件被更改,包括 0 次插入1 次删除
  1. 0 1
      security/selinux/ss/services.c

+ 0 - 1
security/selinux/ss/services.c

@@ -2692,7 +2692,6 @@ int security_netlbl_sid_to_secattr(u32 sid, struct netlbl_lsm_secattr *secattr)
 
 
 netlbl_sid_to_secattr_failure:
 netlbl_sid_to_secattr_failure:
 	POLICY_RDUNLOCK;
 	POLICY_RDUNLOCK;
-	netlbl_secattr_destroy(secattr);
 	return rc;
 	return rc;
 }
 }
 #endif /* CONFIG_NETLABEL */
 #endif /* CONFIG_NETLABEL */