Software /
code /
prosody
Changeset
5205:f7ff48494c2b
Merge 0.9->trunk
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 29 Nov 2012 07:16:45 +0500 |
parents | 5196:a63c4ad6cb36 (current diff) 5204:0b4f680ea116 (diff) |
children | 5206:b4de85209ccf |
files | |
diffstat | 4 files changed, 44 insertions(+), 21 deletions(-) [+] |
line wrap: on
line diff
--- a/net/server.lua Thu Nov 22 21:57:35 2012 +0000 +++ b/net/server.lua Thu Nov 29 07:16:45 2012 +0500 @@ -36,9 +36,41 @@ end end else + use_luaevent = false; server = require "net.server_select"; end +if prosody then + local config_get = require "core.configmanager".get; + local function load_config() + local settings = config_get("*", "core", "network_settings") or {}; + if use_luaevent then + local event_settings = { + ACCEPT_DELAY = settings.event_accept_retry_interval; + CLEAR_DELAY = settings.event_clear_interval; + CONNECT_TIMEOUT = settings.connect_timeout; + DEBUG = settings.debug; + HANDSHAKE_TIMEOUT = settings.ssl_handshake_timeout; + MAX_CONNECTIONS = settings.max_connections; + MAX_HANDSHAKE_ATTEMPTS = settings.max_ssl_handshake_roundtrips; + MAX_READ_LENGTH = settings.max_receive_buffer_size; + MAX_SEND_LENGTH = settings.max_send_buffer_size; + READ_TIMEOUT = settings.read_timeout; + WRITE_TIMEOUT = settings.send_timeout; + }; + + for k, v in pairs(event_settings) do + server.cfg[k] = v; + end + return true; + else + return server.changesettings(settings); + end + end + load_config(); + prosody.events.add_handler("config-reloaded", load_config); +end + -- require "net.server" shall now forever return this, -- ie. server_select or server_event as chosen above. return server;
--- a/net/server_select.lua Thu Nov 22 21:57:35 2012 +0000 +++ b/net/server_select.lua Thu Nov 29 07:16:45 2012 +0500 @@ -749,16 +749,16 @@ if type( new ) ~= "table" then return nil, "invalid settings table" end - _selecttimeout = tonumber( new.timeout ) or _selecttimeout - _sleeptime = tonumber( new.sleeptime ) or _sleeptime - _maxsendlen = tonumber( new.maxsendlen ) or _maxsendlen - _maxreadlen = tonumber( new.maxreadlen ) or _maxreadlen - _checkinterval = tonumber( new.checkinterval ) or _checkinterval - _sendtimeout = tonumber( new.sendtimeout ) or _sendtimeout - _readtimeout = tonumber( new.readtimeout ) or _readtimeout - _cleanqueue = new.cleanqueue - _maxclientsperserver = new._maxclientsperserver or _maxclientsperserver - _maxsslhandshake = new._maxsslhandshake or _maxsslhandshake + _selecttimeout = tonumber( new.select_timeout ) or _selecttimeout + _sleeptime = tonumber( new.select_sleep_time ) or _sleeptime + _maxsendlen = tonumber( new.max_send_buffer_size ) or _maxsendlen + _maxreadlen = tonumber( new.max_receive_buffer_size ) or _maxreadlen + _checkinterval = tonumber( new.select_idle_check_interval ) or _checkinterval + _sendtimeout = tonumber( new.send_timeout ) or _sendtimeout + _readtimeout = tonumber( new.read_timeout ) or _readtimeout + _cleanqueue = new.select_clean_queue + _maxclientsperserver = new.max_connections or _maxclientsperserver + _maxsslhandshake = new.max_ssl_handshake_roundtrips or _maxsslhandshake return true end
--- a/plugins/mod_admin_adhoc.lua Thu Nov 22 21:57:35 2012 +0000 +++ b/plugins/mod_admin_adhoc.lua Thu Nov 29 07:16:45 2012 +0500 @@ -212,15 +212,6 @@ end end -local end_user_session_layout = dataforms_new{ - title = "Ending a User Session"; - instructions = "Fill out this form to end a user's session."; - - { name = "FORM_TYPE", type = "hidden", value = "http://jabber.org/protocol/admin" }; - { name = "accountjids", type = "jid-multi", label = "The Jabber ID(s) for which to end sessions" }; -}; - - function get_user_password_handler(self, data, state) local get_user_password_layout = dataforms_new{ title = "Getting User's Password";
--- a/plugins/mod_http.lua Thu Nov 22 21:57:35 2012 +0000 +++ b/plugins/mod_http.lua Thu Nov 29 07:16:45 2012 +0500 @@ -88,10 +88,10 @@ local data = handler; handler = function () return data; end elseif event_name:sub(-2, -1) == "/*" then - local base_path = event_name:match("/(.+)/*$"); + local base_path_len = #event_name:match("(/.+/)%*$")+1; local _handler = handler; handler = function (event) - local path = event.request.path:sub(#base_path+1); + local path = event.request.path:sub(base_path_len); return _handler(event, path); end; end