chiark / gitweb /
pathmtu/pathmtu.c: Check against UDP header length, not pointer size.
[tripe] / pathmtu / pathmtu.c
index 5570278738421abaeb011ef7562e3d867efb6bb2..4e8f568fb33f295e5c52d054e59c814407f4fca8 100644 (file)
@@ -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);