-
Notifications
You must be signed in to change notification settings - Fork 842
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for checksum algorithms in AWS #3873
Conversation
What is this waiting on? |
@tustvold Sorry, I couldn't find time to get back to it. I need to add optional dependencies for crc32 and crc32c. Any suggestions on which crate to use ? |
object_store/src/aws/client.rs
Outdated
builder = builder.body(bytes) | ||
payload_checksum = match self.config().checksum { | ||
Some(checksum) => { | ||
let digest = checksum.digest(&bytes); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think passing this to the request signing is only correct if the checksum is a sha256 digest?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah will fix it
Perhaps we could reduce the scope initially and only support sha256 digests, as these already need to be computed for request signing anyway? To be honest I wonder if we could just always include them, given they have been computed 🤔 |
@tustvold Fine by me. I'll change the Checksum enum to only have Sha1 and Sha256 as those are already provided by ring |
@tustvold ? Like setting
Removed SHA1 as well for now. It's deprecated. ref briansmith/ring#754 |
Thank you |
* Add support for checksum algorithms in aws * Remove other algorithms * Only set when checksum algorithm is sha256 * Fix
Which issue does this PR close?
Closes #3725
Rationale for this change
What changes are included in this PR?
Are there any user-facing changes?