Mercurial > prosody-modules
diff mod_firewall/mod_firewall.lua @ 6502:b15601203d0d
mod_firewall: Support 'FROM IP' and 'FROM SUBNET' conditions
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Thu, 26 Mar 2026 13:33:44 +0000 |
| parents | 547feb8181eb |
| children | ce716e5e0fee |
line wrap: on
line diff
--- a/mod_firewall/mod_firewall.lua Wed Mar 25 18:52:10 2026 +0000 +++ b/mod_firewall/mod_firewall.lua Thu Mar 26 13:33:44 2026 +0000 @@ -275,6 +275,17 @@ iplib = { global_code = [[local iplib = require "util.ip";]]; }; + session_parsed_ip = { + local_code = [[local session_parsed_ip = iplib.new_ip(session.ip)]]; + depends = { "iplib" }; + }; + parsed_ip = { + local_code = function (parsed_ip_spec) + local ip_hash, ip_str = parsed_ip_spec:match("^(%x+):(.+)$"); + local code = ([[local parsed_ip_%s = iplib.new_ip(%q)]]):format(ip_hash, ip_str) + return code, { "iplib" }; + end; + }; geoip_country = { global_code = [[ local geoip_country = require "geoip.country";
