Huang Kuan Hao created HDDS-15809:
-------------------------------------

             Summary: UploadPartCopy does not validate x-amz-copy-source-range 
and returns InvalidRequest instead of InvalidRange
                 Key: HDDS-15809
                 URL: https://issues.apache.org/jira/browse/HDDS-15809
             Project: Apache Ozone
          Issue Type: Sub-task
            Reporter: Huang Kuan Hao
            Assignee: Huang Kuan Hao


Two Ceph s3-tests fail because UploadPartCopy does not validate the 
\{{x-amz-copy-source-range}} header against the source object. The range string 
reaches the S3 Gateway unchanged, so this is purely a server-side 
response/validation gap.

Failing Ceph s3-tests (2):
- test_multipart_copy_invalid_range
- test_multipart_copy_improper_range

test_multipart_copy_invalid_range — source object is 5 bytes, request sends 
\{{CopySourceRange: bytes=0-21}} (end past the source size).
- Expected (AWS): HTTP 400/416 with error code \{{InvalidRange}}.
- Ozone: HTTP 400 with error code \{{InvalidRequest}}.

test_multipart_copy_improper_range — source object is 5 bytes, request sends 
malformed ranges: \{{0-2}} (missing \{{bytes=}}), \{{bytes=0}} (no end), 
\{{bytes=hello-world}}, \{{bytes=0-bar}}, \{{bytes=hello-}}, \{{bytes=0-2,3-5}} 
(multiple ranges).
- Expected (AWS): each returns HTTP 400 with error code \{{InvalidArgument}}.
- Ozone: no error is raised at all (ClientError not raised).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to