From 7a1413f9725c454066ea7865cf097431e4338c5d Mon Sep 17 00:00:00 2001 From: SUZUKI Shinsuke Date: Fri, 31 Oct 2003 03:18:45 +0000 Subject: [PATCH] fixe remote panic on short packet Obtained from: KAME --- usr.sbin/route6d/route6d.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/usr.sbin/route6d/route6d.c b/usr.sbin/route6d/route6d.c index 062291816a3d..b19b799528ba 100644 --- a/usr.sbin/route6d/route6d.c +++ b/usr.sbin/route6d/route6d.c @@ -1126,6 +1126,11 @@ riprecv() if (idx && IN6_IS_ADDR_LINKLOCAL(&fsock.sin6_addr)) SET_IN6_LINKLOCAL_IFINDEX(fsock.sin6_addr, idx); + if (len < sizeof(struct rip6)) { + trace(1, "Packet too short\n"); + return; + } + nh = fsock.sin6_addr; nn = (len - sizeof(struct rip6) + sizeof(struct netinfo6)) / sizeof(struct netinfo6);