OpenHarmony开源社区
直播中

李工

10年用户 11经验值
擅长:可编程逻辑 电源/新能源 模拟技术 嵌入式技术 接口/总线/驱动 处理器/DSP 控制/MCU EDA/IC设计 RF/无线
私信 关注
[问答]

Hi3861是否支持网卡混杂模式?

unsigned int hi_promis_start(const char *ifname)
{
    int ret;
    hi_wifi_ptype_filter filter = {0};

    filter.mdata_en = 1;
    filter.udata_en = 1;
    filter.mmngt_en = 1;
    filter.umngt_en = 1;

    hi_wifi_promis_set_rx_callback(hi_promis_recv);
    
        hi_at_printf("hi_wifi_promis_enable: start!\r\n");
    ret = hi_wifi_promis_enable(ifname, 1, &filter);
    if (ret != HI_ERR_SUCCESS) {
        hi_at_printf("hi_wifi_promis_enable:: set error!\r\n");
        return ret;
    }
    
    hi_at_printf("start promis SUCCESS!\r\n");
        
    return HI_ERR_SUCCESS;
}

代码执行后直接返回 set error!信息,并且hi_wifi_promis_enable内部的所有错误信息都没有输出,函数入口增加一句打印输出,也没有打印,好像这个函数根本没有进,但整个代码中也只有这一处函数的实现。迷惘中……

hi_s32 hi_wifi_promis_enable(const hi_char *ifname, hi_s32 enable, const hi_wifi_ptype_filter *filter)
{   
    hi_s32 l_ret;
    hi_u8  filter_value;
    oal_net_device_stru *netdev = HI_NULL;

        hi_at_printf("hi_wifi_promis_enable parameter NULL.\r\n");
    if ((ifname == HI_NULL) || (filter == HI_NULL)) {
        oam_error_log0(0, 0, "hi_wifi_promis_enable parameter NULL.");
        return HI_FAIL;
    }
        
    filter_value = *((hi_u8 *)((hi_void *)filter)) & 0x0F;
    netdev = oal_get_netdev_by_name(ifname);
    if (netdev == HI_NULL) {
        oam_error_log0(0, 0, "hi_wifi_promis_enable device not found.");
        return HI_FAIL;
    }

    if ((enable != HI_FALSE) && (enable != HI_TRUE)) {
        oam_error_log0(0, 0, "hi_wifi_promis_enable invalid parameter.");
        return HI_FAIL;
    }
    
    if (enable == HI_FALSE) {
        filter_value = 0;
    }
    l_ret = wifi_promis_set(netdev, filter_value);
    return l_ret;
}       

回帖(3)

回头太晚

2022-8-4 17:56:36
有哪位大佬知道吗,可以指导下
举报

李工

2022-8-8 14:50:33
发现hi_wifi_promis_enable()所在的这个源文件根本就没有参与编译。而这个接口是在build/libs/hi3861/release/no_mesh/libwifi_flash.a这个库中提供的。返回失败后没有任何提示,都不知道是什么原因失败,也不知道这个库里是否真正实现了这一功能,还是直接返回false拉倒了。
举报

jf_32842618

2023-2-20 21:07:52
已经搞定了
举报

更多回帖

发帖
×
20
完善资料,
赚取积分