kernel <==> user via nl

user:
use command such as NL80211_CMD_GET_KEY in netlink socket to kernel.

driver:
wiphy_new(&xx_cfg80211_ops, size);(need to pad struct cfg80211_ops xx_cfg80211_ops)---->create struct cfg80211_registered_device *rdev, rdev->ops = &xx_cfg80211_ops.


kernel:
net/wireless/nl80211.c
    static struct genl_ops nl80211_ops[]
{
        .cmd = NL80211_CMD_GET_KEY,
                .doit = nl80211_get_key,
                .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                        NL80211_FLAG_NEED_RTNL,

}
        nl80211_get_key--->rdev_get_key---->net/wireless/rdev-ops.h(rdev->ops->get_key), and call api defined in driver.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值