--- smsdaemon/embedded-http/embeddedhttp.cpp 2010/04/27 21:12:11 679 +++ smsdaemon/embedded-http/embeddedhttp.cpp 2010/04/28 07:38:39 680 @@ -7,8 +7,9 @@ #include "Logger.h" #include "version.h" #include "Common.h" +#include "ConfigFile.h" #include - +#include void show_secret(struct mg_connection *conn, const struct mg_request_info *request_info, void *user_data) { Common* cmn = Common::instance(); @@ -45,16 +46,30 @@ } void EmbeddedHttp::startServer() { - Logger::logMessage("Starting mongoose embedded http engine"); - - m_context = mg_start(); - mg_set_option(m_context, "ports", "8080"); - mg_set_uri_callback(m_context, "/", &show_index, 0); - mg_set_uri_callback(m_context, "/status", &show_secret, 0); + std::string portStr = Common::instance()->GetConfigfile()->GetValue("smsdaemon", "httpport"); + int port = atoi( portStr.c_str() ); + if (port > 0) { + std::ostringstream oss; + oss << "Starting mongoose embedded http engine (listenin on port " << port << ")"; + Logger::logMessage( oss.str() ); + + oss.str(""); //empty string stream + oss << port; + + m_context = mg_start(); + mg_set_option(m_context, "ports", oss.str().c_str() ); + mg_set_uri_callback(m_context, "/", &show_index, 0); + mg_set_uri_callback(m_context, "/status", &show_secret, 0); + } else { + Logger::logMessage( "Mongoose http disabled" ); + m_context = 0; + } } void EmbeddedHttp::stopServer() { - mg_stop(m_context); + if (m_context != 0) { + mg_stop(m_context); + } }