From: bert hubert Date: Tue, 16 Feb 2016 16:13:59 +0000 (+0100) Subject: recuweb in recursor 4.0 built in X-Git-Tag: auth-4.0.0-alpha2~36^2~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d579380d23a9a65e0c23da166a83fdf7641cfbd8;p=thirdparty%2Fpdns.git recuweb in recursor 4.0 built in --- diff --git a/pdns/webserver.cc b/pdns/webserver.cc index 5ccff1f554..53ca4179ad 100644 --- a/pdns/webserver.cc +++ b/pdns/webserver.cc @@ -1,6 +1,6 @@ /* PowerDNS Versatile Database Driven Nameserver - Copyright (C) 2002-2012 PowerDNS.COM BV + Copyright (C) 2002-2016 PowerDNS.COM BV This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 diff --git a/pdns/ws-recursor.cc b/pdns/ws-recursor.cc index ce5d3bd196..b5777421a9 100644 --- a/pdns/ws-recursor.cc +++ b/pdns/ws-recursor.cc @@ -1,6 +1,6 @@ /* PowerDNS Versatile Database Driven Nameserver - Copyright (C) 2003 - 2014 PowerDNS.COM BV + Copyright (C) 2003 - 2016 PowerDNS.COM BV This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 @@ -38,6 +38,7 @@ #include "webserver.hh" #include "ws-api.hh" #include "logger.hh" +#include "ext/incbin/incbin.h" extern __thread FDMultiplexer* t_fdm; @@ -375,6 +376,18 @@ static void apiServerCacheFlush(HttpRequest* req, HttpResponse* resp) { }); } +INCBIN(Index, "index.html"); + +void serveStuff(HttpRequest* req, HttpResponse* resp) +{ + resp->headers["Cache-Control"] = "max-age=86400"; + resp->headers["Content-Type"] = "text/css"; + + resp->body = string((const char*)gIndexData, gIndexSize); + resp->status = 200; +} + + RecursorWebServer::RecursorWebServer(FDMultiplexer* fdm) { RecursorControlParser rcp; // inits @@ -395,6 +408,8 @@ RecursorWebServer::RecursorWebServer(FDMultiplexer* fdm) d_ws->registerApiHandler("/api/v1/servers/localhost", &apiServerDetail); d_ws->registerApiHandler("/api/v1/servers", &apiServer); + d_ws->registerWebHandler("/", serveStuff); + d_ws->go(); }