aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGene Cumm <gene.cumm@gmail.com>2011-10-13 21:09:55 -0400
committerGene Cumm <gene.cumm@gmail.com>2011-10-13 21:09:55 -0400
commiteaf547e293a2680422837f8ffa4c166e93e00b84 (patch)
tree219f472cada24522f1e1fb8665bc4280281c8f1c
parent7fabde3ab0a24757d337580829816088cebdd2a4 (diff)
downloadsyslinux-eaf547e293a2680422837f8ffa4c166e93e00b84.tar.gz
syslinux-eaf547e293a2680422837f8ffa4c166e93e00b84.tar.xz
syslinux-eaf547e293a2680422837f8ffa4c166e93e00b84.zip
lwip:undiif: Use tcpip_input() rather than ethernet_input()/ip_input()
Solves the race conditition in VMware platforms. undi_netif.flags already has the NETIF_FLAG_ETHARP bit in the proper state. (1 when we wanted ethernet_input and 0 when we wanted ip_input() ) Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
-rw-r--r--core/lwip/src/netif/undiif.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/core/lwip/src/netif/undiif.c b/core/lwip/src/netif/undiif.c
index 6400daef..678503f9 100644
--- a/core/lwip/src/netif/undiif.c
+++ b/core/lwip/src/netif/undiif.c
@@ -1260,7 +1260,7 @@ void undiif_input(t_PXENV_UNDI_ISR *isr)
case ETHTYPE_PPPOE:
#endif /* PPPOE_SUPPORT */
/* full packet send to tcpip_thread to process */
- if (ethernet_input(p, &undi_netif)!=ERR_OK)
+ if (tcpip_input(p, &undi_netif)!=ERR_OK)
{ LWIP_DEBUGF(NETIF_DEBUG, ("undiif_input: IP input error\n"));
pbuf_free(p);
p = NULL;
@@ -1281,7 +1281,7 @@ void undiif_input(t_PXENV_UNDI_ISR *isr)
switch(undi_prot) {
case P_IP:
/* pass to IP layer */
- ip_input(p, &undi_netif);
+ tcpip_input(p, &undi_netif);
break;
case P_ARP: