chia-blockchain/chia/protocols
Adam Kelly e9bf0ec12b
Reply type decorator (#8276)
* Check types of messages returned from other peers

* Check message type data structures at startup, check that no peeer messages that expect replies are broadcast, and dynamically check return types of messages that do expect replies.

* Type hint protocol message type check functions

* lint

* typo

* add replay_type decorator

* add api reply decorations

* typo

* Don't check non full-node broadcast messages

* Distinguish internal vs peer protocol error
Added Changelog
Moved static check to import time
Moved protocol timeouts to chia/protocols/protocol_timing.py
Comment typos
Rename create_request -> send_request
Comment that INVALID_PROTOCOL_MESSAGE is bannable, not temporary

* Call static check at module import time

* Rename message_response_ok

* Improve protocol checking for outgoing message validation

* Type-o

* reset submodule

Co-authored-by: almog <almogdepaz@gmail.com>
2021-09-20 11:31:15 -07:00
..
__init__.py git mv src chia 2021-04-04 21:41:39 -07:00
farmer_protocol.py git mv src chia 2021-04-04 21:41:39 -07:00
full_node_protocol.py Improve streamable (#3031) 2021-04-30 10:22:11 -07:00
harvester_protocol.py Pools mainnet (#7047) 2021-06-29 14:21:25 -07:00
introducer_protocol.py git mv src chia 2021-04-04 21:41:39 -07:00
pool_protocol.py Pools mainnet (#7047) 2021-06-29 14:21:25 -07:00
protocol_message_types.py Fullnode related changes from wallet protocol and unharded derivation (#8522) 2021-09-18 10:27:34 -07:00
protocol_state_machine.py Reply type decorator (#8276) 2021-09-20 11:31:15 -07:00
protocol_timing.py Reply type decorator (#8276) 2021-09-20 11:31:15 -07:00
shared_protocol.py git mv src chia 2021-04-04 21:41:39 -07:00
timelord_protocol.py Improve streamable (#3031) 2021-04-30 10:22:11 -07:00
wallet_protocol.py Fullnode related changes from wallet protocol and unharded derivation (#8522) 2021-09-18 10:27:34 -07:00