diff options
-rw-r--r-- | src/rgw/rgw_main.cc | 1 | ||||
-rw-r--r-- | src/rgw/rgw_resolve.cc | 5 | ||||
-rw-r--r-- | src/rgw/rgw_resolve.h | 3 |
3 files changed, 8 insertions, 1 deletions
diff --git a/src/rgw/rgw_main.cc b/src/rgw/rgw_main.cc index 8d43ff4799a..5270f21be22 100644 --- a/src/rgw/rgw_main.cc +++ b/src/rgw/rgw_main.cc @@ -606,6 +606,7 @@ int main(int argc, const char **argv) RGWStoreManager::close_storage(store); rgw_tools_cleanup(); + rgw_shutdown_resolver(); curl_global_cleanup(); dout(1) << "final shutdown" << dendl; diff --git a/src/rgw/rgw_resolve.cc b/src/rgw/rgw_resolve.cc index adbff3f4318..9a8b14b2e01 100644 --- a/src/rgw/rgw_resolve.cc +++ b/src/rgw/rgw_resolve.cc @@ -170,3 +170,8 @@ void rgw_init_resolver() { rgw_resolver = new RGWResolver(); } + +void rgw_shutdown_resolver() +{ + delete rgw_resolver; +} diff --git a/src/rgw/rgw_resolve.h b/src/rgw/rgw_resolve.h index 164a31a0215..3b29ba580fe 100644 --- a/src/rgw/rgw_resolve.h +++ b/src/rgw/rgw_resolve.h @@ -8,14 +8,15 @@ class RGWDNSResolver; class RGWResolver { RGWDNSResolver *resolver; - ~RGWResolver(); public: + ~RGWResolver(); RGWResolver(); int resolve_cname(const string& hostname, string& cname, bool *found); }; extern void rgw_init_resolver(void); +extern void rgw_shutdown_resolver(void); extern RGWResolver *rgw_resolver; #endif |