> 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
