annotate mod_compact_resource/mod_compact_resource.lua @ 6556:7477e97a9045

mod_firewall: Apply pre-reload state before re-reading config This change makes load/reload a bit more robust. module.load() runs before module.restore() and it reads from the config and updates the state (if needed). However, after this, module.restore() could run and apply the old state again.
author Matthew Wild <mwild1@gmail.com>
date Sun, 24 May 2026 20:03:20 +0100
parents 6f34e51a23f0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1761
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 local base64_encode = require"util.encodings".base64.encode;
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 local random_bytes = require"util.random".bytes;
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 local b64url = { ["+"] = "-", ["/"] = "_", ["="] = "" };
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 local function random_resource()
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 return base64_encode(random_bytes(8)):gsub("[+/=]", b64url);
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 end
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 module:hook("pre-resource-bind", function (event)
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 event.resource = random_resource();
6f34e51a23f0 mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 end);