add lneto.Validator type for frame validation

This commit is contained in:
soypat
2025-01-16 21:25:37 -03:00
parent 0290940e1b
commit 93d1f80015
5 changed files with 188 additions and 62 deletions
+7 -6
View File
@@ -217,16 +217,17 @@ func (gen *packetGen) appendRandomIPv4TCPPacket(dst []byte, rng *rand.Rand) []by
case len(tcpPayload) > 0 && firstPayloadByte != tcpPayload[0]:
panic("TCP options overwrite payload")
}
err = efrm.ValidateSize()
if err != nil {
var vld Validator
efrm.ValidateSize(&vld)
if err = vld.Err(); err != nil {
panic(err)
}
err = ifrm.ValidateSize()
if err != nil {
ifrm.Validate(&vld)
if err = vld.Err(); err != nil {
panic(err)
}
err = tfrm.ValidateSize()
if err != nil {
tfrm.ValidateSize(&vld)
if err = vld.Err(); err != nil {
panic(err)
}
return dst