(f *testing.F)
| 274 | } |
| 275 | |
| 276 | func Fuzz_handleGRO(f *testing.F) { |
| 277 | pkt0 := tcp4Packet(ip4PortA, ip4PortB, header.TCPFlagAck, 100, 1) |
| 278 | pkt1 := tcp4Packet(ip4PortA, ip4PortB, header.TCPFlagAck, 100, 101) |
| 279 | pkt2 := tcp4Packet(ip4PortA, ip4PortC, header.TCPFlagAck, 100, 201) |
| 280 | pkt3 := tcp6Packet(ip6PortA, ip6PortB, header.TCPFlagAck, 100, 1) |
| 281 | pkt4 := tcp6Packet(ip6PortA, ip6PortB, header.TCPFlagAck, 100, 101) |
| 282 | pkt5 := tcp6Packet(ip6PortA, ip6PortC, header.TCPFlagAck, 100, 201) |
| 283 | pkt6 := udp4Packet(ip4PortA, ip4PortB, 100) |
| 284 | pkt7 := udp4Packet(ip4PortA, ip4PortB, 100) |
| 285 | pkt8 := udp4Packet(ip4PortA, ip4PortC, 100) |
| 286 | pkt9 := udp6Packet(ip6PortA, ip6PortB, 100) |
| 287 | pkt10 := udp6Packet(ip6PortA, ip6PortB, 100) |
| 288 | pkt11 := udp6Packet(ip6PortA, ip6PortC, 100) |
| 289 | f.Add(pkt0, pkt1, pkt2, pkt3, pkt4, pkt5, pkt6, pkt7, pkt8, pkt9, pkt10, pkt11, true, offset) |
| 290 | f.Fuzz(func(t *testing.T, pkt0, pkt1, pkt2, pkt3, pkt4, pkt5, pkt6, pkt7, pkt8, pkt9, pkt10, pkt11 []byte, canUDPGRO bool, offset int) { |
| 291 | pkts := [][]byte{pkt0, pkt1, pkt2, pkt3, pkt4, pkt5, pkt6, pkt7, pkt8, pkt9, pkt10, pkt11} |
| 292 | toWrite := make([]int, 0, len(pkts)) |
| 293 | handleGRO(pkts, offset, newTCPGROTable(), newUDPGROTable(), canUDPGRO, &toWrite) |
| 294 | if len(toWrite) > len(pkts) { |
| 295 | t.Errorf("len(toWrite): %d > len(pkts): %d", len(toWrite), len(pkts)) |
| 296 | } |
| 297 | seenWriteI := make(map[int]bool) |
| 298 | for _, writeI := range toWrite { |
| 299 | if writeI < 0 || writeI > len(pkts)-1 { |
| 300 | t.Errorf("toWrite value (%d) outside bounds of len(pkts): %d", writeI, len(pkts)) |
| 301 | } |
| 302 | if seenWriteI[writeI] { |
| 303 | t.Errorf("duplicate toWrite value: %d", writeI) |
| 304 | } |
| 305 | seenWriteI[writeI] = true |
| 306 | } |
| 307 | }) |
| 308 | } |
| 309 | |
| 310 | func Test_handleGRO(t *testing.T) { |
| 311 | tests := []struct { |
nothing calls this directly
no test coverage detected