diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/inspircd.cpp | 4 | ||||
-rw-r--r-- | src/modules/extra/m_ssl_gnutls.cpp | 3 | ||||
-rw-r--r-- | src/modules/extra/m_ssl_openssl.cpp | 3 |
3 files changed, 8 insertions, 2 deletions
diff --git a/src/inspircd.cpp b/src/inspircd.cpp index 1509553ce..0bdffba64 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -80,8 +80,12 @@ void InspIRCd::Cleanup() int MyModCount = this->GetModuleCount(); for (unsigned int i = 0; i < stats->BoundPortCount; i++) + { /* This calls the constructor and closes the listening socket */ delete Config->openSockfd[i]; + Config->openSockfd[i] = NULL; + } + stats->BoundPortCount = 0; /* We do this more than once, so that any service providers get a * chance to be unhooked by the modules using them, but then get diff --git a/src/modules/extra/m_ssl_gnutls.cpp b/src/modules/extra/m_ssl_gnutls.cpp index 9eec655f7..808c748cc 100644 --- a/src/modules/extra/m_ssl_gnutls.cpp +++ b/src/modules/extra/m_ssl_gnutls.cpp @@ -263,7 +263,8 @@ class ModuleSSLGnuTLS : public Module ServerInstance->Config->DelIOHook(listenports[i]); for (unsigned int j = 0; j < ServerInstance->stats->BoundPortCount; j++) if (ServerInstance->Config->ports[j] == listenports[i]) - ServerInstance->Config->openSockfd[j]->SetDescription("plaintext"); + if (ServerInstance->Config->openSockfd[j]) + ServerInstance->Config->openSockfd[j]->SetDescription("plaintext"); } } } diff --git a/src/modules/extra/m_ssl_openssl.cpp b/src/modules/extra/m_ssl_openssl.cpp index 7ad78e2ea..f46f04988 100644 --- a/src/modules/extra/m_ssl_openssl.cpp +++ b/src/modules/extra/m_ssl_openssl.cpp @@ -297,7 +297,8 @@ class ModuleSSLOpenSSL : public Module ServerInstance->Config->DelIOHook(listenports[i]); for (unsigned int j = 0; j < ServerInstance->stats->BoundPortCount; j++) if (ServerInstance->Config->ports[j] == listenports[i]) - ServerInstance->Config->openSockfd[j]->SetDescription("plaintext"); + if (ServerInstance->Config->openSockfd[j]) + ServerInstance->Config->openSockfd[j]->SetDescription("plaintext"); } } } |