zold 0.14.5 → 0.14.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/zold/commands/propagate.rb +1 -1
- data/lib/zold/metronome.rb +3 -2
- data/lib/zold/node/front.rb +0 -7
- data/lib/zold/node/safe_entrance.rb +4 -0
- data/lib/zold/patch.rb +1 -1
- data/lib/zold/prefixes.rb +8 -13
- data/lib/zold/version.rb +1 -1
- data/lib/zold/wallet.rb +4 -0
- data/test/test_prefixes.rb +5 -3
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fe27c493a3594f3ad04a4d024d87c918c54a27c5
|
4
|
+
data.tar.gz: b862fc9b4598e823f994c8705407c66895a5f41a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4ad796318f03c00a569968618259c56e366dd4ef142a3aea108a143085aa84b4f7a4280079db4d4434bf7eb40742ca56f8417628cbeef461b5749cc7add113a4
|
7
|
+
data.tar.gz: 3f48555b78d03a02664637dfee238e970e764844993341c6c1ed6521a212d285729366f8c73b9a32b23b6eb14c76ac0da9eb5f1701c1b260f5b2ca206058a7f4
|
data/lib/zold/metronome.rb
CHANGED
@@ -57,12 +57,13 @@ module Zold
|
|
57
57
|
start = Time.now
|
58
58
|
begin
|
59
59
|
r.exec(step)
|
60
|
+
@log.info("Routine #{r.class.name} ##{step} done in #{(Time.now - start).round(2)}s")
|
60
61
|
rescue StandardError => e
|
61
62
|
@failures[r.class.name] = Backtrace.new(e).to_s
|
63
|
+
@log.error("Routine #{r.class.name} ##{step} failed in #{(Time.now - start).round(2)}s")
|
64
|
+
@log.error(Backtrace.new(e).to_s)
|
62
65
|
end
|
63
66
|
step += 1
|
64
|
-
@log.info("Routine #{r.class.name} ##{step} done in #{(Time.now - start).round(2)}s: \
|
65
|
-
#{@threads.map { |t| "#{t.name}/#{t.status}" }.join(',')}")
|
66
67
|
sleep(1)
|
67
68
|
end
|
68
69
|
end
|
data/lib/zold/node/front.rb
CHANGED
@@ -225,13 +225,6 @@ module Zold
|
|
225
225
|
status 304
|
226
226
|
return
|
227
227
|
end
|
228
|
-
if before != after && before.length == after.length
|
229
|
-
settings.log.debug(
|
230
|
-
"Weird... the wallet #{id} is of the same length #{after.length}, but the content is different:\n" +
|
231
|
-
Diffy::Diff.new(before, after, context: 0).to_s
|
232
|
-
)
|
233
|
-
end
|
234
|
-
settings.log.info("Wallet #{id} is new: #{before.length}b != #{after.length}b")
|
235
228
|
settings.entrance.push(id, after)
|
236
229
|
JSON.pretty_generate(
|
237
230
|
version: settings.version,
|
@@ -59,6 +59,10 @@ module Zold
|
|
59
59
|
Tempfile.open(['', Wallet::EXTENSION]) do |f|
|
60
60
|
File.write(f, body)
|
61
61
|
wallet = Wallet.new(f.path)
|
62
|
+
wallet.refurbish
|
63
|
+
unless wallet.protocol == Zold::PROTOCOL
|
64
|
+
raise "The protocol mismatch, the wallet is in '#{wallet.protocol}', we are in '#{Zold::PROTOCOL}'"
|
65
|
+
end
|
62
66
|
unless wallet.network == @network
|
63
67
|
raise "The network name mismatch, the wallet is in '#{wallet.network}', we are in '#{@network}'"
|
64
68
|
end
|
data/lib/zold/patch.rb
CHANGED
@@ -84,7 +84,7 @@ module Zold
|
|
84
84
|
@log.error("RSA signature is redundant at ##{txn.id} of #{wallet.id}: #{txn.to_text}")
|
85
85
|
next
|
86
86
|
end
|
87
|
-
unless wallet.
|
87
|
+
unless wallet.prefix?(txn.prefix)
|
88
88
|
@log.error("Payment prefix '#{txn.prefix}' doesn't match with the key of #{wallet.id}: #{txn.to_text}")
|
89
89
|
next
|
90
90
|
end
|
data/lib/zold/prefixes.rb
CHANGED
@@ -35,19 +35,14 @@ module Zold
|
|
35
35
|
def create(length = 8)
|
36
36
|
raise "Length #{length} is too small" if length < 8
|
37
37
|
raise "Length #{length} is too big" if length > 32
|
38
|
-
key =
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
private
|
48
|
-
|
49
|
-
def body
|
50
|
-
@wallet.key.to_pub.gsub(/[^A-Z0-9a-z]/, '')
|
38
|
+
key = @wallet.key.to_pub
|
39
|
+
prefix = ''
|
40
|
+
rnd = Random.new
|
41
|
+
until prefix =~ /^[a-zA-Z0-9]+$/
|
42
|
+
start = rnd.rand(key.length - length)
|
43
|
+
prefix = key[start..(start + length - 1)]
|
44
|
+
end
|
45
|
+
prefix
|
51
46
|
end
|
52
47
|
end
|
53
48
|
end
|
data/lib/zold/version.rb
CHANGED
data/lib/zold/wallet.rb
CHANGED
data/test/test_prefixes.rb
CHANGED
@@ -36,9 +36,11 @@ class TestPrefixes < Minitest::Test
|
|
36
36
|
wallet = home.create_wallet
|
37
37
|
prefixes = Zold::Prefixes.new(wallet)
|
38
38
|
(8..32).each do |len|
|
39
|
-
|
40
|
-
|
41
|
-
|
39
|
+
50.times do
|
40
|
+
prefix = prefixes.create(len)
|
41
|
+
assert_equal(len, prefix.length)
|
42
|
+
assert(wallet.prefix?(prefix), "Prefix '#{prefix}' not found")
|
43
|
+
end
|
42
44
|
end
|
43
45
|
end
|
44
46
|
end
|