From 8aa0f02dd43505cbb1f0ed38c540b8d5ecdcc6d3 Mon Sep 17 00:00:00 2001 From: yuliyang_yewu Date: Tue, 17 Aug 2021 11:04:02 +0800 Subject: [PATCH] rgw: fix sts memory leak fix https://tracker.ceph.com/issues/52290 Signed-off-by: yuliyang_yewu (cherry picked from commit ef921bcdaa78d33ed0611a60ec58826d8e6ccb45) --- src/rgw/rgw_rest_s3.cc | 2 +- src/rgw/rgw_sts.cc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rgw/rgw_rest_s3.cc b/src/rgw/rgw_rest_s3.cc index 204706b4bee9d..33ec35c1cfa85 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 741c16d397c01..bb125cdc60b31 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; -- 2.47.3