summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/WebAdmin.cpp24
-rw-r--r--src/WebAdmin.h3
2 files changed, 27 insertions, 0 deletions
diff --git a/src/WebAdmin.cpp b/src/WebAdmin.cpp
index 39b935fbd..775dc1860 100644
--- a/src/WebAdmin.cpp
+++ b/src/WebAdmin.cpp
@@ -190,6 +190,13 @@ void cWebAdmin::Reload(void)
" This will not take effect until you restart the server."
);
}
+ else if (!HasUsers())
+ {
+ LOGWARNING(
+ "The webadmin is enabled but has no users configured."
+ " To add new users, edit webadmin.ini"
+ );
+ }
// Initialize the WebAdmin template script and reload the file:
if (m_TemplateScript.IsValid())
@@ -248,6 +255,23 @@ bool cWebAdmin::LoadIniFile(void)
+bool cWebAdmin::HasUsers()
+{
+ for (int i = 0; i < m_IniFile.GetNumKeys(); i++)
+ {
+ AString key = m_IniFile.GetKeyName(i);
+ if (key.rfind("User:", 0) == 0)
+ {
+ return true;
+ }
+ }
+ return false;
+}
+
+
+
+
+
void cWebAdmin::HandleWebadminRequest(cHTTPServerConnection & a_Connection, cHTTPIncomingRequest & a_Request)
{
if (!a_Request.HasAuth())
diff --git a/src/WebAdmin.h b/src/WebAdmin.h
index 682c533b2..a90d7b2d0 100644
--- a/src/WebAdmin.h
+++ b/src/WebAdmin.h
@@ -260,6 +260,9 @@ protected:
Returns true if webadmin is enabled, false if disabled. */
bool LoadIniFile(void);
+ /** Checks inside the webadmin.ini file if there are users configured. */
+ bool HasUsers();
+
/** Handles requests coming to the "/webadmin" or "/~webadmin" URLs */
void HandleWebadminRequest(cHTTPServerConnection & a_Connection, cHTTPIncomingRequest & a_Request);