Thanks Mike, that's exactly the kind of detailed review I was looking for. I think you're right an all points.
I'll simplify: I'll add a -banscore option (default 100), and if a node accumulates more than -banscore misbehavior points it'll get dropped and banned for -bantime (default 60*60*24) seconds. I'll make bad signatures a banning offense, and I'll remove the number-of-sigops and non-standard-transaction penalties. I used a mutable field with const setter to avoid modifying a bunch of methods to take non-const blocks/transactions instead of const; I think it is appropriate because a block/transaction's DoS score is really meta-data and not part of it's state. I'll make GetTime() unit-test friendly as you suggest. -- -- Gavin Andresen ------------------------------------------------------------------------------ Doing More with Less: The Next Generation Virtual Desktop What are the key obstacles that have prevented many mid-market businesses from deploying virtual desktops? How do next-generation virtual desktops provide companies an easier-to-deploy, easier-to-manage and more affordable virtual desktop model.http://www.accelacomm.com/jaw/sfnl/114/51426474/ _______________________________________________ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development