Software /
code /
prosody
Changeset
13581:c71feb7686c0
Merge 0.12->trunk
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Fri, 20 Dec 2024 14:22:25 +0000 |
parents | 13579:411649d03ad8 (current diff) 13580:836efad8483c (diff) |
children | 13582:67c9fc643873 |
files | util/prosodyctl/check.lua |
diffstat | 1 files changed, 14 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/util/prosodyctl/check.lua Sun Nov 24 14:53:49 2024 +0100 +++ b/util/prosodyctl/check.lua Fri Dec 20 14:22:25 2024 +0000 @@ -70,10 +70,22 @@ local ip = require "prosody.util.ip"; local stun = require "prosody.net.stun"; + local result = { warnings = {} }; + -- Create UDP socket for communication with the server local sock = assert(require "socket".udp()); - sock:setsockname("*", 0); - sock:setpeername(turn_service.host, turn_service.port); + do + local ok, err = sock:setsockname("*", 0); + if not ok then + result.error = "Unable to perform TURN test: setsockname: "..tostring(err); + return result; + end + ok, err = sock:setpeername(turn_service.host, turn_service.port); + if not ok then + result.error = "Unable to perform TURN test: setpeername: "..tostring(err); + return result; + end + end sock:settimeout(10); -- Helper function to receive a packet @@ -85,8 +97,6 @@ return stun.new_packet():deserialize(raw_packet); end - local result = { warnings = {} }; - -- Send a "binding" query, i.e. a request for our external IP/port local bind_query = stun.new_packet("binding", "request"); bind_query:add_attribute("software", "prosodyctl check turn");