|
|
@ -2698,6 +2698,8 @@ func (s3a *S3ApiServer) createMultipartSSEKMSDecryptedReaderDirect(ctx context.C |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// createMultipartSSES3DecryptedReaderDirect creates a reader that decrypts each chunk independently for multipart SSE-S3 objects (direct volume path)
|
|
|
// createMultipartSSES3DecryptedReaderDirect creates a reader that decrypts each chunk independently for multipart SSE-S3 objects (direct volume path)
|
|
|
|
|
|
// Note: encryptedStream parameter is unused (always nil) as this function fetches chunks directly to avoid double I/O.
|
|
|
|
|
|
// It's kept in the signature for API consistency with non-Direct versions.
|
|
|
func (s3a *S3ApiServer) createMultipartSSES3DecryptedReaderDirect(ctx context.Context, encryptedStream io.ReadCloser, entry *filer_pb.Entry) (io.Reader, error) { |
|
|
func (s3a *S3ApiServer) createMultipartSSES3DecryptedReaderDirect(ctx context.Context, encryptedStream io.ReadCloser, entry *filer_pb.Entry) (io.Reader, error) { |
|
|
// Sort chunks by offset to ensure correct order
|
|
|
// Sort chunks by offset to ensure correct order
|
|
|
chunks := entry.GetChunks() |
|
|
chunks := entry.GetChunks() |
|
|
|