summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2011-01-21 23:01:48 -0500
committerAdam <Adam@anope.org>2011-01-21 23:01:48 -0500
commita162f1d18e1807a4d6e6fc8bf1535f946d0c6440 (patch)
tree59def7adf81b7c823233754c95522ff6f75c8d86 /src
parenta86873c93e6cb4f1c5ddae6ba9cd26c2943b0218 (diff)
Bug #1234 - Fix reading resolv.conf if it has multiple spaces or tabs
Diffstat (limited to 'src')
-rw-r--r--src/config.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/config.cpp b/src/config.cpp
index dac22f5ab..17659bc02 100644
--- a/src/config.cpp
+++ b/src/config.cpp
@@ -353,14 +353,18 @@ ServerConfig::ServerConfig() : errstr(""), config_data(), NSDefFlags(NickCoreFla
while (f.is_open() && getline(f, server.str()))
{
- if (server.find("nameserver ") == 0)
+ if (server.find("nameserver") == 0)
{
- if (server.substr(11).is_pos_number_only())
+ size_t ip = server.find_first_of("123456789");
+ if (ip != Anope::string::npos)
{
- this->NameServer = server.substr(11);
- Log(LOG_DEBUG) << "Nameserver set to " << this->NameServer;
- success = true;
- break;
+ if (server.substr(ip).is_pos_number_only())
+ {
+ this->NameServer = server.substr(ip);
+ Log(LOG_DEBUG) << "Nameserver set to " << this->NameServer;
+ success = true;
+ break;
+ }
}
}
}