Mercurial > prosody-hg
annotate util/id.lua @ 10801:2b97aac0ea3c
mod_csi_simple: Don't consider presence errors as important
A large share of `<presence type=error>` appears to be noise from large
public channels and failed presence probes. The later at least should
count as presence updates, which are currently considered unimportant.
See also 8cecb85e4bc4 which is partly reverted here. The intent there
was probably mostly about message (delivery) errors, which should be
considered important.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Tue, 05 May 2020 23:08:47 +0200 |
| parents | 9546c629289b |
| children | b5b799a2a10c |
| rev | line source |
|---|---|
|
8016
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 -- Prosody IM |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 -- Copyright (C) 2008-2017 Matthew Wild |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 -- Copyright (C) 2008-2017 Waqas Hussain |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 -- Copyright (C) 2008-2017 Kim Alvefur |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 -- |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 -- This project is MIT/X11 licensed. Please see the |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 -- COPYING file in the source package for more information. |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 -- |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 local s_gsub = string.gsub; |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 local random_bytes = require "util.random".bytes; |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 local base64_encode = require "util.encodings".base64.encode; |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 local b64url = { ["+"] = "-", ["/"] = "_", ["="] = "" }; |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 local function b64url_random(len) |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 return (s_gsub(base64_encode(random_bytes(len)), "[+/=]", b64url)); |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 end |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
18 |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 return { |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 short = function () return b64url_random(6); end; |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
21 medium = function () return b64url_random(12); end; |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
22 long = function () return b64url_random(24); end; |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
23 custom = function (size) |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
24 return function () return b64url_random(size); end; |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
25 end; |
|
9546c629289b
util.id: New util for producing random identifiers of varying sizes
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
26 } |
