verifyUdpCapture() — netty Function Reference
Architecture documentation for the verifyUdpCapture() function in PcapWriteHandlerTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD eb1ea467_0963_a158_64e4_4642e02fe449["verifyUdpCapture()"] e9f4993c_4935_9405_4fab_0bbc9030a673["PcapWriteHandlerTest"] eb1ea467_0963_a158_64e4_4642e02fe449 -->|defined in| e9f4993c_4935_9405_4fab_0bbc9030a673 09664c21_072d_80b4_a75e_e5bf4f97af22["udpV4()"] 09664c21_072d_80b4_a75e_e5bf4f97af22 -->|calls| eb1ea467_0963_a158_64e4_4642e02fe449 ddfde28c_4e8f_f8cd_23bf_3a4fb181fa91["embeddedUdp()"] ddfde28c_4e8f_f8cd_23bf_3a4fb181fa91 -->|calls| eb1ea467_0963_a158_64e4_4642e02fe449 8d1bfd2f_28e4_d994_01ee_6a6b380155f9["udpMixedAddress()"] 8d1bfd2f_28e4_d994_01ee_6a6b380155f9 -->|calls| eb1ea467_0963_a158_64e4_4642e02fe449 568c9eeb_3e86_a619_596b_e2249c5fae2f["udpZeroLengthByteBufCaptured()"] 568c9eeb_3e86_a619_596b_e2249c5fae2f -->|calls| eb1ea467_0963_a158_64e4_4642e02fe449 e94a2daf_6334_d8a0_7364_bdcc90c0b5af["udpZeroLengthDatagramCaptured()"] e94a2daf_6334_d8a0_7364_bdcc90c0b5af -->|calls| eb1ea467_0963_a158_64e4_4642e02fe449 a424c66d_5bc4_c81f_9a05_686817ee4de8["verifyGlobalHeaders()"] eb1ea467_0963_a158_64e4_4642e02fe449 -->|calls| a424c66d_5bc4_c81f_9a05_686817ee4de8 style eb1ea467_0963_a158_64e4_4642e02fe449 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
handler/src/test/java/io/netty/handler/pcap/PcapWriteHandlerTest.java lines 1279–1339
private static void verifyUdpCapture(boolean verifyGlobalHeaders, ByteBuf byteBuf, ByteBuf expectedPayload,
InetSocketAddress remoteAddress, InetSocketAddress localAddress) {
if (verifyGlobalHeaders) {
verifyGlobalHeaders(byteBuf);
}
int expectedPayloadLength = expectedPayload.readableBytes();
// Verify Pcap Packet Header
byteBuf.readInt(); // Just read, we don't care about timestamps for now
byteBuf.readInt(); // Just read, we don't care about timestamps for now
assertEquals(42 + expectedPayloadLength, byteBuf.readInt()); // Length of Packet Saved In Pcap
assertEquals(42 + expectedPayloadLength, byteBuf.readInt()); // Actual Length of Packet
// -------------------------------------------- Verify Packet --------------------------------------------
// Verify Ethernet Packet
ByteBuf ethernetPacket = byteBuf.readBytes(42 + expectedPayloadLength);
ByteBuf dstMac = ethernetPacket.readBytes(6);
ByteBuf srcMac = ethernetPacket.readBytes(6);
assertArrayEquals(new byte[] { 0, 0, 94, 0, 83, -1 }, ByteBufUtil.getBytes(dstMac));
assertArrayEquals(new byte[] { 0, 0, 94, 0, 83, 0 }, ByteBufUtil.getBytes(srcMac));
assertEquals(0x0800, ethernetPacket.readShort());
// Verify IPv4 Packet
ByteBuf ipv4Packet = ethernetPacket.readBytes(28 + expectedPayloadLength);
assertEquals(0x45, ipv4Packet.readByte()); // Version + IHL
assertEquals(0x00, ipv4Packet.readByte()); // DSCP
assertEquals(28 + expectedPayloadLength, ipv4Packet.readShort()); // Length
assertEquals(0x0000, ipv4Packet.readShort()); // Identification
assertEquals(0x0000, ipv4Packet.readShort()); // Fragment
assertEquals((byte) 0xff, ipv4Packet.readByte()); // TTL
assertEquals((byte) 17, ipv4Packet.readByte()); // Protocol
assertEquals(0, ipv4Packet.readShort()); // Checksum
// Source IPv4 Address
assertEquals(NetUtil.ipv4AddressToInt((Inet4Address) localAddress.getAddress()), ipv4Packet.readInt());
// Destination IPv4 Address
assertEquals(NetUtil.ipv4AddressToInt((Inet4Address) remoteAddress.getAddress()), ipv4Packet.readInt());
// Verify UDP Packet
ByteBuf udpPacket = ipv4Packet.readBytes(8 + expectedPayloadLength);
assertEquals(localAddress.getPort() & 0xffff, udpPacket.readUnsignedShort()); // Source Port
assertEquals(remoteAddress.getPort() & 0xffff, udpPacket.readUnsignedShort()); // Destination Port
assertEquals(8 + expectedPayloadLength, udpPacket.readShort()); // Length
assertEquals(0x0001, udpPacket.readShort()); // Checksum
// Verify Payload
ByteBuf payload = udpPacket.readBytes(expectedPayloadLength);
assertArrayEquals(ByteBufUtil.getBytes(expectedPayload), ByteBufUtil.getBytes(payload)); // Payload
// Release all ByteBuf
assertTrue(dstMac.release());
assertTrue(srcMac.release());
if (expectedPayloadLength > 0) {
assertTrue(payload.release());
}
assertTrue(ethernetPacket.release());
assertTrue(ipv4Packet.release());
assertTrue(udpPacket.release());
}
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does verifyUdpCapture() do?
verifyUdpCapture() is a function in the netty codebase, defined in handler/src/test/java/io/netty/handler/pcap/PcapWriteHandlerTest.java.
Where is verifyUdpCapture() defined?
verifyUdpCapture() is defined in handler/src/test/java/io/netty/handler/pcap/PcapWriteHandlerTest.java at line 1279.
What does verifyUdpCapture() call?
verifyUdpCapture() calls 1 function(s): verifyGlobalHeaders.
What calls verifyUdpCapture()?
verifyUdpCapture() is called by 5 function(s): embeddedUdp, udpMixedAddress, udpV4, udpZeroLengthByteBufCaptured, udpZeroLengthDatagramCaptured.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free