prysm-pulse/proto
Preston Van Loon cebb62997d
Add beacon state unmarshal fuzzer, afl support (#6625)
* Add AFL third_party libraries

* add beacon state fuzzing, add afl fuzz bundle

* rm fuzzing engine

* fix and lint

* Check for array out of bounds when calculating proposer delta

* failing test

* fix

* Checkpoint progress

* Add requirement that inclusion distance is not zero, add regression test

* No need for HTR since that is covered in process slots

* Removing some fuzzit logic, old fuzz tests

* Add ssz encoder test and fix

* Fuzzing checkpoint, adding fuzzing to the p2p layer

* ignore some libfuzzer files

* Full testing of p2p processing of blocks, with some mocked stuff

* use tmpdir and always process blocks

* use checkptr

* Update ethereumapis

* go mod tidy

* benchmarks for ferran's fast ssz hash tree root

* Update fastssz

* fmt

* gaz

* goimports

* Fix

* fix ethereumapis

* fix again

* kafka

* fix gen file

* fix compute signing root

* gofmt

* checkpoint progress

* progress

* checkpoint

* updates

* updates

* merge fix

* WIP

* merge

* fix build

* fix merge related issues

* cleanup

* revert unrelated

* lint

* lint

* lint

* manual tags for fuzz

* Commentary on upload script

* some import fixes, but not all

* fix //fuzz:fuzz_tests

* rm unused test

* update generated ssz

* Set // +build libfuzzer

* remove debug code

* A bit of refactoring ot explain why there is a committee_disabled file

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-09-14 11:42:08 -07:00
..
beacon Remove Deprecated Request Type (#7153) 2020-09-01 13:35:30 +00:00
cluster Add debug endpoint for individual vote status (#6166) 2020-06-08 21:37:56 -05:00
faucet Refactor dependencies, make Prysm "go gettable" (#6053) 2020-05-31 14:44:34 +08:00
slashing No sig slasher rpc (#6174) 2020-06-11 18:50:12 +00:00
testing Add beacon state unmarshal fuzzer, afl support (#6625) 2020-09-14 11:42:08 -07:00
validator/accounts Add Chain Genesis Info to Node Connection Response (#7194) 2020-09-08 20:54:56 +00:00
BUILD.bazel Template based protobuf parameters for ssz configurations (#3062) 2019-07-24 22:03:05 -04:00
README.md Remove proto/sharding and move slashing to own dir (#4332) 2019-12-20 21:47:00 -06:00
ssz_proto_library.bzl Update to v0.12 (#5614) 2020-06-09 15:40:48 -07:00

Ethereum Serenity Protocol Buffers

This package defines common protobuf messages and services used by Ethereum Serenity clients. Following the structure of:

proto/
  beacon/
    db/
    p2p/
      v1/
    rpc/
      v1/
  cluster/
  slashing/
  testing/

We specify messages available for p2p communication common to beacon chain nodes and sharding clients.

For now, we are checking in all generated code to support native go dependency management. The generated pb.go files can be derived from bazel's bin directory.

For example, when we build the testing go proto library bazel build //proto/testing:ethereum_testing_go_proto there is a pb.go generated at bazel-bin/proto/testing/linux_amd64_stripped/ethereum_testing_go_proto\~/github.com/prysmaticlabs/prysm/proto/testing/test.pb.go. This generated file can be copied, or you can use you protoc locally if you prefer.