Grégoire Henry
2a85c34c67
Indentation fixes
2018-05-25 16:47:48 +02:00
Milo Davis
f3b0b0b00a
Micheline: add 255 character annotation length limit
2018-05-25 14:41:27 +02:00
Milo Davis
7fc74da1a2
Data_encoding: add bounded strings and bytes
2018-05-25 14:41:27 +02:00
Grégoire Henry
c2241c034a
Data_encoding: allow smaller size field for Dynamic_size
2018-05-25 14:41:27 +02:00
Grégoire Henry
89b6799fd6
Data_encoding: add combinator for positive big number
2018-05-25 14:41:27 +02:00
michael
3f1363b9ba
P2P/Shell: Split metadata into peer_metadata and conn_metadata
...
Peer_metadata is meant to keep track of peer's score.
Conn_metadata is meant to keep track of connection configuration given
during Ack exchange.
2018-05-25 11:39:22 +02:00
bruno
c13b7dd39a
Alpha: typos
2018-05-25 10:36:08 +02:00
Grégoire Henry
e1622c7b77
Opam: fix test dependencies for data_encoding
.
2018-05-25 00:47:52 +02:00
Raphaël Proust
118188530a
Data_encoding: crowbar tests
...
This work is based on ideas more fully developped in
https://gitlab.com/gasche/fuzz-data-encoding .
However, including some tests directly in this repo helps with CI
integration as well as keeping the tests and interfaces up to date.
Eventually, we should integrate the tests from the fuzz-data-encoding
library.
2018-05-24 17:50:18 +02:00
Raphaël Proust
8b5bce50cf
Data_encoding: test catching of invalid encodings
2018-05-24 17:50:18 +02:00
Raphaël Proust
00d596e9c2
Data_encoding: catching more invalid encoding
2018-05-24 17:50:18 +02:00
Benjamin Canou
b0be5b630d
Data_encoding: Ignore is actually a `Fixed 0
2018-05-24 15:43:15 +00:00
Pietro
d1c2f631d5
Data_encoding: Refresh benchmarks
2018-05-24 15:43:15 +00:00
Grégoire Henry
2b82a588e1
Data_encoding: improve docstrings.
2018-05-24 15:43:15 +00:00
Grégoire Henry
2e9df07b0e
Data_encoding: add check_size
2018-05-24 15:43:15 +00:00
Grégoire Henry
5023e1a261
Data_encoding: rename Binary.to_bytes
into to_bytes_exn
2018-05-24 15:43:15 +00:00
Grégoire Henry
72fc71be67
Data_encoding: rename Binary
into Binary_writer
2018-05-24 15:43:15 +00:00
Grégoire Henry
1da0d0c8d7
Data_encoding: split out Binary_length
2018-05-24 15:43:15 +00:00
Grégoire Henry
aee6718148
Data_encoding: use CPS for the stream reader
2018-05-24 15:43:15 +00:00
Grégoire Henry
b83797371e
Data_encoding: rename Size
into Binary_size
2018-05-24 15:43:15 +00:00
Grégoire Henry
b164dd6cc5
Data_encoding: drop module Assert
...
- drop the quick-and-dirty `Assert` introduced when we switched from
`Kaputt` and use `Alcotest.check` instead.
- split tests in multiple files:
- success.ml
- write_failure.ml
- read_failture.ml
- invalid_encoding.ml
- randomized.ml
2018-05-24 15:43:15 +00:00
Grégoire Henry
a0cae2af57
Data_encoding: enforce fixed-size strings in JSON.
2018-05-24 15:43:15 +00:00
Grégoire Henry
1bc7b45fdb
Data_encoding: forbids nested options
2018-05-24 15:43:15 +00:00
Grégoire Henry
1f358b7f9a
Data_encoding: move cut_bytes
into MBytes
2018-05-24 15:43:15 +00:00
Grégoire Henry
cb28ca1cd5
Stdlib: reintroduce MBytes.pp_hex
2018-05-24 15:43:15 +00:00
Fabrice Le Fessant
8986640a98
P2p: make nonces unpredictable when connecting
...
Avoid replay-attacks by preventing a node from determining one of the
nonces used in the encryption of a channel between two nodes.
2018-05-24 12:11:42 +02:00
Benjamin Canou
dcf27f48d9
Alpha: do not produce multiple revelations
2018-05-22 12:32:47 +02:00
Benjamin Canou
89d9d83b15
Alpha: remove unused error
2018-05-22 12:32:47 +02:00
Grégoire Henry
d0a9fb678c
Alpha: better error for invalid key revelation
2018-05-22 12:32:47 +02:00
OCamlPro-Iguernlala
4caf7cf679
P2p_maintenance: improve 'try_to_contact' and 'connectable'
...
To avoid eventual infinite loops in 'try_to_contact', we
accumulate the set of points that have been seen to discard them
during recursive calls.
2018-05-22 12:20:04 +02:00
Marco Stronati
5a26d23cf7
Crypto: replace nocrypto sha256 with hacl
2018-05-17 10:20:22 +02:00
Marco Stronati
7d6da7179b
Crypto: replace ocaml-tweetnacl with ocaml-hacl
2018-05-17 10:20:22 +02:00
Grégoire Henry
01941fa725
Opam: fix tezos-stdlib.opam
2018-05-13 01:42:05 +02:00
Vincent Bernardoff
abdcfab111
RPC: add CORS test
2018-05-13 00:20:40 +02:00
Vincent Bernardoff
64183bbcf3
RPC: CORS now accepts Content-Type
by default
2018-05-13 00:00:18 +02:00
Vincent Bernardoff
049efb2169
Stdlib/String: add Set module
2018-05-12 23:57:32 +02:00
OCamlPro-Iguernlala
6b8c3f7d31
P2p_maintenance.connectable: ignore non-trusted points if option --closed is set
2018-05-12 23:42:20 +02:00
Vincent Bernardoff
b48ba96106
Stdlib: use bigstring
to implement MBytes
2018-05-12 23:11:35 +02:00
Vincent Bernardoff
1cd82f5d82
Stdlib: do not use deprecated stringext
2018-05-12 23:11:35 +02:00
Benjamin Canou
3ca03f6da7
Alpha: remove dead code for deposit forfeiting
2018-05-11 16:49:16 +02:00
Grégoire Henry
3e6633bacc
Alpha: burn only rewards and fees when baker do not reveal seeds
...
We only forfeit the bond in case of double-baking.
2018-05-11 15:50:03 +02:00
Pierre Chambart
e16cf6d28b
Simplify, bit extraction from Z values
2018-05-09 16:36:52 +00:00
Benjamin Canou
deffa28aa4
Data_encoding: add more compact binary serializer for Z
2018-05-09 16:36:52 +00:00
Benjamin Canou
441149880c
Environemt: add equality for Z.t
2018-05-09 16:36:52 +00:00
Benjamin Canou
636fecb6ff
Utils: add Compare.Z
2018-05-09 16:36:51 +00:00
Raphaël Proust
a3474ae496
Typo in error message
2018-05-09 17:46:54 +02:00
Grégoire Henry
74ec514fd2
Alpha: fail on early revelations
...
We now fail when a nonce is revealed before
the the expected revelation cycle.
2018-05-09 17:46:54 +02:00
Grégoire Henry
3cb1c3c5e2
Alpha: error messages for invalid nonce revelations
2018-05-09 17:46:48 +02:00
Grégoire Henry
43fe4dbdc3
Alpha: minor cosmetic changes
2018-05-09 17:45:37 +02:00
Benjamin Canou
a873930a09
Alpha: minor change to the PoW check
2018-05-09 15:56:09 +02:00
Grégoire Henry
e3bfe0d651
Alpha: exclude signature from the minimal stamp of PoW.
...
We don't want the stamp to be cheaper for people with faster
signing devices...
2018-05-09 15:56:09 +02:00
bruno
6966240a54
Alpha: export missing errors
2018-05-08 12:50:04 +02:00
Benjamin Canou
cd731df938
Add missing opam dependency
2018-05-05 01:29:06 +02:00
Benjamin Canou
294e270f32
Add missing opam dependency
2018-05-04 19:23:04 +02:00
Vincent Bernardoff
96d9f317c1
Ocplib_json_typed: adapt code for inclusion in vendors
2018-05-04 18:48:00 +02:00
Pietro
b27bb84861
[p2p] fix space for semicolon and pipe
2018-05-03 16:03:01 +02:00
Grégoire Henry
fe9c06b7ca
Test: fix test_multinode.sh
2018-05-03 16:03:01 +02:00
Pierre Chambart
137613ee9a
Formatting client_p2p_commands
2018-05-03 16:03:01 +02:00
Pierre Chambart
d71ff759dc
Remove uses of Time.now in P2p_acl
2018-05-03 16:03:01 +02:00
Pierre Chambart
6bdb959204
Really get rid of magic...
2018-05-03 16:03:01 +02:00
Pierre Chambart
7de7043a74
Stdlib: get rid of magic in HashPtree
2018-05-03 16:03:01 +02:00
Pietro
4d9292fcbb
Fix other minor comments
2018-05-03 16:03:01 +02:00
Pietro
c5d41465a2
p2p: temp ban point on invalid auth
2018-05-03 16:03:01 +02:00
Pietro
ce92f70883
P2p: Fix Hashtbl for PeerRing
...
Export hash in INTERNAL_HASH. now Peer_id.Id is hashable
2018-05-03 16:03:01 +02:00
Pietro
3683e948c1
Ring: swap operation order in Ring.Maketable.add
2018-05-03 16:03:01 +02:00
Pietro
511b47148c
p2p, ring: Cleanup PeerId table
2018-05-03 16:03:01 +02:00
Vincent Bernardoff
b3df4e63c8
[P2P] ACLs: cosmetics, renamings, comments
2018-05-03 16:03:01 +02:00
Pietro
02838a4cbc
p2p,node,client: Add Greylists
...
- add admin commands to ban and unban ips and peers
- add greylist_timeout option to configuration file (node)
- Add greylist modules + RPC
2018-05-03 16:03:01 +02:00
Pierre Chambart
496cbe566d
Stdlib: add ephemeron-based patricia trees for P2P greylisting
2018-05-03 15:58:08 +02:00
Vincent Bernardoff
280d88faaf
TLS: add connectivity test
2018-05-03 15:48:25 +02:00
Vincent Bernardoff
7ffad5887d
Node: update issues URL in man page
2018-05-03 15:48:25 +02:00
Vincent Bernardoff
63e44af5e4
TLS: switch to ocaml-tls
2018-05-03 15:48:25 +02:00
Grégoire Henry
0b31ebb455
Data_encoding: split out Binary_stream
2018-05-03 15:35:40 +02:00
Grégoire Henry
c9eab8689a
Shell/Distributed_db: tune requests delay
2018-05-03 11:51:29 +02:00
Grégoire Henry
f2db5ffde3
Shell/Bootstrap: improve network paralellism
2018-05-03 11:51:29 +02:00
Grégoire Henry
6e4b2eab47
Shell: reduce default logging a little bit
2018-05-03 11:51:29 +02:00
Grégoire Henry
caa764f0ff
Data_encoding: do not open the implementation modules by default
2018-05-03 11:05:06 +02:00
Raphaël Proust
0a3c9d52ec
Data_encoding: deduplicate documentation
2018-05-03 15:25:47 +08:00
Raphaël Proust
194d3f9120
Data_encoding: move internal function internally
2018-05-03 15:18:10 +08:00
Raphaël Proust
34d4e9ec5d
Data_encoding: don't open Encoding
2018-05-03 15:13:39 +08:00
Raphaël Proust
1ade54a7d7
Data_encoding: separate Size into its own module
2018-05-03 15:11:46 +08:00
Raphaël Proust
2418554f78
Data_encoding: reorder and reorganize doc
2018-05-03 14:00:24 +08:00
Raphaël Proust
56fbc5267d
Data_encoding: split implementation
...
In an effort to keep a clean commit history, the interface is unchanged.
2018-05-03 12:27:17 +08:00
Milo Davis
7a43c5bc41
P2p_pool: fix ambiguous JSON union case
2018-04-26 22:52:21 +02:00
Milo Davis
ebfdeea8d5
Data_encoding: add descriptions to encodings
2018-04-26 22:52:21 +02:00
Milo Davis
f5cc599ae6
Data_encoding: add names to union cases
2018-04-26 22:52:21 +02:00
Vincent Bernardoff
de006f4be3
Crypto: fix hardcoded signatures in tests
2018-04-26 21:24:21 +02:00
Vincent Bernardoff
54bbc71c1b
Crypto: sign 32 bytes message hash
2018-04-26 21:24:21 +02:00
Vincent Bernardoff
47f9c2460b
Crypto: fixes for secp256k1
2018-04-26 21:24:21 +02:00
Vincent Bernardoff
3a0cdfd90a
Crypto: Secp256k1 -> Libsecp256k1
2018-04-26 21:24:21 +02:00
Raphaël Proust
f8130eed82
Stdlib/MBytes: avoid double raise
2018-04-26 21:22:28 +02:00
Raphaël Proust
1af07b233a
Data_encoding: better documentation of int
2018-04-26 21:20:40 +02:00
Grégoire Henry
02beb9c79a
CI: fix busybox compatibility
2018-04-26 12:55:07 +02:00
Grégoire Henry
0fe8975817
Test: faster testsuite
...
No need to wait 1 second between blocks!
2018-04-22 13:48:20 +02:00
Grégoire Henry
a3a33c4814
Shell: export Signature.Public_key_hash.zero
2018-04-22 13:46:31 +02:00
Grégoire Henry
c3eda23b45
Shell: add a global watcher for new valid blocks in State
2018-04-22 13:46:31 +02:00
Grégoire Henry
3ba30fa468
RPC: allow 'epoch' as a valid Time.rpc_arg
2018-04-22 13:46:31 +02:00
Grégoire Henry
d3f4424c75
RPC: Use bytes
for source files encoding in protocol updates
2018-04-22 13:46:31 +02:00
Grégoire Henry
bc9179094f
Shell: store mainchain and testchain in State
2018-04-22 13:41:26 +02:00
Grégoire Henry
7adc0c90e7
Compiler: preserve Protocol_hash
2018-04-22 13:41:26 +02:00