WIFI ioctl

发布时间:2014-10-22 13:07:19编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"WIFI ioctl",主要涉及到WIFI ioctl方面的内容,对于WIFI ioctl感兴趣的同学可以参考一下。

http://blog.csdn.net/zoe6553/article/details/6798544 应用程序中: ioctl(skfd, SIOCSIWSCAN , &wrq);  其中,#define SIOCSIWSCAN 0x8B18 socket的ioctl先看net/socket.c的sock_ioctl 对于无线: 0x8B00 ~ 0x8BFF  调用net/core/dev.c --> dev_ioctl dev_ioctl中执行到default中,最后调用了wireless_process_ioctl 对wireless_process_ioctl,又跑到了default中,如果有handler,最后到ioctl_standard_call中; 没有handler时,使用老的接口(dev->do_ioctl)。    handler = get_handler(dev, cmd);    if(handler != NULL) {     /* Standard and private are not the same */     if(cmd < SIOCIWFIRSTPRIV)      return ioctl_standard_call(dev,            ifr,            cmd,            handler);     else      return ioctl_private_call(dev,           ifr,           cmd,           handler);    }    /* Old driver API : call driver ioctl handler */    if (dev->do_ioctl) {     return dev->do_ioctl(dev, ifr, cmd);    } 有handler时,在具体WIFI驱动中,有类似如下实现: netdev->wireless_handlers = (struct iw_handler_def *)&iwctl_handler_def; const struct iw_handler_def iwctl_handler_def = { ......  .get_wireless_stats = &iwctl_get_wireless_stats,   .standard = (iw_handler *) iwctl_handler, ...... } static const iw_handler  iwctl_handler[] = {  (iw_handler) iwctl_commit,      // SIOCSIWCOMMIT      ...... ......  (iw_handler) iwctl_giwrange,  // SIOCGIWRANGE  ...... ...... #if WIRELESS_EXT > 13   (iw_handler) iwctl_siwscan,         // SIOCSIWSCAN    (iw_handler) iwctl_giwscan,         // SIOCGIWSCAN    #else   (iw_handler) NULL,  (iw_handler) NULL, #endif  ...... };   rt_ioctl_siwessid


上一篇:android4.2系统bug
下一篇:oracle dump trace redo几则方法小记

相关文章

关键词: WIFI ioctl

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款