Commit Graph

35 Commits

Author SHA1 Message Date
Steven Roose fea09a0a94
Improve the Instructions iterator for scripts
- Rename the `iter` method to `instructions`.
- Add `instructions_minimal` for minimal-enforced iteration.
- Iterator has `Result<Instruction, Error>` as items.
2020-04-11 23:52:26 +01:00
Kiminuo d8223bb73c Update travis-fuzz.sh to check that fuzz input file names are allowed on Windows systems 2019-12-08 16:42:43 +00:00
Kiminuo 1b617b8f54 Rename fuzz input file names to allow repo cloning on Windows [fixes #350] 2019-12-08 16:42:43 +00:00
Steven Roose 3c390ceb93
Add fuzzer for Address::from_script 2019-08-15 22:29:10 +01:00
Riccardo Casatta 7d6687451a use BTreeMap instead of HashMap to always serialize the same (#310)
* use BTreeMap instead of HashMap to always serialize the same

* fix rust 1.22 error

* psbt fuzz roundtrip

* psbt fuzz roundtrip on our ser
2019-08-09 17:03:12 +02:00
Andrew Poelstra abb9210c04 make `VarInt::len` and `Transaction::get_weight` return a usize 2019-07-11 17:14:05 +00:00
Steven Roose 30201f3924
Remove Decimal and replace strason with serde_json 2019-06-13 18:29:16 +01:00
Andrew Poelstra 5d7e6bb7a4
Merge pull request #272 from TheBlueMatt/2019-05-net-cleanups
Fix DoS in RawNetworkMessage Deserialization
2019-06-07 11:53:31 +00:00
Matt Corallo 0904935f19 Switch Travis fuzzing to 30 seconds per target from an iter count. 2019-06-07 07:11:21 -04:00
Andrew Poelstra a6c1eacd70
Merge pull request #270 from stevenroose/signed-amount
Add Amount and SignedAmount
2019-06-07 09:16:02 +00:00
Matt Corallo 1b2dc9d6b0 Rename deserialize_raw_network_message to make my afl scripts happy 2019-06-05 07:49:19 -04:00
Carl Dong 836fdce475 fuzz: Add fuzzer for RawNetworkMessage. 2019-06-05 07:49:19 -04:00
Steven Roose 7af134ce79
Add fuzz target for Amount parsing 2019-06-04 12:54:12 +01:00
Matt Corallo 2b6058e335 Decrease travis-fuzz iterations to fix hangs 2019-05-30 11:25:37 -04:00
Carl Dong f74ec3e187 Add fuzz testing for PartiallySignedTransaction 2019-02-28 11:11:55 -05:00
Andrew Poelstra 944c840460
Merge pull request #179 from apoelstra/2018-10-fuzz-outpoint
add fuzzer for transaction::OutPoint
2018-12-03 18:18:13 +00:00
Andrew Poelstra 8b6a40f96a add fuzzer for transaction::OutPoint 2018-10-18 23:14:23 +00:00
Andrew Poelstra 7f7013db9c fuzz: check that transaction deserialization roundtrips 2018-10-10 02:03:08 +00:00
Carl Dong 0f42ca69b0 Move relevant names into consensus::encode
- Move network::encodable::* to consensus::encode::*
- Rename Consensus{En,De}codable to {En,De}codable (now under
  consensus::encode)
- Move network::serialize::Error to consensus::encode::Error
- Remove Raw{En,De}coder, implement {En,De}coder for T: {Write,Read}
  instead
- Move network::serialize::Simple{En,De}coder to
  consensus::encode::{En,De}coder
- Rename util::Error::Serialize to util::Error::Encode
- Modify comments to refer to new names
- Modify files to refer to new names
- Expose {En,De}cod{able,er}, {de,}serialize, Params
- Do not return Result for serialize{,_hex} as serializing to a Vec
  should never fail
2018-09-25 21:19:35 +08:00
Matt Corallo ac11191f71 Upgrade AFL to 0.4 with persistent mode fuzzing 2018-09-06 16:58:38 -04:00
Matt Corallo 12d9e9803c Update fuzz seeds 2018-09-06 16:58:37 -04:00
Andrew Poelstra cef78d81af fuzz: check that script deserialization roundtrips 2018-08-24 20:31:50 +00:00
Andrew Poelstra fc0fec7e19 fuzz: add Script::iter tests to script deserialization test 2018-08-22 20:40:44 +00:00
Andrew Poelstra dbefaef25c
Merge pull request #142 from jeandudey/2018-08-decimal-fromstr
Implement `FromStr` for `UDecimal`/`Decimal`.
2018-08-22 19:00:02 +00:00
Jean Pierre Dudey be0d54738b Add fuzz tests for `Decimal`/`UDecimal` parsing.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-08-21 16:21:29 -04:00
Carl Dong e5b5cbfadb Fix Error type for SimpleDecoder and SimpleEncoder
- Separate serialize::Error and network::Error from util::Error
- Remove unneeded propagate_err and consume_err
- Change fuzzing code to ignore Err type
2018-08-21 01:58:40 -07:00
Matt Corallo 63765a2467 Check in good fuzzing starting points for current fuzz targets 2018-06-04 10:36:48 -04:00
Andrew Poelstra c1f024779f hfuzz: separate _workspace and _input directories, add workspace to .gitignore 2018-04-16 21:42:09 +00:00
Matt Corallo 49d7538452 Fix travis-fuzz upgrade handling 2018-04-16 21:42:09 +00:00
Matt Corallo 3793b2859a Add a Transaction.get_weight() method, check it in fuzzing 2018-04-02 12:23:05 -04:00
Matt Corallo 8ae711ce0f Check-in fuzzing inputs for deserialize_script.
These were generated by running afl with AFL_EXIT_WHEN_DONE,
10 billion iterations in honggfuzz, and then minimizing with
afl-cmin.
2018-03-21 18:44:10 -04:00
Matt Corallo 298ba23876 Add address serialization round-trip fuzzer 2018-03-21 18:44:10 -04:00
Matt Corallo 73fca023ae Set travis to do 1,000,000 hfuzz steps 2018-03-21 18:44:10 -04:00
Matt Corallo d445eaa8c3 Update fuzzers to match rust-lightning boilerplate 2018-03-21 17:14:41 -04:00
Daniel Lockyer 3cf1ccf8f8 Add fuzzing code 2017-06-07 09:19:25 +01:00