Software /
code /
prosody
Changeset
10329:c0a72c97e6cf
net.server_epoll: Fix to get remote IP on direct TLS connections
A Direct TLS connection (eg HTTPS) gets turned into a LuaSec handle
before the :updatenames call done in the :connect method. LuaSec does
not expose the :getpeername and :getsockname methods, so the addresses
remain obscured, making debugging trickier since the actual IP addrerss
connected to does not show up.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 12 Oct 2019 20:07:50 +0200 |
parents | 10328:5c2b31c823b9 |
children | 10330:d86b1304451a |
files | net/server_epoll.lua |
diffstat | 1 files changed, 1 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/net/server_epoll.lua Sat Oct 12 19:51:29 2019 +0200 +++ b/net/server_epoll.lua Sat Oct 12 20:07:50 2019 +0200 @@ -521,6 +521,7 @@ self._tls = true; self:debug("Starting TLS now"); self:del(); + self:updatenames(); -- Can't getpeer/sockname after wrap() local ok, conn, err = pcall(luasec.wrap, self.conn, self.tls_ctx); if not ok then conn, err = ok, conn;