rtnetlink/fuzz.go
Jeroen Simonetti 7196e82636
Add a nix-shell fuzzing file (#89)
Signed-off-by: Jeroen Simonetti <jeroen@simonetti.nl>
2020-10-27 16:06:21 +01:00

60 lines
1.0 KiB
Go

// +build gofuzz
package rtnetlink
// FuzzLinkMessage will fuzz a LinkMessage
func FuzzLinkMessage(data []byte) int {
m := &LinkMessage{}
if err := (m).UnmarshalBinary(data); err != nil {
return 0
}
if _, err := m.MarshalBinary(); err != nil {
panic(err)
}
return 1
}
// FuzzAddressMessage will fuzz an AddressMessage
func FuzzAddressMessage(data []byte) int {
m := &AddressMessage{}
if err := (m).UnmarshalBinary(data); err != nil {
return 0
}
if _, err := m.MarshalBinary(); err != nil {
panic(err)
}
return 1
}
// FuzzRouteMessage will fuzz a RouteMessage
func FuzzRouteMessage(data []byte) int {
m := &RouteMessage{}
if err := (m).UnmarshalBinary(data); err != nil {
return 0
}
if _, err := m.MarshalBinary(); err != nil {
panic(err)
}
return 1
}
// FuzzNeighMessage will fuzz a NeighMessage
func FuzzNeighMessage(data []byte) int {
m := &NeighMessage{}
if err := (m).UnmarshalBinary(data); err != nil {
return 0
}
if _, err := m.MarshalBinary(); err != nil {
panic(err)
}
return 1
}