From: Mark Wooding Date: Thu, 14 Sep 2017 12:25:12 +0000 (+0100) Subject: pathmtu/pathmtu.c: Check against UDP header length, not pointer size. X-Git-Tag: 1.5.0~41^2~32 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/tripe/commitdiff_plain/0e0da615bb759f1fe1324f6c76a6407ab61b74bf pathmtu/pathmtu.c: Check against UDP header length, not pointer size. --- diff --git a/pathmtu/pathmtu.c b/pathmtu/pathmtu.c index 55702787..4e8f568f 100644 --- a/pathmtu/pathmtu.c +++ b/pathmtu/pathmtu.c @@ -616,7 +616,7 @@ static int raw_selproc(void *stv, fd_set *fd_in, struct probestate *ps) n -= sizeof(*ip); udp = (struct udphdr *)(ip + 1); - if (n < sizeof(udp) || udp->uh_sport != st->me.sin.sin_port || + if (n < sizeof(*udp) || udp->uh_sport != st->me.sin.sin_port || udp->uh_dport != st->a.sin.sin_port) goto skip_icmp; n -= sizeof(*udp);