[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [bug #43094] The function tcpip_input() forget to handle IP
From: |
任海波 |
Subject: |
[lwip-devel] [bug #43094] The function tcpip_input() forget to handle IPv6 |
Date: |
Thu, 28 Aug 2014 02:02:08 +0000 |
User-agent: |
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; QQBrowser/7.7.24962.400) |
URL:
<http://savannah.nongnu.org/bugs/?43094>
Summary: The function tcpip_input() forget to handle IPv6
Project: lwIP - A Lightweight TCP/IP stack
Submitted by: hichard
Submitted on: Thu Aug 28 02:02:07 2014
Category: IPv6
Severity: 3 - Normal
Item Group: Change Request
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Planned Release:
lwIP version: CVS Head
_______________________________________________________
Details:
Hello Ivan:
I found a bug the function tcpip_input(). This function forget to handle
IPv6. I has change it as follow. In the thread tcpip_thread(), it is handled
as this.
err_t
tcpip_input(struct pbuf *p, struct netif *inp)
{
#if LWIP_TCPIP_CORE_LOCKING_INPUT
err_t ret;
LWIP_DEBUGF(TCPIP_DEBUG, ("tcpip_input: PACKET %p/%p\n", (void *)p, (void
*)inp));
LOCK_TCPIP_CORE();
#if LWIP_ETHERNET
if (inp->flags & (NETIF_FLAG_ETHARP | NETIF_FLAG_ETHERNET)) {
ret = ethernet_input(p, inp);
} else
#endif /* LWIP_ETHERNET */
#if LWIP_IPV6
if ((*((unsigned char *)(p->payload)) & 0xf0) == 0x60) {
ret = ip6_input(p, inp);
} else
#endif /* LWIP_IPV6 */
{
ret = ip_input(p, inp);
}
UNLOCK_TCPIP_CORE();
return ret;
#else /* LWIP_TCPIP_CORE_LOCKING_INPUT */
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/bugs/?43094>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
- [lwip-devel] [bug #43094] The function tcpip_input() forget to handle IPv6,
任海波 <=