首页 > 其他分享 >关于cfg80211

关于cfg80211

时间:2023-05-04 19:33:34浏览次数:60  
标签:ath6kl set del 关于 key mgmt cfg80211


关于 cfg80211



cfg80211是Linux 802.11配置API。 cfg80211用于取代Wireless-Extensions。 nl80211用来配置一个cfg80211设备,用于内核< - >用户空间之间的通信。 Wireless extensions 现在处于维护模式,将不会添加新的功到它上面,我们只修复bug。cfg80211现在与wireless-extensions是完全特性兼容的,它实际上有更多的功能,这些功能wireless extension根本是没有的,而且以后也不会有。当实现一个cfg80211驱动时,仍然会通过CONFIG_CFG80211_WEXT为你自动提供wireless extensions的支持,不再需要无线扩展的发行版可以删除它,我们也鼓励他们这样做。 cfg80211还提供了完整的regulatory支持,这是通过wireless-regdb 和CRDA的使用来实现的。

所有新的Linux无线驱动程序应该面向fullmac设备的cfg80211或softmac设备的mac80211编程。

cfg80211 驱动编程



我们现在有一些cfg80211驱动,一个完整的cfg80211驱动的很好的例子是Atheros ath6kl驱动程序。 取代之前的wext ioctls 编程,你现在通过设置cfg80211回调和wiphy结构体来告知cfg80211其设备信息。

下面是一个关于 ath6kl cfg80211_ops的例子:

static struct cfg80211_ops ath6kl_cfg80211_ops = {
        .add_virtual_intf = ath6kl_cfg80211_add_iface,
        .del_virtual_intf = ath6kl_cfg80211_del_iface,
        .change_virtual_intf = ath6kl_cfg80211_change_iface,
        .scan = ath6kl_cfg80211_scan,
        .connect = ath6kl_cfg80211_connect,
        .disconnect = ath6kl_cfg80211_disconnect,
        .add_key = ath6kl_cfg80211_add_key,
        .get_key = ath6kl_cfg80211_get_key,
        .del_key = ath6kl_cfg80211_del_key,
        .set_default_key = ath6kl_cfg80211_set_default_key,
        .set_wiphy_params = ath6kl_cfg80211_set_wiphy_params,
        .set_tx_power = ath6kl_cfg80211_set_txpower,
        .get_tx_power = ath6kl_cfg80211_get_txpower,
        .set_power_mgmt = ath6kl_cfg80211_set_power_mgmt,
        .join_ibss = ath6kl_cfg80211_join_ibss,
        .leave_ibss = ath6kl_cfg80211_leave_ibss,
        .get_station = ath6kl_get_station,
        .set_pmksa = ath6kl_set_pmksa,
        .del_pmksa = ath6kl_del_pmksa,
        .flush_pmksa = ath6kl_flush_pmksa,
        CFG80211_TESTMODE_CMD(ath6kl_tm_cmd)
#ifdef CONFIG_PM
        .suspend = __ath6kl_cfg80211_suspend,
        .resume = __ath6kl_cfg80211_resume,
#endif
        .start_ap = ath6kl_start_ap,
        .change_beacon = ath6kl_change_beacon,
        .stop_ap = ath6kl_stop_ap,
        .del_station = ath6kl_del_station,
        .change_station = ath6kl_change_station,
        .remain_on_channel = ath6kl_remain_on_channel,
        .cancel_remain_on_channel = ath6kl_cancel_remain_on_channel,
        .mgmt_tx = ath6kl_mgmt_tx,
        .mgmt_frame_register = ath6kl_mgmt_frame_register,
        .sched_scan_start = ath6kl_cfg80211_sscan_start,
        .sched_scan_stop = ath6kl_cfg80211_sscan_stop,
};



然后你通过指定cfg80211 ops分配wiphy并填写wiphy。

欲了解更多详情,请参阅cfg80211.h,作为一个驱动程序的示例,您可以阅读ath6kl。

Regulatory



Linux wireless regulatory 文档:

其他文档



cfg80211 文件和内核文档



标签:ath6kl,set,del,关于,key,mgmt,cfg80211
From: https://blog.51cto.com/u_16097040/6244254

