diff options
| author | 2020-10-31 20:03:19 +0000 | |
|---|---|---|
| committer | 2020-10-31 22:33:35 +0000 | |
| commit | 441bd151da733d32e194de6e4a1744ae273b83ee (patch) | |
| tree | 74eb1ee2aef413185bf3906a17f1b2c27373e03a /src/modules/extra | |
| parent | Fix reading the <sslprofile> config. (diff) | |
Add stdalgo::iterator_range and switch config tag reading to use it.
This allows us to use range-based for loops which were not possible
with the previous config tag system.
Diffstat (limited to 'src/modules/extra')
| -rw-r--r-- | src/modules/extra/m_ldap.cpp | 5 | ||||
| -rw-r--r-- | src/modules/extra/m_mysql.cpp | 11 | ||||
| -rw-r--r-- | src/modules/extra/m_pgsql.cpp | 11 | ||||
| -rw-r--r-- | src/modules/extra/m_sqlite3.cpp | 11 | ||||
| -rw-r--r-- | src/modules/extra/m_ssl_gnutls.cpp | 5 | ||||
| -rw-r--r-- | src/modules/extra/m_ssl_mbedtls.cpp | 5 | ||||
| -rw-r--r-- | src/modules/extra/m_ssl_openssl.cpp | 5 |
7 files changed, 25 insertions, 28 deletions
diff --git a/src/modules/extra/m_ldap.cpp b/src/modules/extra/m_ldap.cpp index 503ef4b3c..0f3ac68d6 100644 --- a/src/modules/extra/m_ldap.cpp +++ b/src/modules/extra/m_ldap.cpp @@ -545,11 +545,8 @@ class ModuleLDAP : public Module { ServiceMap conns; - ConfigTagList tags = ServerInstance->Config->ConfTags("database"); - for (ConfigIter i = tags.first; i != tags.second; i++) + for (auto& [_, tag] : ServerInstance->Config->ConfTags("database")) { - const reference<ConfigTag>& tag = i->second; - if (!stdalgo::string::equalsci(tag->getString("module"), "ldap")) continue; diff --git a/src/modules/extra/m_mysql.cpp b/src/modules/extra/m_mysql.cpp index 622bb7e24..40d3f107a 100644 --- a/src/modules/extra/m_mysql.cpp +++ b/src/modules/extra/m_mysql.cpp @@ -467,16 +467,17 @@ ModuleSQL::~ModuleSQL() void ModuleSQL::ReadConfig(ConfigStatus& status) { ConnMap conns; - ConfigTagList tags = ServerInstance->Config->ConfTags("database"); - for(ConfigIter i = tags.first; i != tags.second; i++) + + for (auto& [_, tag] : ServerInstance->Config->ConfTags("database")) { - if (!stdalgo::string::equalsci(i->second->getString("module"), "mysql")) + if (!stdalgo::string::equalsci(tag->getString("module"), "mysql")) continue; - std::string id = i->second->getString("id"); + + std::string id = tag->getString("id"); ConnMap::iterator curr = connections.find(id); if (curr == connections.end()) { - SQLConnection* conn = new SQLConnection(this, i->second); + SQLConnection* conn = new SQLConnection(this, tag); conns.insert(std::make_pair(id, conn)); ServerInstance->Modules.AddService(*conn); } diff --git a/src/modules/extra/m_pgsql.cpp b/src/modules/extra/m_pgsql.cpp index dc9be948e..cb5c492bf 100644 --- a/src/modules/extra/m_pgsql.cpp +++ b/src/modules/extra/m_pgsql.cpp @@ -546,16 +546,17 @@ class ModulePgSQL : public Module void ReadConf() { ConnMap conns; - ConfigTagList tags = ServerInstance->Config->ConfTags("database"); - for(ConfigIter i = tags.first; i != tags.second; i++) + + for (auto& [_, tag] : ServerInstance->Config->ConfTags("database")) { - if (!stdalgo::string::equalsci(i->second->getString("module"), "pgsql")) + if (!stdalgo::string::equalsci(tag->getString("module"), "pgsql")) continue; - std::string id = i->second->getString("id"); + + std::string id = tag->getString("id"); ConnMap::iterator curr = connections.find(id); if (curr == connections.end()) { - SQLConn* conn = new SQLConn(this, i->second); + SQLConn* conn = new SQLConn(this, tag); if (conn->status != DEAD) { conns.insert(std::make_pair(id, conn)); diff --git a/src/modules/extra/m_sqlite3.cpp b/src/modules/extra/m_sqlite3.cpp index b0cd39588..bf11f25e3 100644 --- a/src/modules/extra/m_sqlite3.cpp +++ b/src/modules/extra/m_sqlite3.cpp @@ -256,13 +256,14 @@ class ModuleSQLite3 : public Module void ReadConfig(ConfigStatus& status) override { ClearConns(); - ConfigTagList tags = ServerInstance->Config->ConfTags("database"); - for(ConfigIter i = tags.first; i != tags.second; i++) + + for (auto& [_, tag] : ServerInstance->Config->ConfTags("database")) { - if (!stdalgo::string::equalsci(i->second->getString("module"), "sqlite")) + if (!stdalgo::string::equalsci(tag->getString("module"), "sqlite")) continue; - SQLConn* conn = new SQLConn(this, i->second); - conns.insert(std::make_pair(i->second->getString("id"), conn)); + + SQLConn* conn = new SQLConn(this, tag); + conns.insert(std::make_pair(tag->getString("id"), conn)); ServerInstance->Modules.AddService(*conn); } } diff --git a/src/modules/extra/m_ssl_gnutls.cpp b/src/modules/extra/m_ssl_gnutls.cpp index 5b921cbd4..da40e6e34 100644 --- a/src/modules/extra/m_ssl_gnutls.cpp +++ b/src/modules/extra/m_ssl_gnutls.cpp @@ -1126,12 +1126,11 @@ class ModuleSSLGnuTLS : public Module ProfileList newprofiles; ConfigTagList tags = ServerInstance->Config->ConfTags("sslprofile"); - if (tags.first == tags.second) + if (tags.empty()) throw ModuleException("You have not specified any <sslprofile> tags that are usable by this module!"); - for (ConfigIter i = tags.first; i != tags.second; ++i) + for (auto& [_, tag] : tags) { - ConfigTag* tag = i->second; if (!stdalgo::string::equalsci(tag->getString("provider"), "gnutls")) { ServerInstance->Logs.Log(MODNAME, LOG_DEFAULT, "Ignoring non-GnuTLS <sslprofile> tag at " + tag->getTagLocation()); diff --git a/src/modules/extra/m_ssl_mbedtls.cpp b/src/modules/extra/m_ssl_mbedtls.cpp index c5208cf03..67246ce76 100644 --- a/src/modules/extra/m_ssl_mbedtls.cpp +++ b/src/modules/extra/m_ssl_mbedtls.cpp @@ -859,12 +859,11 @@ class ModuleSSLmbedTLS : public Module ProfileList newprofiles; ConfigTagList tags = ServerInstance->Config->ConfTags("sslprofile"); - if (tags.first == tags.second) + if (tags.empty()) throw ModuleException("You have not specified any <sslprofile> tags that are usable by this module!"); - for (ConfigIter i = tags.first; i != tags.second; ++i) + for (auto& [_, tag] : tags) { - ConfigTag* tag = i->second; if (!stdalgo::string::equalsci(tag->getString("provider"), "mbedtls")) { ServerInstance->Logs.Log(MODNAME, LOG_DEFAULT, "Ignoring non-mbedTLS <sslprofile> tag at " + tag->getTagLocation()); diff --git a/src/modules/extra/m_ssl_openssl.cpp b/src/modules/extra/m_ssl_openssl.cpp index 3f517348d..401dfaeb1 100644 --- a/src/modules/extra/m_ssl_openssl.cpp +++ b/src/modules/extra/m_ssl_openssl.cpp @@ -906,12 +906,11 @@ class ModuleSSLOpenSSL : public Module { ProfileList newprofiles; ConfigTagList tags = ServerInstance->Config->ConfTags("sslprofile"); - if (tags.first == tags.second) + if (tags.empty()) throw ModuleException("You have not specified any <sslprofile> tags that are usable by this module!"); - for (ConfigIter i = tags.first; i != tags.second; ++i) + for (auto& [_, tag] : tags) { - ConfigTag* tag = i->second; if (!stdalgo::string::equalsci(tag->getString("provider"), "openssl")) { ServerInstance->Logs.Log(MODNAME, LOG_DEFAULT, "Ignoring non-OpenSSL <sslprofile> tag at " + tag->getTagLocation()); |
