]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_httpd.cpp
kick_channel -> chanrec::KickUser(), server_kick_channel -> chanrec::ServerKickUser()
[user/henk/code/inspircd.git] / src / modules / m_httpd.cpp
index 3d47ed0427969e84364be7d6d3a0ddca145e2459..81f280cd38ab1c5217e8dffdb25a02bd8778d45a 100644 (file)
@@ -164,14 +164,21 @@ class HttpSocket : public InspSocket
                }
        }
 
-       void SendHeaders(unsigned long size, int response, std::string &extraheaders)
+       void SendHeaders(unsigned long size, int response, const std::string &extraheaders)
        {
                struct tm *timeinfo = localtime(&TIME);
                this->Write("HTTP/1.1 "+ConvToStr(response)+" "+Response(response)+"\r\nDate: ");
                this->Write(asctime(timeinfo));
-               this->Write(extraheaders);
+               if (extraheaders.empty())
+               {
+                       this->Write("Content-Type: text/html\r\n");
+               }
+               else
+               {
+                       this->Write(extraheaders);
+               }
                this->Write("Server: InspIRCd/m_httpd.so/1.1\r\nContent-Length: "+ConvToStr(size)+
-                               "\r\nConnection: close\r\nContent-Type: text/html\r\n\r\n");
+                               "\r\nConnection: close\r\n\r\n");
        }
 
        virtual bool OnDataReady()
@@ -197,7 +204,7 @@ class HttpSocket : public InspSocket
 
                                if ((http_version != "HTTP/1.1") && (http_version != "HTTP/1.0"))
                                {
-                                       SendHeaders(0, 505);
+                                       SendHeaders(0, 505, "");
                                }
                                else
                                {
@@ -308,7 +315,7 @@ class ModuleHttp : public Module
 
        virtual Version GetVersion()
        {
-               return Version(1,0,0,0,VF_STATIC|VF_VENDOR);
+               return Version(1,0,0,0,VF_STATIC|VF_VENDOR|VF_SERVICEPROVIDER);
        }
 };