# HG changeset patch # User Matthew Wild # Date 1746781215 -3600 # Node ID 49fad071e6440c9df0defc4aa988e28686663d24 # Parent 96dda21fba754634404c05323c839508243f8bf3 mod_net_proxy: Use safer util.format for generating description string (thanks tom) It appears that server_event may emit port numbers (src_port() in this case) as strings, rather than integers. This causes string.format() to throw an error. Prosody's util.format is a more forgiving formatter and won't throw an error. The server_event behaviour may be best fixed for the sake of consistency, though. diff -r 96dda21fba75 -r 49fad071e644 mod_net_proxy/mod_net_proxy.lua --- a/mod_net_proxy/mod_net_proxy.lua Wed May 07 16:29:59 2025 +0200 +++ b/mod_net_proxy/mod_net_proxy.lua Fri May 09 10:00:15 2025 +0100 @@ -14,6 +14,7 @@ local net = require "util.net"; local set = require "util.set"; local portmanager = require "core.portmanager"; +local fmt = require "util.format".format; -- Backwards Compatibility local function net_ntop_bc(input) @@ -81,7 +82,7 @@ local proxy_data_mt = {}; proxy_data_mt.__index = proxy_data_mt; function proxy_data_mt:describe() - return string.format("proto=%s/%s src=%s:%d dst=%s:%d", + return fmt("proto=%s/%s src=%s:%d dst=%s:%d", self:addr_family_str(), self:transport_str(), self:src_addr(), self:src_port(), self:dst_addr(), self:dst_port()); end