aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/driver-ops.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-01-14 09:14:34 -0500
committerJohannes Berg <johannes.berg@intel.com>2013-01-18 15:55:38 -0500
commita65240c1013222dbf41166c8b2c5ed2720c807c3 (patch)
tree782ebe013571cbf1b83c306964372faffe348b42 /net/mac80211/driver-ops.h
parent0a214d3f7e5041685ebff054628a4354bedd78c3 (diff)
mac80211: allow drivers to access IPv6 information
To be able to implement NS response offloading (in regular operation or while in WoWLAN) drivers need to know the IPv6 addresses assigned to interfaces. Implement an IPv6 notifier in mac80211 to call the driver when addresses change. Unlike for IPv4, implement it as a callback rather than as a list in the BSS configuration, that is more flexible. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/driver-ops.h')
-rw-r--r--net/mac80211/driver-ops.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/net/mac80211/driver-ops.h b/net/mac80211/driver-ops.h
index e6033b06caba..d51afbd614d3 100644
--- a/net/mac80211/driver-ops.h
+++ b/net/mac80211/driver-ops.h
@@ -1036,4 +1036,16 @@ drv_set_default_unicast_key(struct ieee80211_local *local,
1036 trace_drv_return_void(local); 1036 trace_drv_return_void(local);
1037} 1037}
1038 1038
1039#if IS_ENABLED(CONFIG_IPV6)
1040static inline void drv_ipv6_addr_change(struct ieee80211_local *local,
1041 struct ieee80211_sub_if_data *sdata,
1042 struct inet6_dev *idev)
1043{
1044 trace_drv_ipv6_addr_change(local, sdata);
1045 if (local->ops->ipv6_addr_change)
1046 local->ops->ipv6_addr_change(&local->hw, &sdata->vif, idev);
1047 trace_drv_return_void(local);
1048}
1049#endif
1050
1039#endif /* __MAC80211_DRIVER_OPS */ 1051#endif /* __MAC80211_DRIVER_OPS */