Moves all of the content from `bitcoin/p2p` into `p2p`. `TryFrom<Network>` must be implemented for `Network -> Magic` now that `Network` is a foreign, non-exhaustive type. Ser/de test is updated accordingly, as well as the `Magic::from_network` constructor, which I have opted to return an `Option<Self>`. The `TryFrom` implementation uses a new `UnknownNetworkError(Network)` that mirrors the `Magic -> Network` error. The example handshake does not generate a random nonce for the version message, as there is no `rand` dependency in this crate and the program only makes a single, user-defined connection. It appears we can do better than copying and pasting the consensus encoding macros and functions from `bitcoin` without doing weird cross-crate macros that require some special knowledge of the crate to know when they will compile. |
||
---|---|---|
.. | ||
deser_net_msg.rs | ||
deserialize_address.rs | ||
deserialize_block.rs | ||
deserialize_prefilled_transaction.rs | ||
deserialize_psbt.rs | ||
deserialize_script.rs | ||
deserialize_transaction.rs | ||
deserialize_witness.rs | ||
outpoint_string.rs | ||
p2p_address_roundtrip.rs | ||
script_bytes_to_asm_fmt.rs |