Software /
code /
prosody
Comparison
plugins/mod_s2s/s2sout.lib.lua @ 5701:746b263e09cf
mod_s2s/s2sout.lib: Use new util.net.local_addresses() to fetch local interface addresses
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 18 Jun 2013 12:12:12 +0100 |
parent | 5700:94081567ea9e |
child | 5702:a56691e3c7d1 |
comparison
equal
deleted
inserted
replaced
5700:94081567ea9e | 5701:746b263e09cf |
---|---|
17 local socket = require "socket"; | 17 local socket = require "socket"; |
18 local adns = require "net.adns"; | 18 local adns = require "net.adns"; |
19 local dns = require "net.dns"; | 19 local dns = require "net.dns"; |
20 local t_insert, t_sort, ipairs = table.insert, table.sort, ipairs; | 20 local t_insert, t_sort, ipairs = table.insert, table.sort, ipairs; |
21 local st = require "util.stanza"; | 21 local st = require "util.stanza"; |
22 local local_addresses = require "util.net".local_addresses; | |
22 | 23 |
23 local s2s_destroy_session = require "core.s2smanager".destroy_session; | 24 local s2s_destroy_session = require "core.s2smanager".destroy_session; |
24 | 25 |
25 local log = module._log; | 26 local log = module._log; |
26 | 27 |
331 module:log("warn", "s2s not listening on any ports, outgoing connections may fail"); | 332 module:log("warn", "s2s not listening on any ports, outgoing connections may fail"); |
332 return; | 333 return; |
333 end | 334 end |
334 for source, _ in pairs(s2s_sources) do | 335 for source, _ in pairs(s2s_sources) do |
335 if source == "*" or source == "0.0.0.0" then | 336 if source == "*" or source == "0.0.0.0" then |
336 if not socket.local_addresses then | 337 for _, addr in ipairs(local_addresses("ipv4", true)) do |
337 sources[#sources + 1] = new_ip("0.0.0.0", "IPv4"); | 338 sources[#sources + 1] = new_ip(addr, "IPv4"); |
338 else | |
339 for _, addr in ipairs(socket.local_addresses("ipv4", true)) do | |
340 sources[#sources + 1] = new_ip(addr, "IPv4"); | |
341 end | |
342 end | 339 end |
343 elseif source == "::" then | 340 elseif source == "::" then |
344 if not socket.local_addresses then | 341 for _, addr in ipairs(local_addresses("ipv6", true)) do |
345 sources[#sources + 1] = new_ip("::", "IPv6"); | 342 sources[#sources + 1] = new_ip(addr, "IPv6"); |
346 else | |
347 for _, addr in ipairs(socket.local_addresses("ipv6", true)) do | |
348 sources[#sources + 1] = new_ip(addr, "IPv6"); | |
349 end | |
350 end | 343 end |
351 else | 344 else |
352 sources[#sources + 1] = new_ip(source, (source:find(":") and "IPv6") or "IPv4"); | 345 sources[#sources + 1] = new_ip(source, (source:find(":") and "IPv6") or "IPv4"); |
353 end | 346 end |
354 end | 347 end |