> The problem is not that it couldn't be fixed, the reason it happened at all 
> was
> because I introduced a dumb bug in the code, because dropped messages were not
> being dropped correctly, etc etc. So yeah, one can just point the finger at
> whoever introduced the bug that caused the loop, but the system will never be
> without bugs, and the implementations won't always be under our control.
> 
> By having a HTL on every message, you have a simple but powerful layer of
> protection against problems like this built into the protocol and spec itself,
> rather then relying on programmers always getting things right and considering
> all possibilities.

Unless the bug is that the HTL isn't be decremented. Checking to see if
you've already received a message isn't particularly more complicated or
error prone.

I think that before we declare a final product for use by the general
populice, we're going to have to consider our code mature enough that bugs
so fundamental as messages not being dropped when they are duplicates are
eliminated. Bugs such as this won't be introduced after a certain point
because it's a layered, modular protocol and the layer that checks for
duplicate messages is at the bottom.



_______________________________________________
Freenet-dev mailing list
Freenet-dev at lists.sourceforge.net
http://lists.sourceforge.net/mailman/listinfo/freenet-dev

Reply via email to