Commit Graph

2708 Commits

Author SHA1 Message Date
Grégoire Henry
7e8f4341d7 Alpha/RPC: regroups /context/helpers/scripts 2018-06-06 10:54:33 +02:00
Grégoire Henry
32e40ec19a Alpha/RPC: remove helpers/minimal_time 2018-06-06 10:54:33 +02:00
Grégoire Henry
0a78bbe33b Shell/RPC: use GET request for /workers 2018-06-06 10:54:33 +02:00
Grégoire Henry
64c464a73f Shell/RPC: some module renaming/aliasing 2018-06-06 10:54:33 +02:00
Grégoire Henry
2a93a336aa Shell/RPC: use query parameters in /injection 2018-06-06 10:54:33 +02:00
Grégoire Henry
9bc7b1e573 Shell/RPC: also list embedded protocols 2018-06-06 10:54:33 +02:00
Grégoire Henry
04c920df29 Shell/RPC: use query parameters in /protocols 2018-06-06 10:54:33 +02:00
Grégoire Henry
bbf5c7408b Shell/RPC: split out Monitor_services 2018-06-06 10:54:33 +02:00
Grégoire Henry
c175cd1c65 Shell/RPC: use query parameters for /p2p 2018-06-06 10:54:33 +02:00
Grégoire Henry
0b08dce3e8 Shell/RPC: move preapply_operation into Block_services 2018-06-06 10:54:33 +02:00
Grégoire Henry
9093e5c02d Alpha/RPC: minor RPC renaming 2018-06-06 10:54:33 +02:00
Grégoire Henry
b11a604d20 Alpha/RPC: more query parameters in /helpers 2018-06-06 10:54:33 +02:00
Grégoire Henry
482dbb116c Alpha/RPC: use query string for delegation rights 2018-06-06 10:54:33 +02:00
Grégoire Henry
7b758dbca8 Alpha/RPC: export various delegate data 2018-06-06 10:54:33 +02:00
Grégoire Henry
991846e716 Alpha/RPC: use GET requests for /contracts and /constants 2018-06-06 10:54:33 +02:00
Grégoire Henry
acc76d22a8 Alpha/Client: use block metadata 2018-06-06 10:54:33 +02:00
Grégoire Henry
d6f79edae2 Shell/RPC: rework /blocks
- start using `GET` and query parameters instead of `POST`  when
  meaningful

- inline parsed protocol data and metadata in block headers

- inline parsed protocol data and metadata in operations

