summaryrefslogtreecommitdiff
path: root/src/inspircd.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-11-04 13:20:42 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-11-04 13:20:42 +0000
commit026c55cafc2c8e33f4119cec3dbdd04ecdc897cd (patch)
treebc9aa0185fcb74adcf59153b830612ab170f5555 /src/inspircd.cpp
parente53d30bc6d4c3b002f08569b68affa540104d5cf (diff)
As requested by satmd, inspircd will now run with no client ports configured
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5643 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/inspircd.cpp')
-rw-r--r--src/inspircd.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/inspircd.cpp b/src/inspircd.cpp
index 7f261f079..dc4986755 100644
--- a/src/inspircd.cpp
+++ b/src/inspircd.cpp
@@ -182,6 +182,8 @@ std::string InspIRCd::GetRevision()
InspIRCd::InspIRCd(int argc, char** argv)
: ModCount(-1), duration_m(60), duration_h(60*60), duration_d(60*60*24), duration_w(60*60*24*7), duration_y(60*60*24*365)
{
+ int found_ports = 0;
+
modules.resize(255);
factory.resize(255);
@@ -257,7 +259,7 @@ InspIRCd::InspIRCd(int argc, char** argv)
this->AddServerName(Config->ServerName);
CheckDie();
InitializeDisabledCommands(Config->DisabledCommands, this);
- stats->BoundPortCount = BindPorts(true);
+ stats->BoundPortCount = BindPorts(true, found_ports);
for(int t = 0; t < 255; t++)
Config->global_implementation[t] = 0;
@@ -288,11 +290,16 @@ InspIRCd::InspIRCd(int argc, char** argv)
/* Just in case no modules were loaded - fix for bug #101 */
this->BuildISupport();
- if (!stats->BoundPortCount)
+ if ((stats->BoundPortCount == 0) && (found_ports > 0))
{
printf("\nERROR: I couldn't bind any ports! Are you sure you didn't start InspIRCd twice?\n");
Exit(ERROR);
}
+
+ if (stats->BoundPortCount != (unsigned int)found_ports)
+ {
+ printf("\nWARNING: Not all your ports could be bound -- starting anyway with %ld of %d ports bound.\n", stats->BoundPortCount, found_ports);
+ }
/* Add the listening sockets used for client inbound connections
* to the socket engine