From 31b0237c501652e6e18f0705e473004f5e20823a Mon Sep 17 00:00:00 2001 From: Dirk Ziegelmeier Date: Fri, 18 Nov 2016 08:13:15 +0100 Subject: [PATCH] Apply patch #9165: Allowing udp src port to be 0 in cases when we don't care about outgoing port --- src/core/udp.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/core/udp.c b/src/core/udp.c index 491fb074..ebb04edc 100644 --- a/src/core/udp.c +++ b/src/core/udp.c @@ -283,8 +283,12 @@ udp_input(struct pbuf *p, struct netif *inp) uncon_pcb = pcb; } - /* compare PCB remote addr+port to UDP source addr+port */ - if ((pcb->remote_port == src) && + /* Compare PCB remote addr+port to UDP source addr+port. + * Allow pcb->remote_port 0 for matching any port + * from a specified pcb->remote_ip. + * See patch #9165 + */ + if (((pcb->remote_port == src) || (pcb->remote_port == 0)) && (ip_addr_isany_val(pcb->remote_ip) || ip_addr_cmp(&pcb->remote_ip, ip_current_src_addr()))) { /* the first fully matching PCB */