On Tue, 2009-10-20 at 12:36 +0200, Holger Schurig wrote: > Hi ! > > I'm about to add monitor mode to my cfg80211 code. I wanted to > keep as much of the monitor mode code from libertas that I could, > mainly > > * priv->rtap_net_dev > * lbs_rtap_XXX() in main.c > * process_rxed_802_11_packet() in rx.c. > > > So my code is quite simply currently: > > static struct cfg80211_ops lbs_cfg80211_ops = { > // ... > .change_virtual_intf = lbs_change_intf, > }; > > static int lbs_change_intf(struct wiphy *wiphy, struct net_device *dev, > enum nl80211_iftype type, u32 *flags, > struct vif_params *params) > { > struct lbs_private *priv = wiphy_priv(wiphy); > int ret = 0; > > lbs_deb_enter(LBS_DEB_CFG80211); > > switch(type) { > case NL80211_IFTYPE_MONITOR: > ret = lbs_enable_monitor_mode(priv, type == NL80211_IFTYPE_MONITOR); > if (!priv->rtap_net_dev) > lbs_add_rtap(priv); check what that calls -- probably register_netdev vs. register_netdevice. johannes
Attachment:
signature.asc
Description: This is a digitally signed message part