[MLSXFRM]: Auto-labeling of child sockets
This automatically labels the TCP, Unix stream, and dccp child sockets as well as openreqs to be at the same MLS level as the peer. This will result in the selection of appropriately labeled IPSec Security Associations. This also uses the sock's sid (as opposed to the isec sid) in SELinux enforcement of secmark in rcv_skb and postroute_last hooks. Signed-off-by: Venkat Yekkirala <vyekkirala@TrustedCS.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
cb969f072b
commit
4237c75c0a
@ -812,6 +812,26 @@ static inline void dummy_sk_clone_security (const struct sock *sk, struct sock *
|
||||
static inline void dummy_sk_getsecid(struct sock *sk, u32 *secid)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void dummy_sock_graft(struct sock* sk, struct socket *parent)
|
||||
{
|
||||
}
|
||||
|
||||
static inline int dummy_inet_conn_request(struct sock *sk,
|
||||
struct sk_buff *skb, struct request_sock *req)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline void dummy_inet_csk_clone(struct sock *newsk,
|
||||
const struct request_sock *req)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void dummy_req_classify_flow(const struct request_sock *req,
|
||||
struct flowi *fl)
|
||||
{
|
||||
}
|
||||
#endif /* CONFIG_SECURITY_NETWORK */
|
||||
|
||||
#ifdef CONFIG_SECURITY_NETWORK_XFRM
|
||||
@ -1084,6 +1104,10 @@ void security_fixup_ops (struct security_operations *ops)
|
||||
set_to_dummy_if_null(ops, sk_free_security);
|
||||
set_to_dummy_if_null(ops, sk_clone_security);
|
||||
set_to_dummy_if_null(ops, sk_getsecid);
|
||||
set_to_dummy_if_null(ops, sock_graft);
|
||||
set_to_dummy_if_null(ops, inet_conn_request);
|
||||
set_to_dummy_if_null(ops, inet_csk_clone);
|
||||
set_to_dummy_if_null(ops, req_classify_flow);
|
||||
#endif /* CONFIG_SECURITY_NETWORK */
|
||||
#ifdef CONFIG_SECURITY_NETWORK_XFRM
|
||||
set_to_dummy_if_null(ops, xfrm_policy_alloc_security);
|
||||
|
Reference in New Issue
Block a user