184 prosody.events.fire_event("server-stopping", {reason = reason}); |
184 prosody.events.fire_event("server-stopping", {reason = reason}); |
185 server.setquitting(true); |
185 server.setquitting(true); |
186 end |
186 end |
187 |
187 |
188 -- Load SSL settings from config, and create a ctx table |
188 -- Load SSL settings from config, and create a ctx table |
189 local global_ssl_ctx = rawget(_G, "ssl") and config.get("*", "core", "ssl"); |
189 local certmanager = require "core.certmanager"; |
190 if global_ssl_ctx then |
190 local global_ssl_ctx = certmanager.create_context("*", "server"); |
191 local default_ssl_ctx = { mode = "server", protocol = "sslv23", capath = "/etc/ssl/certs", verify = "none", options = "no_sslv2" }; |
191 prosody.global_ssl_ctx = global_ssl_ctx; |
192 setmetatable(global_ssl_ctx, { __index = default_ssl_ctx }); |
|
193 prosody.global_ssl_ctx = global_ssl_ctx; |
|
194 end |
|
195 |
192 |
196 local cl = require "net.connlisteners"; |
193 local cl = require "net.connlisteners"; |
197 function prosody.net_activate_ports(option, listener, default, conntype) |
194 function prosody.net_activate_ports(option, listener, default, conntype) |
198 conntype = conntype or (global_ssl_ctx and "tls") or "tcp"; |
195 conntype = conntype or (global_ssl_ctx and "tls") or "tcp"; |
199 local ports_option = option and option.."_ports" or "ports"; |
196 local ports_option = option and option.."_ports" or "ports"; |