Mercurial > prosody-modules
view mod_test_data/mod_test_data.lua @ 5243:d5dc8edb2695
mod_http_oauth2: Use more compact IDs
UUIDs are nice but so verbose!
The reduction in entropy for the nonce should be fine since the
timestamp is also counts towards this, and it changes every second
(modulo clock shenanigans), so the chances of someone managing to get
the same client_secret by registering with the same information at the
same time as another entity should be negligible.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 11 Mar 2023 22:46:27 +0100 |
parents | af824168729a |
children |
line wrap: on
line source
local users = { "fezziwig", "badger", "nupkins", "pumblechook", "rouncewell" }; local host = "localhost"; local id = require "util.id"; local st = require "util.stanza"; local sm = require "core.storagemanager"; -- Return a random number from 1..max excluding n function random_other(n, max) return ((math.random(1, max-1)+(n-1))%max)+1; end local new_time; do local _current_time = os.time(); function new_time() _current_time = _current_time + math.random(1, 3600); return _current_time; end end function module.command(arg) --luacheck: ignore arg sm.initialize_host(host); local archive = sm.open(host, "archive", "archive"); for _ = 1, 100000 do local random = math.random(1, #users); local user, contact = users[random], users[random_other(random, #users)]; local user_jid, contact_jid = user.."@"..host, contact.."@"..host; local stanza = st.message({ to = contact_jid, from = user_jid, type="chat" }) :tag("body"):text(id.long()); archive:append(user, nil, stanza, new_time(), contact_jid) local stanza2 = st.clone(stanza); stanza2.attr.from, stanza2.attr.to = stanza.attr.to, stanza.attr.from; archive:append(contact, nil, stanza2, new_time(), user_jid) end end