testIp() — netty Function Reference
Architecture documentation for the testIp() function in DefaultDnsRecordEncoderTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 02af7f69_bb45_8899_b32e_7cb8d83b8efb["testIp()"] 47911929_f87d_8a18_283d_e24d57ce4e70["DefaultDnsRecordEncoderTest"] 02af7f69_bb45_8899_b32e_7cb8d83b8efb -->|defined in| 47911929_f87d_8a18_283d_e24d57ce4e70 57b29952_14f1_2566_a9bf_06fb1601ced8["testOptEcsRecordIp()"] 57b29952_14f1_2566_a9bf_06fb1601ced8 -->|calls| 02af7f69_bb45_8899_b32e_7cb8d83b8efb 40ccd482_9999_adc8_5082_1a9cde4c7db2["nextInt()"] 02af7f69_bb45_8899_b32e_7cb8d83b8efb -->|calls| 40ccd482_9999_adc8_5082_1a9cde4c7db2 style 02af7f69_bb45_8899_b32e_7cb8d83b8efb fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
codec-dns/src/test/java/io/netty/handler/codec/dns/DefaultDnsRecordEncoderTest.java lines 126–182
private static void testIp(InetAddress address, int prefix) throws Exception {
int lowOrderBitsToPreserve = prefix % Byte.SIZE;
ByteBuf addressPart = Unpooled.wrappedBuffer(address.getAddress(), 0,
DefaultDnsRecordEncoder.calculateEcsAddressLength(prefix, lowOrderBitsToPreserve));
if (lowOrderBitsToPreserve > 0) {
// Pad the leftover of the last byte with zeros.
int idx = addressPart.writerIndex() - 1;
byte lastByte = addressPart.getByte(idx);
int paddingMask = -1 << 8 - lowOrderBitsToPreserve;
addressPart.setByte(idx, lastByte & paddingMask);
}
int payloadSize = nextInt(Short.MAX_VALUE);
int extendedRcode = nextInt(Byte.MAX_VALUE * 2); // Unsigned
int version = nextInt(Byte.MAX_VALUE * 2); // Unsigned
DefaultDnsRecordEncoder encoder = new DefaultDnsRecordEncoder();
ByteBuf out = Unpooled.buffer();
try {
DnsOptEcsRecord record = new DefaultDnsOptEcsRecord(
payloadSize, extendedRcode, version, prefix, address.getAddress());
encoder.encodeRecord(record, out);
assertEquals(0, out.readByte()); // Name
assertEquals(DnsRecordType.OPT.intValue(), out.readUnsignedShort()); // Opt
assertEquals(payloadSize, out.readUnsignedShort()); // payload
assertEquals(record.timeToLive(), out.getUnsignedInt(out.readerIndex()));
// Read unpacked TTL.
assertEquals(extendedRcode, out.readUnsignedByte());
assertEquals(version, out.readUnsignedByte());
assertEquals(extendedRcode, record.extendedRcode());
assertEquals(version, record.version());
assertEquals(0, record.flags());
assertEquals(0, out.readShort());
int payloadLength = out.readUnsignedShort();
assertEquals(payloadLength, out.readableBytes());
assertEquals(8, out.readShort()); // As defined by RFC.
int rdataLength = out.readUnsignedShort();
assertEquals(rdataLength, out.readableBytes());
assertEquals((short) (address instanceof Inet4Address ? 1 : 2), out.readShort());
assertEquals(prefix, out.readUnsignedByte());
assertEquals(0, out.readUnsignedByte()); // This must be 0 for requests.
assertEquals(addressPart, out);
} finally {
addressPart.release();
out.release();
}
}
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does testIp() do?
testIp() is a function in the netty codebase, defined in codec-dns/src/test/java/io/netty/handler/codec/dns/DefaultDnsRecordEncoderTest.java.
Where is testIp() defined?
testIp() is defined in codec-dns/src/test/java/io/netty/handler/codec/dns/DefaultDnsRecordEncoderTest.java at line 126.
What does testIp() call?
testIp() calls 1 function(s): nextInt.
What calls testIp()?
testIp() is called by 1 function(s): testOptEcsRecordIp.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free