Skip to content

Commit

Permalink
JCLOUDS-1640: Use raw query to sign S3 V2 request
Browse files Browse the repository at this point in the history
This prevents errors when listing objects with % in the key names.
Found via S3Proxy AwsSdkTest.testSpecialCharacters.
  • Loading branch information
gaul committed Dec 23, 2024
1 parent 176d3d4 commit 07a4ed7
Showing 1 changed file with 1 addition and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ void appendUriPath(HttpRequest request, StringBuilder toSign) {
// ...however, there are a few exceptions that must be included in the
// signed URI.
if (request.getEndpoint().getQuery() != null) {
Multimap<String, String> params = queryParser().apply(request.getEndpoint().getQuery());
Multimap<String, String> params = queryParser().apply(request.getEndpoint().getRawQuery());
char separator = '?';
for (String paramName : Ordering.natural().sortedCopy(params.keySet())) {
// Skip any parameters that aren't part of the canonical signed string
Expand Down

0 comments on commit 07a4ed7

Please sign in to comment.