Hello Olivier,
Thank you for your repot.
We(TAHI Project) will check it as soon as possible.
Best regards,
> -----Original Message-----
> From: Olivier MATZ [mailto:olivier.matz@6wind.com]
> Sent: Friday, October 27, 2006 10:15 PM
> To: users@tahi.org
> Subject: [users:00251] Computed checksum is wrong
>
> Hi all,
>
> I have a FAIL in ready logo phase2 host tests :
>
> Here is a part of the log, as you can see checksum is not the
> one expected :
>
> | | ICMPv6_ParameterProblem (length:64)
> | | | Type = 4
> | | | Code = 1
> | | | Checksum = 65535 calc(0)
> [...]
> ng compare _ICMPV6_icmperr.Checksum received:65535 = 0
>
>
> This fail occurs in :
> Section 1: RFC 2460 - IPv6 Specification TEST 13, Part A:
> Unrecognized Next Header in Extension Header (Multiple
> Values)
>
> In this test, multiple values of Next Header are tested, so
> the nut generates each time a different packet with a
> different checksum... on my nut I have no luck, the processed
> checksum is 0.
>
> But as you know (from RFC):
> o Unlike IPv4, when UDP packets are originated by an IPv6 node,
> the UDP checksum is not optional. That is, whenever
> originating a UDP packet, an IPv6 node must compute a UDP
> checksum over the packet and the pseudo-header, and, if that
> computation yields a result of zero, it must be
> changed to hex
> FFFF for placement in the UDP header. IPv6 receivers must
> discard UDP packets containing a zero checksum, and
> should log
> the error.
>
> I made a patch that fixes the problem, but I'm not really
> sure of it, since I'm not very familiar with TAHI
> development. Can someone have a look at it ? There are 2 fixes in it :
> - first I replaced '~checksum' by 0xFFFF, because ~checksum
> is 0xFFFFFFFF as it is an uint32_t.
> - I also invert the optionable test, because I think we
> should replace the value only if the checksum field is not an option.
>
> Olivier
>
>