Diff

net/http/server.lua @ 7605:2481ebc7f715

Merge 0.10->trunk
author Kim Alvefur <zash@zash.se>
date Thu, 18 Aug 2016 17:36:46 +0200
parent 7582:e080b8b4f3cb
child 8362:c7d6c2558a24
line wrap: on
line diff
--- a/net/http/server.lua	Thu Aug 18 17:23:06 2016 +0200
+++ b/net/http/server.lua	Thu Aug 18 17:36:46 2016 +0200
@@ -22,6 +22,7 @@
 local listener = {};
 local hosts = {};
 local default_host;
+local options = {};
 
 local function is_wildcard_event(event)
 	return event:sub(-2, -1) == "/*";
@@ -31,7 +32,7 @@
 end
 
 local _handlers = events._handlers;
-local recent_wildcard_events = cache.new(10000, function (key, value)
+local recent_wildcard_events = cache.new(10000, function (key, value) -- luacheck: ignore 212/value
 	rawset(_handlers, key, nil);
 end);
 
@@ -133,7 +134,10 @@
 		sessions[conn] = nil;
 		conn:close();
 	end
-	sessions[conn] = parser_new(success_cb, error_cb);
+	local function options_cb()
+		return options;
+	end
+	sessions[conn] = parser_new(success_cb, error_cb, "server", options_cb);
 end
 
 function listener.ondisconnect(conn)
@@ -170,7 +174,7 @@
 	end
 });
 
-function _M.hijack_response(response, listener)
+function _M.hijack_response(response, listener) -- luacheck: ignore
 	error("TODO");
 end
 function handle_request(conn, request, finish_cb)
@@ -350,6 +354,9 @@
 function _M.fire_event(event, ...)
 	return events.fire_event(event, ...);
 end
+function _M.set_option(name, value)
+	options[name] = value;
+end
 
 _M.listener = listener;
 _M.codes = codes;