Mon, 04 Jan 2016 17:07:51 +0000
geoip: Logging fix
9
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 | -- Prosody IM |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 | -- Copyright (C) 2008-2010 Matthew Wild |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 | -- Copyright (C) 2008-2010 Waqas Hussain |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 | -- |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 | -- This project is MIT/X11 licensed. Please see the |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
6 | -- COPYING file in the source package for more information. |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
7 | -- |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
8 | |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
9 | local random = require "util.random"; |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
10 | local random_bytes = random.bytes; |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
11 | local hex = require "util.hex".to; |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
12 | local m_ceil = math.ceil; |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
13 | |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
14 | local function get_nibbles(n) |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
15 | return hex(random_bytes(m_ceil(n/2))):sub(1, n); |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
16 | end |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
17 | |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
18 | local function get_twobits() |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
19 | return ("%x"):format(get_nibbles(1):byte() % 4 + 8); |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
20 | end |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
21 | |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
22 | local function generate() |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
23 | -- generate RFC 4122 complaint UUIDs (version 4 - random) |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
24 | return get_nibbles(8).."-"..get_nibbles(4).."-4"..get_nibbles(3).."-"..(get_twobits())..get_nibbles(3).."-"..get_nibbles(12); |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
25 | end |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
26 | |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
27 | return { |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
28 | get_nibbles=get_nibbles; |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
29 | generate = generate ; |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
30 | -- COMPAT |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
31 | seed = random.seed; |
7da8b3c95bb1
Add and remove missing/deleted files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
32 | }; |