From: yuliyang_yewu Date: Tue, 17 Aug 2021 03:04:02 +0000 (+0800) Subject: rgw: fix sts memory leak X-Git-Tag: v16.2.7~101^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8aa0f02dd43505cbb1f0ed38c540b8d5ecdcc6d3;p=ceph.git rgw: fix sts memory leak fix https://tracker.ceph.com/issues/52290 Signed-off-by: yuliyang_yewu (cherry picked from commit ef921bcdaa78d33ed0611a60ec58826d8e6ccb45) --- diff --git a/src/rgw/rgw_rest_s3.cc b/src/rgw/rgw_rest_s3.cc index 204706b4bee9..33ec35c1cfa8 100644 --- a/src/rgw/rgw_rest_s3.cc +++ b/src/rgw/rgw_rest_s3.cc @@ -5820,7 +5820,7 @@ rgw::auth::s3::STSEngine::get_session_token(const DoutPrefixProvider* dpp, const return -EINVAL; } string error; - auto* keyhandler = cryptohandler->get_key_handler(secret, error); + std::unique_ptr keyhandler(cryptohandler->get_key_handler(secret, error)); if (! keyhandler) { return -EINVAL; } diff --git a/src/rgw/rgw_sts.cc b/src/rgw/rgw_sts.cc index 741c16d397c0..bb125cdc60b3 100644 --- a/src/rgw/rgw_sts.cc +++ b/src/rgw/rgw_sts.cc @@ -79,7 +79,7 @@ int Credentials::generateCredentials(CephContext* cct, return ret; } string error; - auto* keyhandler = cryptohandler->get_key_handler(secret, error); + std::unique_ptr keyhandler(cryptohandler->get_key_handler(secret, error)); if (! keyhandler) { ldout(cct, 0) << "ERROR: No Key handler found !" << dendl; return -EINVAL;