From: Javier M. Mellid Date: Sat, 23 Jan 2016 20:46:51 +0000 (+0100) Subject: rgw: fix host field in canonical headers under qs X-Git-Tag: v10.1.0~351^2^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=e9917a66d42b1900c0ce73f6748e9bc5187d8cd0;p=ceph.git rgw: fix host field in canonical headers under qs Signed-off-by: Javier M. Mellid --- diff --git a/src/rgw/rgw_rest_s3.cc b/src/rgw/rgw_rest_s3.cc index 2ff9f4bb29af..e977166e47f8 100644 --- a/src/rgw/rgw_rest_s3.cc +++ b/src/rgw/rgw_rest_s3.cc @@ -3157,6 +3157,7 @@ int RGW_Auth_S3::authorize_v4(RGWRados *store, struct req_state *s) map canonical_hdrs_map; istringstream sh(s->aws4_auth->signedheaders); string token; + string port = s->info.env->get("SERVER_PORT"); while (getline(sh, token, ';')) { string token_env = "HTTP_" + token; @@ -3182,6 +3183,8 @@ int RGW_Auth_S3::authorize_v4(RGWRados *store, struct req_state *s) } } string token_value = string(t); + if (using_qs && (token == "host")) + token_value = token_value + ":" + port; canonical_hdrs_map[token] = rgw_trim_whitespace(token_value); }