相关文章

  • 关于 CAmkES
    本文译至:http://sel4.systems/CAmkES/About.pml关于CAmkESCAmkES是面向seL4的一个基于组件的软件平台。它提供了一个软件开发和运行时平台,允许开发人员设计基于seL4的系统作为交互组件的集合。 动机基于微内核的多服务器操作系统被设计成一个保护和分离服务的集合,服务之间通过进......
  • 关于单片机控制电压检测的学习
    1.使用单片机内自带的ADC模块进行检测问题在于频率是否合适:在实验2的基础上得到结论,当两线圈距离在2cm左右时,工作频率将会超过1MHz。采样的最好结果是采集尽可能多的点,这样才能绘制出真正反映实际情况的曲线。目前想要完成的是实验3的demo,采用电阻分压和二极管整流,直接利用......
  • 关于落后十几年的说法
    经常在网上看到中国某项技术落后国外十几年甚至几十年的说法,这种其实没有任何的参考价值。判断的标准就是说目前国内的水平只是相当于国外2000年的水平云云,但是这完全不能做为一种依据就是说中国也需要花十几年的时间去赶上国外的水平,而这种说法常常会给人一种这样的误解。......
  • 关于vue2中使用unocss样式无法生效的问题
    前言在维护公司一个技术栈为vue2+ts+unocss的老项目时发现unocss在开发环境和正式环境都不能生效,最先以为是插件的版本问题,排查后发现是因为项目在使用unocss时的配置没有配置完全,根据vue-cli的版本按照unocss的官方仓库里的example配置vue.config.js这是v......
  • 关于OKD(OpenShift)中组件资源介绍和命令行操作的一些笔记
    写在前面参加考试,会陆续分享一些OpenShift的笔记博文内容为openshift常见API资源对象介绍,包括所特有的Route,IS,DC,BC等。学习环境为openshiftv3的版本,有些旧这里如果专门学习openshift,建议学习v4版本理解不足小伙伴帮忙指正傍晚时分,你坐在屋檐下,看着天慢慢地黑下去,心......
  • 博主观点--关于本博客的使用路线图
    本博客主要是用于个人的知识整理,常用网站的归纳,仅供个人记录学习成长笔记使用,不做商业用途。本博客文章以Linux操作系统,开源软件,个人喜爱的数码硬件产品等为主,间接穿插其他相关的技术内容。平时写作时间不多,所以博客内容在每篇文章的最下一行标明最后的更新时间。所以,发布日期早......
  • 关于租房(持续更新...)
    确定租房地点和预算在租房之前,我需要先了解所在城市的租房市场行情,比较不同地区的房价和租金水平,同时也得根据自己的经济状况和生活需求制定一个较为合理的预算。地段:提前看好交通方式和路线,沿着上班路线找,离工作近为主,工作稳定后再换又近又好的搜寻房源信息通过租房A......
  • 关于容斥原理 / P5505题解
    发现很多题解连容斥原理的“钦定”和“至少”的区别都讲不清楚,误导萌新,所以写一下这两个东西的区别“钦定”这个东西是会算重的,而“至少”不会。举个例子吧,比如\(1\2\3\)三个位置不合法,如果我说“钦定”两个位置不合法,那么这里计算方案的时候这个不合法的方案会被计算三次,分......
  • 【游戏设计随笔04】关于《桃源》的一些设计运营总结
    1:《桃源》有着非常明显的优势区间“美术”。用出众的美术风格为玩家制造记忆点,依旧是游戏获客的重要方式,尤其是对于那些缺乏用户积累的新IP、新团队来说。2:度过了初期的视觉冲击,就需要用玩法让玩家留下,《桃源》采用了一套简练的核心循环。仅从生产经营的资源循环来看,《桃源》有......
  • 【游戏设计随笔05】关于“模拟经营”的一些感悟笔记
    一些模拟经营大类的tips:1:模拟经营游戏的定义游戏可以视为一组,在好玩的心态下由玩家执行的规则下的选择。而模拟经营类型的游戏更加偏重于资源分配。如果有一个基本定义,就是完成游戏资源产出机制,到资源分配,再到升级机制,最后强化资源产出,完成闭环的一个结构。2:模拟经营游戏的核心......