mirror of
https://github.com/tendermint/tendermint.git
synced 2026-02-03 10:32:05 +00:00
Co-authored-by: Emmanuel T Odeke <emmanuel@orijtech.com> Closes #5907 - add init-corpus to blockchain reactor - remove validator-set FromBytes test now that we have proto, we don't need to test it! bye amino - simplify mempool test do we want to test remote ABCI app? - do not recreate mux on every crash in jsonrpc test - update p2p pex reactor test - remove p2p/listener test the API has changed + I did not understand what it's tested anyway - update secretconnection test - add readme and makefile - list inputs in readme - add nightly workflow - remove blockchain fuzz test EncodeMsg / DecodeMsg no longer exist
36 lines
705 B
Go
36 lines
705 B
Go
// nolint: gosec
|
|
package addr
|
|
|
|
import (
|
|
"encoding/json"
|
|
"fmt"
|
|
"math/rand"
|
|
|
|
"github.com/tendermint/tendermint/p2p"
|
|
"github.com/tendermint/tendermint/p2p/pex"
|
|
)
|
|
|
|
var addrBook = pex.NewAddrBook("./testdata/addrbook.json", true)
|
|
|
|
func Fuzz(data []byte) int {
|
|
addr := new(p2p.NetAddress)
|
|
if err := json.Unmarshal(data, addr); err != nil {
|
|
return -1
|
|
}
|
|
|
|
// Fuzz AddAddress.
|
|
err := addrBook.AddAddress(addr, addr)
|
|
if err != nil {
|
|
return 0
|
|
}
|
|
|
|
// Also, make sure PickAddress always returns a non-nil address.
|
|
bias := rand.Intn(100)
|
|
if p := addrBook.PickAddress(bias); p == nil {
|
|
panic(fmt.Sprintf("picked a nil address (bias: %d, addrBook size: %v)",
|
|
bias, addrBook.Size()))
|
|
}
|
|
|
|
return 1
|
|
}
|