LwIP 2.0.3 迁移 LwIP 2.1.2 注意事项(源地址和目的地址位置调换问题)

LwIP从2.0.3升级到2.1.2需要注意ip4_route_src接口参数顺序的变化。在2.1.1及以上版本中,dest和src参数顺序已调换,与其它ip*_route*函数保持一致。如果你使用了自定义的routehook,需要检查并适配这个接口变化。定义LWIP_HOOK_IP4_ROUTE_SRC时,确保参数顺序正确。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

LwIP 2.0.3 迁移 LwIP 2.1.2 注意事项

如果你使用了自定义的 router hook,那么请检查你适配的 hook 接口,确定 dest 和 src 顺序是正确的。

在 LwIP 的 CHANGELOG 里有以下描述:

  2017-08-08: Dirk Ziegelmeier
  * ip4_route_src: parameter order is reversed: ip4_route_src(dest, src) -> ip4_route_src(src, dest)
    to make parameter order consistent with other ip*_route*() functions
    Same also applies to LWIP_HOOK_IP4_ROUTE_SRC() parameter order.

意思是 ip4_route_src 接口的 dest 和 src 参数顺序调换了!!!

如果你使用了 route hook,会有如下定义(核心是检查 src 和 dest 的顺序):

#define LWIP_HOOK_FILENAME                  "arch/lwip_hooks.h"
// 在 lwip2.1.1 及其以上版本请使用这样的转换定义
#define LWIP_HOOK_IP4_ROUTE_SRC(src, dest)  hook_ip4_route_src(dest,src)
// 在 lwip 2.0.3 及其之前的版本,请使用以下的定义
// #define LWIP_HOOK_IP4_ROUTE_SRC(dest, src)  hook_ip4_route_src(dest,src)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值