zoukankan      html  css  js  c++  java
  • wpa_cli P2P 连接相关的调试命令

            在最近的一次客户端上的调试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 相关国家

  • 相关阅读:
    android如何在代码中设置margin
    也许游戏 它P/N图分析
    【淡墨Unity3D Shader计划】四 热带雨林的文章: 排除、深度测试、Alpha测试和基本雾编译
    HDU 3060 多边形面积并
    onmouseover和onmouseout的烦恼
    LoaderManager使用具体解释(三)---实现Loaders
    [每天一个Linux小技巧] gdb 下一次运行多个命令
    VB.NET版机房收费系统—DataGridView应用
    数据结构导论第一遍
    轻松搞定面试中的二叉树题目
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/4605659.html
Copyright © 2011-2022 走看看