From 0778298f5ed97db050fdae11a55d83add3df334e Mon Sep 17 00:00:00 2001 From: chrislu Date: Tue, 15 Jul 2025 08:20:33 -0700 Subject: [PATCH] simplify --- weed/s3api/chunked_reader_v4.go | 38 ++++++++++++++++----------------- 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/weed/s3api/chunked_reader_v4.go b/weed/s3api/chunked_reader_v4.go index f5de7130b..53ea8e768 100644 --- a/weed/s3api/chunked_reader_v4.go +++ b/weed/s3api/chunked_reader_v4.go @@ -104,34 +104,32 @@ func (iam *IdentityAccessManagement) calculateSeedSignature(r *http.Request) (cr } // Parse date header. - if date, err := time.Parse(iso8601Format, dateStr); err != nil { + date, err := time.Parse(iso8601Format, dateStr) + if err != nil { return nil, "", "", time.Time{}, s3err.ErrMalformedDate - } else { - // Query string. - queryStr := req.URL.Query().Encode() - - // Get canonical request. - canonicalRequest := getCanonicalRequest(extractedSignedHeaders, payload, queryStr, req.URL.Path, req.Method) + } + // Query string. + queryStr := req.URL.Query().Encode() - // Get string to sign from canonical request. - stringToSign := getStringToSign(canonicalRequest, date, signV4Values.Credential.getScope()) + // Get canonical request. + canonicalRequest := getCanonicalRequest(extractedSignedHeaders, payload, queryStr, req.URL.Path, req.Method) - // Get hmac signing key. - signingKey := getSigningKey(cred.SecretKey, signV4Values.Credential.scope.date.Format(yyyymmdd), region, "s3") + // Get string to sign from canonical request. + stringToSign := getStringToSign(canonicalRequest, date, signV4Values.Credential.getScope()) - // Calculate signature. - newSignature := getSignature(signingKey, stringToSign) + // Get hmac signing key. + signingKey := getSigningKey(cred.SecretKey, signV4Values.Credential.scope.date.Format(yyyymmdd), region, "s3") - // Verify if signature match. - if !compareSignatureV4(newSignature, signV4Values.Signature) { - return nil, "", "", time.Time{}, s3err.ErrSignatureDoesNotMatch - } + // Calculate signature. + newSignature := getSignature(signingKey, stringToSign) - // Return calculated signature. - return cred, newSignature, region, date, s3err.ErrNone + // Verify if signature match. + if !compareSignatureV4(newSignature, signV4Values.Signature) { + return nil, "", "", time.Time{}, s3err.ErrSignatureDoesNotMatch } - return cred, signature, region, date, s3err.ErrNone + // Return calculated signature. + return cred, newSignature, region, date, s3err.ErrNone } const maxLineLength = 4 * humanize.KiByte // assumed <= bufio.defaultBufSize 4KiB