Xilinx SDK lwip 本地IP无法使用0.0.0.0的问题解决办法

阅读: 评论:0

Xilinx SDK lwip 本地IP无法使用0.0.0.0的问题解决办法

Xilinx SDK lwip 本地IP无法使用0.0.0.0的问题解决办法

1. 平台 Xilinx SDK2018.1

2. 问题:在裸机程序中使用lwip2.0.2版本,当本地IP地址设置为0.0.0.0时,无法发送udp数据。

3. 原因:

    在udp_sendto()函数中,调用ip_route()函数,判断本地ip是不是0x00000000即0.0.0.0。

    当判断本地ip为0.0.0.0时,会返回错误结果,导致无法正常发送数据。

4. 解决办法:

    在SDK安装路径下修改ip4.c文件。

    修改udp_sendto()函数,修改以下语句:

if (netif_is_up(netif) && netif_is_link_up(netif) && !ip4_addr_isany_val(*netif_ip4_addr(netif))) {

改为:

if (netif_is_up(netif) && netif_is_link_up(netif) ) {

另外,

if ((netif_default == NULL) || !netif_is_up(netif_default) || !netif_is_link_up(netif_default) ||
      ip4_addr_isany_val(*netif_ip4_addr(netif_default))) {

改为:
    if ((netif_default == NULL) || !netif_is_up(netif_default) || !netif_is_link_up(netif_default) ) {

 

本文发布于:2024-02-02 17:36:13,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170686657345372.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:linux PPTP
标签:解决办法   SDK   Xilinx   lwip   IP
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23