- Lan parties (where the time is limited and thus hashing may delay the acceptance of new clients)
- Sharing by users with big shares which change from one client to another and as a result may lose their share
The ideas currently being taken into account:
Create a please hash this file command
Send along the query a priority value (currently 0 = I want to download this file because I'm trying to download an unhashed file from your list and 1 = I got a name+size match on that file you haven't hashed but for which I have a TTH, hash it to see if you are an alternate source).
Create a not more requests for this priority RET (with a retry based on time or if desired a push notification), (it is recommended its usage to ensure a client won't request a lot of files to be hashed/vote for those files to be hashed).
Add a hash whilst uploading command which will send the TTH root of the file at the end of the transfer (when the file will be already hashed too), this allows for optimized disk accesses where the data will be hashed as it is sent preventing double accesses. When transferring data in this mode only files with the same path from the same client (same CID) should be attempted to prevent file corruption.
As said this extension is still very open for discussion so please sharpen your tongues and start with it.