Software /
code /
prosody
File
net/httpserver_listener.lua @ 2192:fa46d158c95f sasl
Adding a note for possible round trip savings.
author | Tobias Markmann <tm@ayena.de> |
---|---|
date | Fri, 13 Nov 2009 14:31:03 +0100 |
parent | 1540:19fb86c19a59 |
child | 2129:fcdcdf00787c |
child | 2923:b7049746bd29 |
line wrap: on
line source
-- Prosody IM -- Copyright (C) 2008-2009 Matthew Wild -- Copyright (C) 2008-2009 Waqas Hussain -- -- This project is MIT/X11 licensed. Please see the -- COPYING file in the source package for more information. -- local connlisteners_register = require "net.connlisteners".register; local new_request = require "net.httpserver".new_request; local request_reader = require "net.httpserver".request_reader; local requests = {}; -- Open requests local httpserver = { default_port = 80, default_mode = "*a" }; function httpserver.listener(conn, data) local request = requests[conn]; if not request then request = new_request(conn); requests[conn] = request; -- If using HTTPS, request is secure if conn.ssl() then request.secure = true; end end if data then request_reader(request, data); end end function httpserver.disconnect(conn, err) local request = requests[conn]; if request and not request.destroyed then request.conn = nil; request_reader(request, nil); end requests[conn] = nil; end connlisteners_register("httpserver", httpserver);