Re: IPsecv6 integrity failures not dropped

YOSHIFUJI Hideaki / =?ISO-2022-jp?B?GyRCNUhGIzFRTEAbKEI=?= (yoshfuji@wide.ad.jp)
Sat, 19 Apr 2003 11:50:53 +0900 (JST)


In article <200304182017.h3IKH4ng019821@faith.austin.ibm.com> (at Fri, 18 Apr 2003 15:17:04 -0500), latten@austin.ibm.com says:

> incoming packet fails, result is an ICMPv6 Parameter problem
> of Unknown-Next-Header, instead of just dropping packet. This
> is because xfrm6_rcv() expects an unsigned-8-bit return value
> from the input handler, i.e. ah6_input() or esp6_input(). But handler
> returns a signed int (-EINVAL) that seems to be getting converted into
> a "u8" via 2's complement, because ah6_input() says it is returning
> -EINVAL/-22, but xfrm6_rcv() says it got a return value of 234,
> which it believes to be valid and passes to ip6_input() who thinks it is
> the next header.
>
> I modified ah6_input() and esp6_input() to return zero instead of -EINVAL
> in the fix below. I tested it and it works.

just change u8 nexthdr = 0 to int nexthdr = 0, in xfrm6_rcv() is fine,
isn't it?

-- 
Hideaki YOSHIFUJI @ USAGI Project <yoshfuji@linux-ipv6.org>
GPG FP: 9022 65EB 1ECF 3AD1 0BDF  80D8 4807 F894 E062 0EEA
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/