Mercurial > prosody-modules
comparison mod_firewall/mod_firewall.lua @ 2561:3da0e3c917cc
mod_firewall: Accept backslash escapes in definitions
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Fri, 24 Feb 2017 09:49:09 +0000 |
| parents | 2b533a7b5236 |
| children | 78efd064aef3 |
comparison
equal
deleted
inserted
replaced
| 2560:fda47e2135e5 | 2561:3da0e3c917cc |
|---|---|
| 69 return [["..tostring(]]..expr..[[).."]]; | 69 return [["..tostring(]]..expr..[[).."]]; |
| 70 end) | 70 end) |
| 71 :gsub("$(%b<>)", function (expr) | 71 :gsub("$(%b<>)", function (expr) |
| 72 expr = expr:sub(2,-2); | 72 expr = expr:sub(2,-2); |
| 73 local default = "<undefined>"; | 73 local default = "<undefined>"; |
| 74 expr = expr:gsub("||(%b\"\")$", function (s) | 74 expr = expr:gsub("||(%b\"\")$", function (default_string) |
| 75 default = s:sub(2,-2); | 75 default = stripslashes(default_string:sub(2,-2)); |
| 76 return ""; | 76 return ""; |
| 77 end); | 77 end); |
| 78 local func_chain = expr:match("|[%w|]+$"); | 78 local func_chain = expr:match("|[%w|]+$"); |
| 79 if func_chain then | 79 if func_chain then |
| 80 expr = expr:sub(1, -1-#func_chain); | 80 expr = expr:sub(1, -1-#func_chain); |
