diff options
author | Kim Alvefur <zash@zash.se> | 2013-03-23 20:06:02 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2013-03-23 20:06:02 +0100 |
commit | 39acad1765011e6646dcc1308941b7b84a1fee60 (patch) | |
tree | 4a17402e08fb1e324c6bfc3a0ecea351bfa3592c | |
parent | 2e91cb38d916439977f5fe3e69c993b7825fc3ee (diff) | |
download | prosody-39acad1765011e6646dcc1308941b7b84a1fee60.tar.gz prosody-39acad1765011e6646dcc1308941b7b84a1fee60.zip |
net.server, _select: Reorganise configuration of server_select to be more like server_event
-rw-r--r-- | net/server.lua | 14 | ||||
-rw-r--r-- | net/server_select.lua | 13 |
2 files changed, 23 insertions, 4 deletions
diff --git a/net/server.lua b/net/server.lua index deabaa12..ae3d45b0 100644 --- a/net/server.lua +++ b/net/server.lua @@ -42,6 +42,10 @@ end if prosody then local config_get = require "core.configmanager".get; + local defaults = {}; + for k,v in pairs(server.cfg or server.getsettings()) do + defaults[k] = v; + end local function load_config() local settings = config_get("*", "network_settings") or {}; if use_luaevent then @@ -59,11 +63,15 @@ if prosody then WRITE_TIMEOUT = settings.send_timeout; }; - for k, v in pairs(event_settings) do - server.cfg[k] = v; + for k,default in pairs(defaults) do + server.cfg[k] = event_settings[k] or default; end else - server.changesettings(settings); + local select_settings = {}; + for k,default in pairs(defaults) do + select_settings[k] = settings[k] or default; + end + server.changesettings(select_settings); end end load_config(); diff --git a/net/server_select.lua b/net/server_select.lua index 63a94b7e..8ce9eed2 100644 --- a/net/server_select.lua +++ b/net/server_select.lua @@ -769,7 +769,18 @@ closeall = function( ) end getsettings = function( ) - return _selecttimeout, _sleeptime, _maxsendlen, _maxreadlen, _checkinterval, _sendtimeout, _readtimeout, nil, _maxselectlen, _maxsslhandshake, _maxfd + return { + select_timeout = _selecttimeout; + select_sleep_time = _sleeptime; + max_send_buffer_size = _maxsendlen; + max_receive_buffer_size = _maxreadlen; + select_idle_check_interval = _checkinterval; + send_timeout = _sendtimeout; + read_timeout = _readtimeout; + max_connections = _maxselectlen; + max_ssl_handshake_roundtrips = _maxsslhandshake; + highest_allowed_fd = _maxfd; + } end changesettings = function( new ) |