tree d4677ac6fa83fd66df35687adf5df4c3789c8ff7
parent af570c2721ed02629c1483c660416ca29626c926
author David Goldsmith <davidgoldsmith@google.com> 1637015738 -0500
committer GitHub <noreply@github.com> 1637015738 -0500
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJhkuC6CRBK7hj4Ov3rIwAAWhUIABAAu/2Z9M9uNN4SvZsiB7i3
 RIQnRcZLugWbcftByGAffASxitTP1OoRd9GcyuMmI2ypXj2A9DTefi3AExfFUHkm
 kRJ446xLujZWmiqx6UK7y8317e5sueGsYZ4n+XkTJp4yYA62J5YGpaOsIN6Yr0nW
 POzj6oFQQBHdM1bntaWLD7HYQEoScNH5JTGCrNTXdYbxsKbZWLu6rPldjN5uQ3D6
 4Phh3wT1ij5lRqqfJe7udGfT5h/Kx1WddmK30qxbQc+ZBDiCqMXQU6d63lDo1mcC
 RwhhcdCF1pP0437P0eTr/JlMY7YO5UESk3Hq1AUMOcDG4hrw939DqP/1L8YYZ30=
 =K83a
 -----END PGP SIGNATURE-----
 

Add optional extended file attribute use to hash compute function (#387)

* Add optional extended file attribute use to hash compute function

Instructs the cache hash compute function to use the provided file
attribute as the hash value, instead of loading the file into memory
and hashing its contents.
Returns an error if extended attributes are not supported or found.