net80211模块

 

发送模块

struct sk_buff *ieee80211_encap(struct ieee80211com *ic, struct sk_buff *skb, struct ieee80211_node *ni)函数负责组装帧,在If_ath.c之中进行调用  

                   skb = ieee80211_encap(ic, skb, ni);从而来进行帧的组装以及发送,在这里面要先进行802.3格式的以太帧头的剔除(skb_pull),但是头的信息还是要保留来复制得到后面的802.11格式的帧头.后面又会有一些复制地址得到4地址格式的802.11帧头的操作(skb_push)

 ieee80211_encap 是由ath_start(if_ath.c)来调用.ath_start是ath_attach(if_ath.c)来进行调用将其做为网络设备的发送函数.而ath_start是由ath_pci_probe(if_ath_pci.c)来调用

 ieee80211_mgmt_output函数是由ieee80211_send_mgmt来调用发送encap封装好的数据帧(已经完成了头转换的数据帧),而ieee80211_send_mgmt是由ieee80211_proto_attach函数(ieee80211_proto.c)来将其绑定在ieee80211com类型的结构体ic上(ic->ic_send_mgmt = ieee80211_send_mgmt),而ieee80211_proto_attach函数是由ieee80211_ifattach(ieee80211.c)来调用.而ieee80211_ifattach是由ath_attach(if_ath.c)来调用,而ath_attach(if_ath.c)是由ath_pci_probe(if_ath_pci.c)来调用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值