diff options
author | Robert Shearman <rshearma@brocade.com> | 2015-04-22 06:14:37 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-04-22 14:24:54 -0400 |
commit | 03c57747a7020a28a200e7e920fb48ecdc9b0fb8 (patch) | |
tree | 012bd8131aa759a62667ea02fe87fa3328b16d65 /include/linux/netdevice.h | |
parent | 909d9faae2a447110aa061070145297fffe129cb (diff) |
mpls: Per-device MPLS state
Add per-device MPLS state to supported interfaces. Use the presence of
this state in mpls_route_add to determine that this is a supported
interface.
Use the presence of mpls_dev to drop packets that arrived on an
unsupported interface - previously they were allowed through.
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Robert Shearman <rshearma@brocade.com>
Reviewed-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/netdevice.h')
-rw-r--r-- | include/linux/netdevice.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index bcbde799ec69..dae106a3a998 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
@@ -60,6 +60,7 @@ struct phy_device; | |||
60 | struct wireless_dev; | 60 | struct wireless_dev; |
61 | /* 802.15.4 specific */ | 61 | /* 802.15.4 specific */ |
62 | struct wpan_dev; | 62 | struct wpan_dev; |
63 | struct mpls_dev; | ||
63 | 64 | ||
64 | void netdev_set_default_ethtool_ops(struct net_device *dev, | 65 | void netdev_set_default_ethtool_ops(struct net_device *dev, |
65 | const struct ethtool_ops *ops); | 66 | const struct ethtool_ops *ops); |
@@ -1627,6 +1628,9 @@ struct net_device { | |||
1627 | void *ax25_ptr; | 1628 | void *ax25_ptr; |
1628 | struct wireless_dev *ieee80211_ptr; | 1629 | struct wireless_dev *ieee80211_ptr; |
1629 | struct wpan_dev *ieee802154_ptr; | 1630 | struct wpan_dev *ieee802154_ptr; |
1631 | #if IS_ENABLED(CONFIG_MPLS_ROUTING) | ||
1632 | struct mpls_dev __rcu *mpls_ptr; | ||
1633 | #endif | ||
1630 | 1634 | ||
1631 | /* | 1635 | /* |
1632 | * Cache lines mostly used on receive path (including eth_type_trans()) | 1636 | * Cache lines mostly used on receive path (including eth_type_trans()) |