FIX: shash::HashFile() Produced Wrong Content Hashes

I just came across that issue, when I was writing a test set for `LocalUploader`. Due to wrong input buffer length handling in `shash::HashFile()` it produced wrong hashes. Fortunately I didn't find any code that uses this function. Hopefully it has never been used as well.