Since these are sent as a part of a POST request which is usually urlencoded,
the json parser would later return invalid json for jsons containing whitespace
Fixes: https://tracker.ceph.com/issues/41189
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
int RGWPutUserPolicy::get_params()
{
- policy_name = s->info.args.get("PolicyName");
- user_name = s->info.args.get("UserName");
- policy = s->info.args.get("PolicyDocument");
+ policy_name = url_decode(s->info.args.get("PolicyName"), true);
+ user_name = url_decode(s->info.args.get("UserName"), true);
+ policy = url_decode(s->info.args.get("PolicyDocument"), true);
if (policy_name.empty() || user_name.empty() || policy.empty()) {
ldout(s->cct, 20) << "ERROR: one of policy name, user name or policy document is empty"