在最近的一次客户端上的调试p2p的wifi display, 他们中的一半Android该调整了,整个前所以没有太多的研究p2p过程连接, 客户现在使用的非Android平台架构。 需要协助客户这么多东西debug

之前debug wifi 连接时用到了wpa_cli 来协助调试连接。那p2p怎么去调试呢? 能够用wpa_cli协助调试吗?

查看了代码有了肯定的答案, 命令中有p2p_find , p2p_connect , p2p_stop_find ...非常多命令

那这些命令怎么使用呢?

首先你编译wpa_supplicant 时候须要配置CONFIG_P2P这个宏。

run wpa_supplicant

wpa_supplicant -iwlan1 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf -N -iwlan0 -c/data/misc/wifi/wpa_supplicant.conf

用wpa_cl连接你的你的wpa_supplicant p2p deamon

wpa_cli -iwlan1

wpa_supplicant$ sudo ./wpa_cli -iwlan1

wpa_cli v2.0-devel_rtw_r8680.20130821

Copyright (c) 2004-2012, Jouni Malinen <j@w1.fi> and contributors

This software may be distributed under the terms of the BSD license.

See README for more details.

Interactive mode

连线流程

>p2p_find

启动p2p 扫面设备, 假设扫描到p2p设备, wpa_supplciant 会发一个P2P_EVENT_DEVICE_FOUND给wpa_cli提示已经扫描到p2p设备了 能够去连线了

> p2p_find

OK

<3>P2P-DEVICE-FOUND 16:b9:68:57:da:de p2p_dev_addr=16:b9:68:57:da:de pri_dev_type=10-0050F204-5 name='HUAWEI C8816D_de36' config_methods=0x188 dev_capab=0x24 group_capab=0x0

<3>CTRL-EVENT-SCAN-RESULTS 

<3>WPS-AP-AVAILABLE 

<3>CTRL-EVENT-SCAN-RESULTS     

<3>WPS-AP-AVAILABLE            

>p2p_connect  device_mac pbc

表示用push button connect的方式进行p2p 连接, 中间填写扫到设备的mac地址,此时还有一端(Android手机)会弹出对话框提示是否连接,点击连接,此时就正式进入P2P FORMATION 阶段,待NEGO SUCCESS, 就会建立GROUP   由CLI连线GROUP owner.

> p2p_connect 16:b9:68:57:da:de pbc

OK

<3>P2P-FIND-STOPPED 

<3>P2P-DEVICE-FOUND 16:b9:68:57:da:de p2p_dev_addr=16:b9:68:57:da:de pri_dev_type=10-0050F204-5 name='HUAWEI C8816D_de36' config_methods=0x80 dev_capab=0x24 group_capab=0x2a

<3>P2P-GO-NEG-SUCCESS 

<3>CTRL-EVENT-CONNECTED - Connection to 02:e0:4c:03:c0:86 completed (auth) [id=1 id_str=]

<3>CTRL-EVENT-STATE-CHANGE id=1 state=9 BSSID=02:e0:4c:03:c0:86 SSID=DIRECT-Ku

<3>CTRL-EVENT-EAP-STARTED 16:b9:68:57:da:de

<3>CTRL-EVENT-EAP-PROPOSED-METHOD vendor=0 method=1

<3>CTRL-EVENT-EAP-PROPOSED-METHOD vendor=14122 method=254

<3>WPS-REG-SUCCESS 16:b9:68:57:da:de 1d40cd60-67ab-58bd-9fb4-bc914d0fb25c

<3>P2P-GROUP-FORMATION-SUCCESS 

<3>P2P-GROUP-STARTED wlan1 GO ssid="DIRECT-Ku" freq=2412 passphrase="QM9ldAUy" go_dev_addr=02:e0:4c:03:c0:86

<3>WPS-SUCCESS 

<3>AP-STA-CONNECTED 16:b9:68:57:da:de p2p_dev_addr=16:b9:68:57:da:de

over

结束流程:

>p2p_stop_find

顾名思义结束p2p扫描发现设备

>disconnect   断开

>p2p_group_remove  建立与删除p2p_group

>p2p_flush  拆除p2p 相关国家

