Browse Source

simplify

pull/6989/head
chrislu 3 months ago
parent
commit
0778298f5e
  1. 38
      weed/s3api/chunked_reader_v4.go

38
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

Loading…
Cancel
Save