- split the RPC in four categories:

  - static data, available explicitly in block headers and operations

  - static "metadata", information that were computed while validating
    a block or an operation, but which are not explicit in the block
    header (e.g. the baker of a block, the list of internal
    transfer... (currently not implemented, but that's WIP))

  - "context" all the static data we may read in the context
    (contracts balance, list of delegates, ...)

  - "helpers" are some RPC that may perform some computation.
2018-06-06 10:54:33 +02:00
Grégoire Henry
f02972bb8a Alpha: use Apply_operation_result as operation metadata 2018-06-06 10:54:33 +02:00
Grégoire Henry
b6207bb14d Alpha: allow binary serialization of Apply_operation_result 2018-06-06 10:54:33 +02:00
Grégoire Henry
0ded5c8024 Alpha: export some blocks metadata (baker, ...) 2018-06-06 10:54:33 +02:00
Grégoire Henry
6149909e83 Opam: fix the hacl package 2018-06-06 10:49:48 +02:00
Pierre Boutillier
51ddb708d3 Fix ocaml-secp256k1 Scalar.const
It happened to work by chance on 64bits but it was clearly wrong
2018-06-06 10:00:37 +02:00
Marco Stronati
3ff99dfba3 hacl: build system for 32 bits architecture 2018-06-06 09:57:26 +02:00
Pierre Boutillier
e1cdd69b8b MacOS compatible 'date' format (again) 2018-06-06 09:55:56 +02:00
Pietro
4c4d2121ce [ci]: recompile hidapi-0.8.0_rc1 package for alpine stable 2018-06-05 17:57:03 +02:00
Grégoire Henry
6b12ab9473 Opam: add missing test dependencies for tezos-protocol-alpha 2018-06-05 14:17:24 +02:00
Grégoire Henry
95a56753df P2p: store connection_local_metadata in P2p_connection.Info.t 2018-06-05 13:51:25 +02:00
Grégoire Henry
e610fcaade P2p: read connection metadata before to accept connections
This will allow to decide whether to accept a connection or not
depending on its actual metadata.
2018-06-05 13:51:20 +02:00
Grégoire Henry
26c08672dd P2p: slighty less verbose debug 2018-06-05 13:51:12 +02:00
OCamlPro-Iguernlala
5456824960 P2p: do not propose private nodes for peers swap 2018-06-05 13:51:11 +02:00
OCamlPro-Iguernlala
d08cd57c69 P2p: do not broadcast private peers 2018-06-05 13:48:29 +02:00
OCamlPro-Iguernlala
6b287ba98e P2p: do not request new peers from known private peers 2018-06-05 13:41:33 +02:00
OCamlPro-Iguernlala
bcb56331b5 P2p: tag known peers as private until the first connection
This information will be needed to be able to know if a
point is/was eventually private.
2018-06-05 13:40:12 +02:00
OCamlPro-Iguernlala
4a16b3ef0b P2p: add "private node" information in Connection_metadata.
Add private_node flag in Connection_metadata.t and update Node,
Distributed_db, P2p and P2p_pool to propagate the information
2018-06-05 13:40:00 +02:00
OCamlPro-Iguernlala
65758d08ac P2p: add a warning in case of an incoming connection from an untrusted peer 2018-06-05 13:39:50 +02:00
OCamlPro-Iguernlala
6bbdf13bc5 P2p: do not send bootstrap message to peers in private mode 2018-06-05 13:39:43 +02:00
OCamlPro-Iguernlala
6663109639 P2p: disable some capabilities when creating a connection in private mode
This is mainly done in the creation of the callback functions of
the answerer's field of a 'connection'.
2018-06-05 13:38:53 +02:00
OCamlPro-Iguernlala
c1ccea3501 P2p: do not send peer swap requests in private mode 2018-06-05 13:34:50 +02:00
OCamlPro-Iguernlala
01648e7611 Node: rename option '--closed' to '--private-mode' 2018-06-05 13:29:06 +02:00
Marco Stronati
7b8f764524 Tests: add tests for baking 2018-06-05 12:55:59 +02:00
Marco Stronati
ff237c79cc Tests: add tests for seed nonce revelation operation 2018-06-05 12:55:59 +02:00
Galfour
6e65a12206 Tests: add tests for double endorsement and double baking 2018-06-05 12:23:40 +02:00
Vincent Botbol
7505a66904 Tests: add tests for endorsement and activation operations 2018-06-05 12:23:40 +02:00
Quyen
d9a11caeb8 Tests: add tests for transfer and origination operations 2018-06-05 12:23:40 +02:00
Grégoire Henry
e8e66a83c7 Tests/helpers: replace old test framework 2018-06-05 12:23:40 +02:00
Grégoire Henry
4105467603 Alpha: changes needed for test framework 2018-06-05 11:56:40 +02:00
michael
bd3a9fabe5 test: add a small test for disable_mempool option 2018-06-04 15:55:43 +02:00
michael
aedf867e4a RPC: Add conn_metadata to peer_info rpcs 2018-06-04 15:55:41 +02:00
michael
df4e474577 Shell: disable prevalidator if disable-mempool is used 2018-06-04 15:39:42 +02:00
michael
d5925f088c P2p: Add option to disable the mempool
This allows a node to specify that it doesn't want to receive operations
that are not included in a block. To do so, one should use the new
--disable-mempool option.

A disabled mempool node announce its configuration during the ACK exchange.
This configuration should be easily expandable with other options.

Node will keep track of the ack exchange configuration for each nodes it
is connected to and will not propagate its mempool to disabled mempool
nodes.

A disabled mempool node will ignore non-empty mempool received.
In the future, this incident should be punish by a decrement of its score
and / or ban.
2018-06-04 15:35:22 +02:00