rust-bitcoin-unsafe-fast/bitcoin/fuzz
Andrew Poelstra deaf21dd84
Merge rust-bitcoin/rust-bitcoin#988: Replace consensus `Encodable`/`Decodable` Psbt Serialization
c4363e5ba1 Deserialize Psbt fields, don't consensus_encode (DanGould)
c1dd6ad8a2 Serialize Psbt fields, don't consensus_encode them (DanGould)
1b7b08aa5d De/serialize Psbt without consensus traits (DanGould)

Pull request description:

  fix https://github.com/rust-bitcoin/rust-bitcoin/issues/934

  Instead of using consensus {de,en}code, serialize high-level structures (PartiallySignedTransaciton, Output, Input) borrow the signature from `Serialize`, `Deserialize` traits and implement them on Psbt:

  ```rs
  impl Psbt {
      /// Serialize a value as raw data.
      fn serialize(&self) -> Vec<u8>;

      /// Deserialize a value from raw data.
      fn deserialize(bytes: &[u8]) -> Result<Self, encode::Error>;
  }
  ```

ACKs for top commit:
  apoelstra:
    ACK c4363e5ba1
  tcharding:
    ACK c4363e5ba1
  sanket1729:
    ACK c4363e5ba1. One small comment, but can be addressed in follow up if there is nothing else from other reviewers.
  Kixunil:
    ACK c4363e5ba1

Tree-SHA512: d8dd5ef1189b36fde08969b1ec36006a6fc55ae990f62ea744e6669e03a7f9e90e1d5907be7eac48ee1af23bc20a62aa7e60ff1ff78080d0e923bb9ccedcd432
2023-01-04 18:32:59 +00:00
..
fuzz_targets De/serialize Psbt without consensus traits 2022-12-21 12:01:20 -05:00
hfuzz_input Import bitcoin_hashes crate into hashes 2022-11-08 08:58:09 +11:00
.gitignore Import bitcoin_hashes crate into hashes 2022-11-08 08:58:09 +11:00
Cargo.toml Patch hashes and update the code 2022-12-18 14:33:55 +01:00
cycle.sh Import bitcoin_hashes crate into hashes 2022-11-08 08:58:09 +11:00
travis-fuzz.sh Import bitcoin_hashes crate into hashes 2022-11-08 08:58:09 +11:00