SELinux: Convert the netif code to use ifindex values
The current SELinux netif code requires the caller have a valid net_device struct pointer to lookup network interface information. However, we don't always have a valid net_device pointer so convert the netif code to use the ifindex values we always have as part of the sk_buff. This patch also removes the default message SID from the network interface record, it is not being used and therefore is "dead code". Signed-off-by: Paul Moore <paul.moore@hp.com> Signed-off-by: James Morris <jmorris@namei.org>
This commit is contained in:
@@ -7,6 +7,8 @@
|
||||
* Author: James Morris <jmorris@redhat.com>
|
||||
*
|
||||
* Copyright (C) 2003 Red Hat, Inc., James Morris <jmorris@redhat.com>
|
||||
* Copyright (C) 2007 Hewlett-Packard Development Company, L.P.
|
||||
* Paul Moore, <paul.moore@hp.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2,
|
||||
@@ -15,7 +17,7 @@
|
||||
#ifndef _SELINUX_NETIF_H_
|
||||
#define _SELINUX_NETIF_H_
|
||||
|
||||
int sel_netif_sids(struct net_device *dev, u32 *if_sid, u32 *msg_sid);
|
||||
int sel_netif_sid(int ifindex, u32 *sid);
|
||||
|
||||
#endif /* _SELINUX_NETIF_H_ */
|
||||
|
||||
|
@@ -96,9 +96,8 @@ struct bprm_security_struct {
|
||||
};
|
||||
|
||||
struct netif_security_struct {
|
||||
struct net_device *dev; /* back pointer */
|
||||
u32 if_sid; /* SID for this interface */
|
||||
u32 msg_sid; /* default SID for messages received on this interface */
|
||||
int ifindex; /* device index */
|
||||
u32 sid; /* SID for this interface */
|
||||
};
|
||||
|
||||
struct sk_security_struct {
|
||||
|
@@ -77,8 +77,7 @@ int security_get_user_sids(u32 callsid, char *username,
|
||||
int security_port_sid(u16 domain, u16 type, u8 protocol, u16 port,
|
||||
u32 *out_sid);
|
||||
|
||||
int security_netif_sid(char *name, u32 *if_sid,
|
||||
u32 *msg_sid);
|
||||
int security_netif_sid(char *name, u32 *if_sid);
|
||||
|
||||
int security_node_sid(u16 domain, void *addr, u32 addrlen,
|
||||
u32 *out_sid);
|
||||
|
Reference in New Issue
Block a user