mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2025-01-01 12:00:53 +00:00
Fixed bug #20253: icmp_dest_unreach was called with a wrong p->payload for udp packets with no matching pcb.
This commit is contained in:
parent
00b7aeb49b
commit
dcc2247a90
@ -238,6 +238,10 @@ HISTORY
|
|||||||
|
|
||||||
++ Bug fixes:
|
++ Bug fixes:
|
||||||
|
|
||||||
|
2007-06-25 Simon Goldschmidt
|
||||||
|
* udp.c: Fixed bug #20253: icmp_dest_unreach was called with a wrong p->payload
|
||||||
|
for udp packets with no matching pcb.
|
||||||
|
|
||||||
2007-06-25 Simon Goldschmidt
|
2007-06-25 Simon Goldschmidt
|
||||||
* udp.c: Fixed bug #20220: UDP PCB search in udp_input(): a non-local match
|
* udp.c: Fixed bug #20220: UDP PCB search in udp_input(): a non-local match
|
||||||
could get udp input packets if the remote side matched.
|
could get udp input packets if the remote side matched.
|
||||||
|
@ -257,7 +257,7 @@ udp_input(struct pbuf *p, struct netif *inp)
|
|||||||
if (!ip_addr_isbroadcast(&iphdr->dest, inp) &&
|
if (!ip_addr_isbroadcast(&iphdr->dest, inp) &&
|
||||||
!ip_addr_ismulticast(&iphdr->dest)) {
|
!ip_addr_ismulticast(&iphdr->dest)) {
|
||||||
/* move payload pointer back to ip header */
|
/* move payload pointer back to ip header */
|
||||||
pbuf_header(p, (IPH_HL(iphdr) * 4));
|
pbuf_header(p, (IPH_HL(iphdr) * 4) + UDP_HLEN);
|
||||||
LWIP_ASSERT("p->payload == iphdr", (p->payload == iphdr));
|
LWIP_ASSERT("p->payload == iphdr", (p->payload == iphdr));
|
||||||
icmp_dest_unreach(p, ICMP_DUR_PORT);
|
icmp_dest_unreach(p, ICMP_DUR_PORT);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user