On Sat, Apr 25, 2015 at 08:54:13PM +0100, Chris Boot wrote:
> The problem happens because BIRD doesn’t verify the checksum by running 
> Fletcher against the received packet and testing for zero; rather it:
> - sets the checksum in the packet to 0
> - runs the checksum calculation on the LSA data
> - updates the checksum in the packet (and comes up with a different result)
> - complains when the result is not the same as what was in the packet
> 
> I believe the correct way to verify the checksum would be to run the 
> algorithm against the unchanged packet (with the checksum intact) and verify 
> that the result is zero.
>
> Would a patch that changes this behaviour be welcome? I’ve written something 
> up against the current git master, but haven’t yet tested it.

Hello

You are most likley right. As i understand it, these checksums are modulo
255; therefore, in some cases they are not unique. Therefore simple
computing new value and comparing it with received does not work.
A patch would be definitely welcome.

-- 
Elen sila lumenn' omentielvo

Ondrej 'Santiago' Zajicek (email: santi...@crfreenet.org)
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)
"To err is human -- to blame it on a computer is even more so."

Attachment: signature.asc
Description: Digital signature

Reply via email to