Software /
code /
prosody-modules
File
mod_http_debug/mod_http_debug.lua @ 6130:5a0e47ad7d6b
mod_anti_spam: Gracefully handle failure to parse CIDR in IP RTBL
This should prevent a traceback in case the IP address in the RTBL cannot be
parsed (either due to a malformed address being published, or due to a bug in
our parsing code).
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Wed, 01 Jan 2025 11:48:19 +0000 |
parent | 5492:b6af4d1ff8c1 |
line wrap: on
line source
local json = require "util.json" module:depends("http") local function handle_request(event) local request = event.request; (request.log or module._log)("debug", "%s -- %s %q HTTP/%s -- %q -- %s", request.ip, request.method, request.url, request.httpversion, request.headers, request.body); return { status_code = 200; headers = { content_type = "application/json" }; host = module.host; body = json.encode { body = request.body; headers = request.headers; httpversion = request.httpversion; id = request.id; ip = request.ip; method = request.method; path = request.path; secure = request.secure; url = request.url; }; } end local methods = module:get_option_set("http_debug_methods", { "GET"; "HEAD"; "DELETE"; "OPTIONS"; "PATCH"; "POST"; "PUT" }); local route = {}; for method in methods do route[method] = handle_request; route[method .. " /*"] = handle_request; end module:provides("http", { route = route; })