X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=net%2Fhttpserver_listener.lua;h=dd14b43c9926f845197090edd8be626911757d0b;hb=9e7852cb46aea48f82809d1c8d67f9d036178779;hp=f7fb7f4e3fce778c593de7d720bad194866b1895;hpb=e7ace4dc5dd9ba1d97afbc6e4fb835db672dbd26;p=prosody.git diff --git a/net/httpserver_listener.lua b/net/httpserver_listener.lua index f7fb7f4e..dd14b43c 100644 --- a/net/httpserver_listener.lua +++ b/net/httpserver_listener.lua @@ -1,3 +1,11 @@ +-- Prosody IM +-- Copyright (C) 2008-2010 Matthew Wild +-- Copyright (C) 2008-2010 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; @@ -8,20 +16,25 @@ local requests = {}; -- Open requests local httpserver = { default_port = 80, default_mode = "*a" }; -function httpserver.listener(conn, data) +function httpserver.onincoming(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 + if data and data ~= "" then request_reader(request, data); end end -function httpserver.disconnect(conn, err) +function httpserver.ondisconnect(conn, err) local request = requests[conn]; if request and not request.destroyed then request.conn = nil;