diff options
| author | 2025-04-28 11:20:24 +0000 | |
|---|---|---|
| committer | 2025-04-28 11:20:24 +0000 | |
| commit | 436765a6a2ddf400b6e06c9a7c3283b1351fcbcd (patch) | |
| tree | c1a0e969c23a74eaca258c709db1776763d576dd /vendor/github.com/minio/minio-go/v7/pkg/signer/request-signature-v4.go | |
| parent | [chore] Update build to use new woodpecker dind container, bump version numbe... (diff) | |
| download | gotosocial-436765a6a2ddf400b6e06c9a7c3283b1351fcbcd.tar.xz | |
bump dependencies: minio-go, go-sqlite3, goldmark, otel, x/image/webp (#4075)
Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4075
Co-authored-by: kim <grufwub@gmail.com>
Co-committed-by: kim <grufwub@gmail.com>
Diffstat (limited to 'vendor/github.com/minio/minio-go/v7/pkg/signer/request-signature-v4.go')
| -rw-r--r-- | vendor/github.com/minio/minio-go/v7/pkg/signer/request-signature-v4.go | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/vendor/github.com/minio/minio-go/v7/pkg/signer/request-signature-v4.go b/vendor/github.com/minio/minio-go/v7/pkg/signer/request-signature-v4.go index 09ece53a0..2842899b9 100644 --- a/vendor/github.com/minio/minio-go/v7/pkg/signer/request-signature-v4.go +++ b/vendor/github.com/minio/minio-go/v7/pkg/signer/request-signature-v4.go @@ -333,11 +333,34 @@ func signV4(req http.Request, accessKeyID, secretAccessKey, sessionToken, locati if len(trailer) > 0 { // Use custom chunked encoding. req.Trailer = trailer - return StreamingUnsignedV4(&req, sessionToken, req.ContentLength, time.Now().UTC()) + return StreamingUnsignedV4(&req, sessionToken, req.ContentLength, t) } return &req } +// UnsignedTrailer will do chunked encoding with a custom trailer. +func UnsignedTrailer(req http.Request, trailer http.Header) *http.Request { + if len(trailer) == 0 { + return &req + } + // Initial time. + t := time.Now().UTC() + + // Set x-amz-date. + req.Header.Set("X-Amz-Date", t.Format(iso8601DateFormat)) + + for k := range trailer { + req.Header.Add("X-Amz-Trailer", strings.ToLower(k)) + } + + req.Header.Set("Content-Encoding", "aws-chunked") + req.Header.Set("x-amz-decoded-content-length", strconv.FormatInt(req.ContentLength, 10)) + + // Use custom chunked encoding. + req.Trailer = trailer + return StreamingUnsignedV4(&req, "", req.ContentLength, t) +} + // SignV4 sign the request before Do(), in accordance with // http://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html. func SignV4(req http.Request, accessKeyID, secretAccessKey, sessionToken, location string) *http.Request { |
