On Tue, 22 Aug 2006 15:53:33 +0200, Johannes Berg wrote:
> This patch makes d80211 partially configurable using the
> infrastructure that nl80211 provides. So far, it allows
> packet injection and adding/removing virtual interfaces.
Just minor things:
> [...]
> --- wireless-dev.orig/net/d80211/ieee80211.c 2006-08-22 15:47:46.000000000
> +0200
> +++ wireless-dev/net/d80211/ieee80211.c 2006-08-22 15:47:48.000000000
> +0200
> [...]
> @@ -4323,6 +4363,7 @@ struct net_device *ieee80211_alloc_hw(si
> priv_size = ((sizeof(struct ieee80211_sub_if_data) +
> NETDEV_ALIGN_CONST) & ~NETDEV_ALIGN_CONST) +
> priv_data_len;
> +
> mdev = alloc_netdev(priv_size, "wmaster%d", ether_setup);
> if (!mdev) {
> ieee80211_dev_free(local);
Remove this hunk, please.
> [...]
> +static int d80211_interfaces(void *priv, void *data,
> + int (*one)(void *data, int ifindex))
Please use ieee80211_ prefix, not d80211_.
> [...]
> +static int d80211_inject(void *priv, void *frame, int framelen, u32 flags,
> + int queue)
> +{
> + struct ieee80211_local *local = priv;
> + struct ieee80211_tx_packet_data *pkt_data;
> + struct sk_buff *pkt;
> + void *pktdata;
> +
> + pkt = alloc_skb(framelen, GFP_KERNEL);
> + pktdata = skb_put(pkt, framelen);
> + memcpy(pktdata, frame, framelen);
> +
> + pkt_data = (struct ieee80211_tx_packet_data *) pkt->cb;
> + memset(pkt_data, 0, sizeof(struct ieee80211_tx_packet_data));
This is not necessary, cb is zeroed in alloc_skb.
Thanks,
Jiri
--
Jiri Benc
SUSE Labs
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html