From: Matt Benjamin Date: Fri, 19 Oct 2018 20:40:19 +0000 (-0400) Subject: rgw: distinguish parse_v4_credentials X-Git-Tag: v12.2.12~86^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=dd7d957a51fc0ac8b16e66f8baaba9339f2bda78;p=ceph.git rgw: distinguish parse_v4_credentials The caller and callees of this method are v4-specific, and their names contain a v4 infix. Signed-off-by: Matt Benjamin (cherry picked from commit aa8c686da10ce1211a706f3519757045dfe34bed) Conflicts: src/rgw/rgw_auth_s3.cc src/rgw/rgw_auth_s3.h src/rgw/rgw_rest_s3.cc - Included v4 infix in 'parse_credentials()' and removed "session_token" param from definition, declaration and call of 'parse_v4_credentials()'. --- diff --git a/src/rgw/rgw_auth_s3.cc b/src/rgw/rgw_auth_s3.cc index 0904e825520..2864f8a8cec 100644 --- a/src/rgw/rgw_auth_s3.cc +++ b/src/rgw/rgw_auth_s3.cc @@ -412,13 +412,13 @@ static inline int parse_v4_auth_header(const req_info& info, /* in return 0; } -int parse_credentials(const req_info& info, /* in */ - boost::string_view& access_key_id, /* out */ - boost::string_view& credential_scope, /* out */ - boost::string_view& signedheaders, /* out */ - boost::string_view& signature, /* out */ - boost::string_view& date, /* out */ - bool& using_qs) /* out */ +int parse_v4_credentials(const req_info& info, /* in */ + boost::string_view& access_key_id, /* out */ + boost::string_view& credential_scope, /* out */ + boost::string_view& signedheaders, /* out */ + boost::string_view& signature, /* out */ + boost::string_view& date, /* out */ + bool& using_qs) /* out */ { const char* const http_auth = info.env->get("HTTP_AUTHORIZATION"); using_qs = http_auth == nullptr || http_auth[0] == '\0'; diff --git a/src/rgw/rgw_auth_s3.h b/src/rgw/rgw_auth_s3.h index 6f860a72a2e..5f6f70a7c66 100644 --- a/src/rgw/rgw_auth_s3.h +++ b/src/rgw/rgw_auth_s3.h @@ -381,13 +381,13 @@ static constexpr char AWS4_UNSIGNED_PAYLOAD_HASH[] = "UNSIGNED-PAYLOAD"; static constexpr char AWS4_STREAMING_PAYLOAD_HASH[] = \ "STREAMING-AWS4-HMAC-SHA256-PAYLOAD"; -int parse_credentials(const req_info& info, /* in */ - boost::string_view& access_key_id, /* out */ - boost::string_view& credential_scope, /* out */ - boost::string_view& signedheaders, /* out */ - boost::string_view& signature, /* out */ - boost::string_view& date, /* out */ - bool& using_qs); /* out */ +int parse_v4_credentials(const req_info& info, /* in */ + boost::string_view& access_key_id, /* out */ + boost::string_view& credential_scope, /* out */ + boost::string_view& signedheaders, /* out */ + boost::string_view& signature, /* out */ + boost::string_view& date, /* out */ + bool& using_qs); /* out */ static inline std::string get_v4_canonical_uri(const req_info& info) { /* The code should normalize according to RFC 3986 but S3 does NOT do path diff --git a/src/rgw/rgw_rest_s3.cc b/src/rgw/rgw_rest_s3.cc index 3b07327f38d..7f7c7f0b0b2 100644 --- a/src/rgw/rgw_rest_s3.cc +++ b/src/rgw/rgw_rest_s3.cc @@ -3736,13 +3736,13 @@ AWSGeneralAbstractor::get_auth_data_v4(const req_state* const s, boost::string_view credential_scope; boost::string_view client_signature; - int ret = rgw::auth::s3::parse_credentials(s->info, - access_key_id, - credential_scope, - signed_hdrs, - client_signature, - date, - using_qs); + int ret = rgw::auth::s3::parse_v4_credentials(s->info, + access_key_id, + credential_scope, + signed_hdrs, + client_signature, + date, + using_qs); if (ret < 0) { throw ret; }