summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/inspircd.cpp4
-rw-r--r--src/modules/extra/m_ssl_gnutls.cpp3
-rw-r--r--src/modules/extra/m_ssl_openssl.cpp3
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");
}
}
}