Egnyte does show hashes via API, they are SHA512. I tried digging around in the rclone code a little bit but would need some guidance to allow e.g. --hash to work with lsjson.
At this stage, my only questions are:
Where do I start?
Is this considered very difficult or can this be achieved by a non-golang programmer?
How do I find the actual functions calling the API and listing the objects? I assume this is where we can start pulling the correct values for the hashes.
Any and all assistance is greatly appreciated. Regardless, I will continue my own research and will take the liberty of sharing here once found.
I am very well versed with Egnyte API and using it with Python. Have been doing this for many years.
Then implement the Hash function on object to return the hash as a lower case hex string. It does appear to do this already though, so maybe the Hashes above are disabled for a reason.
This function is wrong also, it should only return the hash if the incoming ty == hash.SHA256 otherwise it should return "" and an error.
// Hash returns the supported hash sets
func (o *Object) Hash(ctx context.Context, ty hash.Type) (string, error) {
return o.sha512sum, nil
}
That should be enough to add support for hashes
It would be useful to see what command line you are using and what results you got.
Are Egnyte going to submit the backend at some point do you know?