diff --git a/src/nhttpd/tuxboxapi/coolstream/neutrinoyparser.cpp b/src/nhttpd/tuxboxapi/coolstream/neutrinoyparser.cpp index 8c40f118d..63a23a9a9 100644 --- a/src/nhttpd/tuxboxapi/coolstream/neutrinoyparser.cpp +++ b/src/nhttpd/tuxboxapi/coolstream/neutrinoyparser.cpp @@ -63,7 +63,7 @@ THandleStatus CNeutrinoYParser::Hook_SendResponse(CyhookHandler *hh) init(hh); CNeutrinoYParser *yP = new CNeutrinoYParser(NeutrinoAPI); // create a Session - if(hh->UrlData["fileext"] == "yhtm") // yParser for yhtm-File + if (hh->UrlData["fileext"] == "yhtm" || hh->UrlData["fileext"] == "yjs" || hh->UrlData["fileext"] == "ysh") // yParser for y*-Files yP->ParseAndSendFile(hh); else if(hh->UrlData["path"] == "/y/") // /y/ commands { diff --git a/src/nhttpd/yconfig.h b/src/nhttpd/yconfig.h index 632efb2cf..ff913c2e2 100644 --- a/src/nhttpd/yconfig.h +++ b/src/nhttpd/yconfig.h @@ -25,7 +25,7 @@ //----------------------------------------------------------------------------- // General central Definitions //----------------------------------------------------------------------------- -#define HTTPD_VERSION "3.2.8" // Webserver version (can be overloaded) +#define HTTPD_VERSION "3.3.0" // Webserver version (can be overloaded) #define YHTTPD_VERSION "1.3.1" // Webserver version (Version of yhttpd-core!) #define IADDR_LOCAL "127.0.0.1" // local IP #define HTTPD_NAME "yhttpd" // Webserver name (can be overloaded) @@ -82,7 +82,7 @@ //============================================================================= //----------------------------------------------------------------------------- // Configurations for LINUX (Tuxbox dbox2, coolstream) -//----------------------------------------------------------------------------- +//-----------------------------------------------------------------------,js:text/plain------ #undef HTTPD_NAME #define HTTPD_NAME "nhttpd" #define HTTPD_STANDARD_PORT 80 @@ -95,7 +95,7 @@ #define UPLOAD_TMP_FILE "/tmp/upload.tmp" #define CACHE_DIR "/tmp/.cache" #define HTTPD_ERRORPAGE "/Y_ErrorPage.yhtm" -#define HTTPD_SENDFILE_EXT "htm:text/html,html:text/html,xml:text/xml,txt:text/plain,jpg:image/jpeg,jpeg:image/jpeg,gif:image/gif,png:image/png,bmp:image/bmp,css:text/css,js:text/plain,img:application/octet-stream,ico:image/x-icon,m3u:application/octet-stream,tar:application/octet-stream,gz:text/x-gzip" +#define HTTPD_SENDFILE_EXT "htm:text/html,html:text/html,xml:text/xml,txt:text/plain,jpg:image/jpeg,jpeg:image/jpeg,gif:image/gif,png:image/png,bmp:image/bmp,css:text/css,js:text/plain,yjs:text/plain,img:application/octet-stream,ico:image/x-icon,m3u:application/octet-stream,tar:application/octet-stream,gz:text/x-gzip" #define HTTPD_SENDFILE_ALL "false" #define HTTPD_LANGUAGEDIR "languages" #define HTTPD_DEFAULT_LANGUAGE "English" diff --git a/src/nhttpd/yhttpd.cpp b/src/nhttpd/yhttpd.cpp index 5292db3e7..935c92dfb 100644 --- a/src/nhttpd/yhttpd.cpp +++ b/src/nhttpd/yhttpd.cpp @@ -494,8 +494,9 @@ void Cyhttpd::ReadConfig(void) { } // configure debugging & logging if (CLogging::getInstance()->LogLevel == 0) - CLogging::getInstance()->LogLevel = Config->getInt32( - "server.log.loglevel", 0); + CLogging::getInstance()->LogLevel = Config->getInt32("server.log.loglevel", 0); + if (CLogging::getInstance()->LogLevel > 0) + CLogging::getInstance()->setDebug(true); // get variables webserver->init(Config->getInt32("WebsiteMain.port", HTTPD_STANDARD_PORT), diff --git a/src/nhttpd/yhttpd_mods/mod_sendfile.cpp b/src/nhttpd/yhttpd_mods/mod_sendfile.cpp index 2bc747cab..86326e1ae 100644 --- a/src/nhttpd/yhttpd_mods/mod_sendfile.cpp +++ b/src/nhttpd/yhttpd_mods/mod_sendfile.cpp @@ -67,7 +67,7 @@ THandleStatus CmodSendfile::Hook_PrepareResponse(CyhookHandler *hh) { log_level_printf(4, "mod_sendfile prepare hook start url:%s\n", hh->UrlData["fullurl"].c_str()); std::string mime = sendfileTypes[hh->UrlData["fileext"]]; if (((mime != "") || (hh->WebserverConfigList["mod_sendfile.sendAll"] == "true")) - && (hh->UrlData["fileext"] != "yhtm")) { + && !(hh->UrlData["fileext"] == "yhtm" || hh->UrlData["fileext"] == "yjs" || hh->UrlData["fileext"] == "ysh")) { //TODO: Check allowed directories / actually in GetFileName // build filename std::string fullfilename = GetFileName(hh, hh->UrlData["path"], diff --git a/src/nhttpd/yhttpd_mods/mod_yparser.cpp b/src/nhttpd/yhttpd_mods/mod_yparser.cpp index 7f1c746b2..3c241899d 100644 --- a/src/nhttpd/yhttpd_mods/mod_yparser.cpp +++ b/src/nhttpd/yhttpd_mods/mod_yparser.cpp @@ -81,7 +81,7 @@ THandleStatus CyParser::Hook_SendResponse(CyhookHandler *hh) { init(hh); CyParser *yP = new CyParser(); // create a Session - if (hh->UrlData["fileext"] == "yhtm") // yParser for yhtm-File + if (hh->UrlData["fileext"] == "yhtm" || hh->UrlData["fileext"] == "yjs" || hh->UrlData["fileext"] == "ysh") // yParser for y*-Files yP->ParseAndSendFile(hh); else if (hh->UrlData["path"] == "/y/") // /y/ commands { @@ -246,7 +246,7 @@ void CyParser::ParseAndSendFile(CyhookHandler *hh) { yresult = cgi_cmd_parsing(hh, ycmd, ydebug); // parsing engine } // parsing given file - yresult += cgi_file_parsing(hh, hh->UrlData["filename"], ydebug); + yresult += cgi_file_parsing(hh, hh->UrlData["path"]+hh->UrlData["filename"], ydebug); if (yresult.length() <= 0) hh->SetError(HTTP_NOT_IMPLEMENTED, HANDLED_NOT_IMPLEMENTED); else {