wpa_cli P2P 连接相关的调试命令的更多相关文章

  1. Windbg调试命令详解

    作者:张佩][原文:http://www.yiiyee.cn/Blog] 1. 概述 用户成功安装微软Windows调试工具集后,能够在安装目录下发现四个调试器程序,分别是:cdb.exe.ntsd. ...

  2. Windbg调试命令详解(1)

    转载注明>> [作者:张佩][镜像:http://www.yiiyee.cn/Blog] 1. 概述 用户成功安装微软Windows调试工具集后,能够在安装目录下发现四个调试器程序,分别是 ...

  3. gdb各种调试命令和技巧

    陈皓:用GDB调试程序 GDB概述———— GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但如果你是在UNIX平台 ...

  4. Ubuntu杂记——Ubuntu下以USB方式连接Android手机调试

    在Ubuntu下进行Android开发,发现自己的手机就算打开USB连接.USB调试还是连不上,一直都是显示??????.百度了很多,发现都是要改“ /etc/udev/rules.d/50-andr ...

  5. 基础调试命令 - .dump/.dumpcap/.writemem/!runaway

    Windbg是windows平台上强大的调试器,它相对于其他常见的IDE集成的调试器有几个重要的优势, Windbg可以做内核态调试 Windbg可以脱离源代码进行调试 Windbg可以用来分析dum ...

  6. adb调试命令详解-2016.02.01

    adb(Android Debug Bridge),调试桥可以让设备的调试监测过程在远端进行,而不必在运行实际运行应用的设备上,方便调试的输出. 1 命令详解 a 查看帮助信息         adb ...

  7. WinDbg调试命令汇总

    一. 1. !address eax 查看对应内存页的属性 2. vertarget 显示当前进程的大致信息 3 !peb 显示process Environment Block 4. lmvm 可以 ...

  8. Windbg调试命令详解(3)

    3 进程与线程 既可以显示进程和线程列表,又可以显示指定进程或线程的详细信息.调试命令可以提供比taskmgr更详尽的进程资料,在调试过程中不可或缺. 3.1 进程命令 进程命令包括这些内容:显示进程 ...

  9. Keil 的调试命令、在线汇编与断点设置

    上一讲中我们学习了如何建立工程.汇编.连接工程,并获得目标代码,但是做到这一 步仅仅代表你的源程序没有语法错误,至于源程序中存在着的其它错误,必须通过调试才能 发现并解决,事实上,除了极简单的程序以外 ...

随机推荐

  1. 轻狂写的桌面日历秀NSIS脚本供大家参考学习

    原文 轻狂写的桌面日历秀NSIS脚本供大家参考学习 现在共享桌面日历秀的NSIS脚本,以便交流学习.此脚本实现的功能如下: 7-Zip打开看不到内容.自动读取原安装路径,如果有则不允许更改.取得编译日 ...

  2. Advanced Installer 9.8打包实录

    原文 Advanced Installer 9.8打包实录 主要介绍:(1)创建工程,(2)创建快捷方式及其图标(3)卸载设置 创建工程(.net为例): 工程创建完成....接下来进行简单设置 开始 ...

  3. Linux的selinux

    SELinux 操作模式     学科 (Subject):SELinux 序,因此你能够将『主体』跟 process 划上等号:     目标 (Object): 主体程序是否能存取的『目标资源』一 ...

  4. 设计模式--模板方法 And State模式

    1.模板方法   钩子: 在抽象基类已经有默认的定义,子类选择是否覆盖它 在模板方法模式中,  抽象基类中使用 钩子函数(子类视情况是否覆盖)  来达到控制模板方法中  流程控制的 目的 设计原则: ...

  5. 类(class)能不能自己继承自己(转)

    类(class)能不能自己继承自己不行,继承关系会出现环. 假设类A继承类A.那么要新建一个类A的对象,就必须先建立一个类A父类的对象.这是一个递归的过程,而且没有终止条件.会死循环的. 从编译的角度 ...

  6. Sql Server之旅——第五站 确实不得不说的DBCC命令

    原文:Sql Server之旅--第五站 确实不得不说的DBCC命令 今天研发中心办年会,晚上就是各自部门聚餐了,我个人喜欢喝干红,在干红中你可以体味到那种酸甜苦辣...人生何尝不是这样呢???正好 ...

  7. Corel VideoStudio Pro X7(会声会影)

    今天了解一天的视频剪辑方面的知识,自己也动手做了一个. 好啦!下面给大家一些建议: 剪辑软件选择: 1.易学易用.容易上手.模板丰富:会声会影:(需要安装包的可以留言和私信我)2.功能齐全.占用资源少 ...

  8. Ajax.BeginForm的异步提交数据 简介

    Html.BeginForm与Ajax.BeginForm都是MVC架构中的表单元素,它们从字面上可以看到区别,即Html.BeginForm是普通的表单提交,而Ajax.BeginForm是支持异步 ...

  9. crawler_URL编码原理详解

    经常写爬虫的童鞋,难免要处理含有中文的url,大部分时间,都知道url_encode,各个语言也都有支持,今天简单整理下原理,供大家科普 1.特征: 如果URL中含有非ASCII字符的话, 浏览器会对 ...

  10. 浅谈JavaScript中继承的实现

    谈到js中的面向对象编程,都有一个共同点,选择原型属性还是构造函数,两者各有利弊,而就片面的从js的对象创建以及继承的实现两个方面来说,官方所推荐的是两个相结合,各尽其责,各取其长,在前面的例子中,我 ...