From: Jouni Malinen (jkmaline_at_cc.hut.fi)
Date: 2002-08-24 16:53:31 UTC
On Mon, Aug 12, 2002 at 02:57:45PM -0700, Omesh Tickoo wrote:
> I am trying to transmit some data from within hostap
> in managed mode. Specifically, I allocate a new
> sk_buff and initialize its data portion to start with
> dst_addr[6]+src_addr[6]+proto[2]. Then I use a
> function almost similar to prism2_tx (for all
> practical purposes its prism2_tx copied and reused) to
> transmit the frame.
> wlan0: TX status=0x0000 retry_count=0 tx_rate=0
> tx_control=0x000c; jiffies=273778
> FC=0x4108 (type=2:0) dur=0x0000 seq=0x0000
> data_len=2 [ToDS]
> A1=00:00:00:00:00:00 A2=00:06:25:ab:30:2e
> A3=ff:ff:ff:ff:ff:ff A4=00:00:00:00:00:00
> dst=ff:ff:ff:ff:ff:ff src=ff:ff:ff:ff:ff:ff len=2
What are you trying to send? That looks like you have set src hwaddr to ff:ff:ff:ff:ff:ff in the skb, but that is not allowed. In Managed mode, you can only send frames with your own hwaddr as the source address. The driver sets A2 properly to this address, but src_addr is copied from the skb.
> wlan0: TXEXC - fid=0x0376 - status=0x0001 ([RetryErr])
> tx_control=000c
> retry_count=0 tx_rate=0 fc=0x0908 (Data::0)
> addr1=00:06:25:ab:2f:1c addr2=00:06:25:ab:30:2e
> addr3=ff:ff:ff:ff:ff:ff
RetryErr means that the recipient (00:06:25:ab:2f:1c) did not ACK that frame. You should get FormErr if the frame is somehow invalid and it was not sent at at all. addr1 (BSSID) was apparently set by the firmware, so at least it looks like the station has been associated properly.
-- Jouni Malinen PGP id EFC895FA