> 1) How do they work (obviously) Simple. requests can optionally contain an "unrequest key", which is a SHA1 hash of an arbitrary string unknown (at that time) to the node. On retrieving data, they store this key in the message memory (where it will remain until reaped), along with the node from where the datareply was received.
Should a node wish to unrequest some data, it sends an unrequest message which contains the unhashed version of the unrequest key, thus verifying the validity of the unrequest. On receiving such an unrequest a node attempts, to whatever extent possible, to undo the effect of the original datarequest and its resulting datareply. It then forwards the unrequest on to the next node in the chain (unless it is the original source of the datareply). > 2) We must be able to prevent unrequest spamming (which is a way of > eliminating freenet data) I think the method I describe does it. > 3) How do we propogate an unrequest? It has to touch everything the > request did, within HTL depth. Ditto. Ian. _______________________________________________ Freenet-dev mailing list Freenet-dev at lists.sourceforge.net http://lists.sourceforge.net/mailman/listinfo/freenet-dev
