Bug #45789
openrgw/s3 transfer encoding problems.
0%
Description
rgw has a variety of problems dealing with "transfer-encoding: chunked".
/1/ Unconditionally rejects putobj w/o "content-length".
/2/ does not handle boto2 chunked encoding. boto2 emits weird chunk headers, which the current civetweb new rejects.
/3/ rgw w/ civetweb, when given invalid chunk encoding, leaves the input stream positioned in the midst of the bad data, then tries to read another request out of this. This errors out, generates a 500 error inside of civetweb, and no log message in rgw.
This set of problems occurs in both master & newer versions of luminous.
Updated by Marcus Watts almost 4 years ago
I have a fix for most of this, at least for civetweb, coded up for master, which I hope to post shortly.
Updated by Marcus Watts almost 4 years ago
I have posted 2 PRs to address this,
https://github.com/ceph/ceph/pull/35350
https://github.com/ceph/civetweb/pull/35
some of these issues also apply to beast - I don't yet have a fix for those, will probably be another PR or so.
Updated by Casey Bodley almost 4 years ago
- Status changed from New to In Progress
- Assignee set to Marcus Watts
Updated by Casey Bodley about 1 year ago
- Status changed from In Progress to Pending Backport
- Backport set to pacific quincy reef
Updated by Backport Bot about 1 year ago
- Copied to Backport #59376: quincy: rgw/s3 transfer encoding problems. added
Updated by Backport Bot about 1 year ago
- Copied to Backport #59377: reef: rgw/s3 transfer encoding problems. added
Updated by Backport Bot about 1 year ago
- Copied to Backport #59378: pacific: rgw/s3 transfer encoding problems. added