lwip: minor fix about ip route

Minor fix about ip4_route_src_hook()
This commit is contained in:
Liu Zhi Fu 2018-07-16 17:18:23 +08:00
parent 3716e3e8c4
commit 60080d4893

View file

@ -133,16 +133,14 @@ bool ip4_netif_exist(const ip4_addr_t *src, const ip4_addr_t *dest)
return false; return false;
} }
/** /**
* Source based IPv4 routing hook function. This function works only * Source based IPv4 routing hook function.
* when destination IP is broadcast IP.
*/ */
struct netif * ESP_IRAM_ATTR struct netif * ESP_IRAM_ATTR
ip4_route_src_hook(const ip4_addr_t *dest, const ip4_addr_t *src) ip4_route_src_hook(const ip4_addr_t *dest, const ip4_addr_t *src)
{ {
struct netif *netif = NULL; struct netif *netif = NULL;
/* destination IP is broadcast IP? */ if ((src != NULL) && !ip4_addr_isany(src)) {
if ((src != NULL) && (!ip4_addr_isany(src) || (dest->addr == IPADDR_BROADCAST))) {
/* iterate through netifs */ /* iterate through netifs */
for (netif = netif_list; netif != NULL; netif = netif->next) { for (netif = netif_list; netif != NULL; netif = netif->next) {
/* is the netif up, does it have a link and a valid address? */ /* is the netif up, does it have a link and a valid address? */