MarcoFalke
aaaa4dbab4
Avoid implicit-integer-sign-change in bech32.cpp
2022-02-25 09:43:54 +01:00
Samuel Dobson
a4fe70171b
Make Bech32 LocateErrors return error list rather than using out-arg
2021-12-06 14:17:41 +13:00
Samuel Dobson
2fa4fd1961
Use std::iota instead of manually pushing range
2021-12-01 11:01:20 +13:00
Samuel Dobson
405c96fc9f
Use bounds-checked array lookups in Bech32 error detection code
2021-12-01 11:01:20 +13:00
Samuel Dobson
28d9c2857f
Simplify encoding of e in GF(1024) tables to (1,0)
...
This follows PR 64 of the sipa/bech32 repo.
2021-12-01 11:01:20 +13:00
Samuel Dobson
14358a029d
Replace GF1024 tables and syndrome constants with compile-time generated constexprs.
2021-12-01 11:01:20 +13:00
Samuel Dobson
c8b9a224e7
Report encoding type in bech32 error message
2021-11-23 15:48:59 +13:00
Samuel Dobson
bb4d3e9b97
Address review comments for Bech32 error validation
2021-11-23 15:48:59 +13:00
Samuel Dobson
88cc481092
Modify copyright header on Bech32 code
2021-10-12 12:03:14 +13:00
Samuel Dobson
5599813b80
Add lots of comments to Bech32
2021-10-12 12:03:14 +13:00
Samuel Dobson
b62b67e06c
Add Bech32 error location function
2021-10-12 12:03:14 +13:00
Pieter Wuille
b8cd2a4292
Add references for the generator/constant used in Bech32(m)
2021-08-20 15:49:50 -04:00
Fabian Jahr
03346022d6
naming nits
2021-03-17 17:59:22 -07:00
Pieter Wuille
da2bb6976d
Implement Bech32m encoding/decoding
2021-03-15 17:26:35 -07:00
Pieter Wuille
e65e61c812
Add some general std::vector utility functions
...
Added are:
* Vector(arg1,arg2,arg3,...) constructs a vector with the specified
arguments as elements. The vector's type is derived from the
arguments. If some of the arguments are rvalue references, they
will be moved into place rather than copied (which can't be achieved
using list initialization).
* Cat(vector1,vector2) returns a concatenation of the two vectors,
efficiently moving elements when relevant.
Vector generalizes (and replaces) the Singleton function in
src/descriptor.cpp, and Cat replaces the Cat function in bech32.cpp
2019-10-16 08:56:57 -07:00
Samuel Dobson
2457aea83c
Assert that the HRP is lowercase in Bech32::Encode
2019-09-05 13:25:11 +12:00
practicalswift
f34c8c466a
Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations.
2018-08-27 18:19:33 +02:00
murrayn
60f61f9952
Tighten up bech32::Decode(); add tests.
2018-04-12 17:52:33 -07:00
MeshCollider
1a445343f6
scripted-diff: Replace #include "" with #include <> (ryanofsky)
...
-BEGIN VERIFY SCRIPT-
for f in \
src/*.cpp \
src/*.h \
src/bench/*.cpp \
src/bench/*.h \
src/compat/*.cpp \
src/compat/*.h \
src/consensus/*.cpp \
src/consensus/*.h \
src/crypto/*.cpp \
src/crypto/*.h \
src/crypto/ctaes/*.h \
src/policy/*.cpp \
src/policy/*.h \
src/primitives/*.cpp \
src/primitives/*.h \
src/qt/*.cpp \
src/qt/*.h \
src/qt/test/*.cpp \
src/qt/test/*.h \
src/rpc/*.cpp \
src/rpc/*.h \
src/script/*.cpp \
src/script/*.h \
src/support/*.cpp \
src/support/*.h \
src/support/allocators/*.h \
src/test/*.cpp \
src/test/*.h \
src/wallet/*.cpp \
src/wallet/*.h \
src/wallet/test/*.cpp \
src/wallet/test/*.h \
src/zmq/*.cpp \
src/zmq/*.h
do
base=${f%/*}/ relbase=${base#src/} sed -i "s:#include \"\(.*\)\"\(.*\):if test -e \$base'\\1'; then echo \"#include <\"\$relbase\"\\1>\\2\"; else echo \"#include <\\1>\\2\"; fi:e" $f
done
-END VERIFY SCRIPT-
2017-11-16 08:23:01 +13:00
Pieter Wuille
8fd2267053
Import Bech32 C++ reference code & tests
...
This includes a reformatted version of the Bech32 reference code
(see https://github.com/sipa/bech32/tree/master/ref/c%2B%2B ), with
extra documentation.
2017-09-28 16:02:16 -07:00