SockaddrInTest Class — netty Architecture
Architecture documentation for the SockaddrInTest class in SockaddrInTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD f542b96b_70a1_3930_b104_0cabb6a71e80["SockaddrInTest"] 2fbfca09_4a56_73b6_6b75_05da4a4aeacc["SockaddrInTest.java"] f542b96b_70a1_3930_b104_0cabb6a71e80 -->|defined in| 2fbfca09_4a56_73b6_6b75_05da4a4aeacc 3dc5b6d0_673c_c0df_56bf_d7b2fda747c7["loadJNI()"] f542b96b_70a1_3930_b104_0cabb6a71e80 -->|method| 3dc5b6d0_673c_c0df_56bf_d7b2fda747c7 9e723469_cea3_bf5e_b9d4_30a73af97c01["testIp4()"] f542b96b_70a1_3930_b104_0cabb6a71e80 -->|method| 9e723469_cea3_bf5e_b9d4_30a73af97c01 9ff6693a_a315_a444_e046_c79ba96329db["testIp6()"] f542b96b_70a1_3930_b104_0cabb6a71e80 -->|method| 9ff6693a_a315_a444_e046_c79ba96329db 8665082b_6c07_27b4_5d29_cd377b564330["testWriteIp4ReadIpv6Mapped()"] f542b96b_70a1_3930_b104_0cabb6a71e80 -->|method| 8665082b_6c07_27b4_5d29_cd377b564330 eea30fa7_52d5_804c_2fc6_fa89f620bcf3["testUdsPathname()"] f542b96b_70a1_3930_b104_0cabb6a71e80 -->|method| eea30fa7_52d5_804c_2fc6_fa89f620bcf3 89b4e5a6_b555_ab93_7daf_50593757bb66["testUdsAbstractNamespace()"] f542b96b_70a1_3930_b104_0cabb6a71e80 -->|method| 89b4e5a6_b555_ab93_7daf_50593757bb66
Relationship Graph
Source Code
transport-native-io_uring/src/test/java/io/netty/channel/uring/SockaddrInTest.java lines 35–177
public class SockaddrInTest {
@BeforeAll
public static void loadJNI() {
assumeTrue(IoUring.isAvailable());
}
@Test
public void testIp4() throws Exception {
CleanableDirectBuffer cleanableDirectBuffer = allocateDirectBufferWithNativeOrder(64);
ByteBuffer buffer = cleanableDirectBuffer.buffer();
try {
InetAddress address = InetAddress.getByAddress(new byte[] { 10, 10, 10, 10 });
int port = 45678;
assertEquals(Native.SIZEOF_SOCKADDR_IN, SockaddrIn.setIPv4(buffer, address, port));
byte[] bytes = new byte[4];
InetSocketAddress sockAddr = SockaddrIn.getIPv4(buffer, bytes);
assertArrayEquals(address.getAddress(), sockAddr.getAddress().getAddress());
assertEquals(port, sockAddr.getPort());
} finally {
cleanableDirectBuffer.clean();
}
}
@Test
public void testIp6() throws Exception {
CleanableDirectBuffer cleanableDirectBuffer = allocateDirectBufferWithNativeOrder(64);
ByteBuffer buffer = cleanableDirectBuffer.buffer();
try {
Inet6Address address = Inet6Address.getByAddress(
null, new byte[] { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, 12345);
int port = 45678;
assertEquals(Native.SIZEOF_SOCKADDR_IN6, SockaddrIn.setIPv6(buffer, address, port));
byte[] ipv6Bytes = new byte[16];
byte[] ipv4Bytes = new byte[4];
InetSocketAddress sockAddr = SockaddrIn.getIPv6(buffer, ipv6Bytes, ipv4Bytes);
Inet6Address inet6Address = (Inet6Address) sockAddr.getAddress();
assertArrayEquals(address.getAddress(), inet6Address.getAddress());
assertEquals(address.getScopeId(), inet6Address.getScopeId());
assertEquals(port, sockAddr.getPort());
} finally {
cleanableDirectBuffer.clean();
}
}
@Test
public void testWriteIp4ReadIpv6Mapped() throws Exception {
CleanableDirectBuffer cleanableDirectBuffer = allocateDirectBufferWithNativeOrder(64);
ByteBuffer buffer = cleanableDirectBuffer.buffer();
try {
InetAddress address = InetAddress.getByAddress(new byte[] { 10, 10, 10, 10 });
int port = 45678;
assertEquals(Native.SIZEOF_SOCKADDR_IN6, SockaddrIn.setIPv6(buffer, address, port));
byte[] ipv6Bytes = new byte[16];
byte[] ipv4Bytes = new byte[4];
InetSocketAddress sockAddr = SockaddrIn.getIPv6(buffer, ipv6Bytes, ipv4Bytes);
Inet4Address ipv4Address = (Inet4Address) sockAddr.getAddress();
System.arraycopy(SockaddrIn.IPV4_MAPPED_IPV6_PREFIX, 0, ipv6Bytes, 0,
SockaddrIn.IPV4_MAPPED_IPV6_PREFIX.length);
assertArrayEquals(ipv4Bytes, ipv4Address.getAddress());
assertEquals(port, sockAddr.getPort());
} finally {
cleanableDirectBuffer.clean();
}
}
@Test
public void testUdsPathname() throws Exception {
CleanableDirectBuffer cleanableDirectBuffer = allocateDirectBufferWithNativeOrder(
Native.SIZEOF_SOCKADDR_UN);
ByteBuffer buffer = cleanableDirectBuffer.buffer();
try {
String socketPath = "/tmp/test.sock";
DomainSocketAddress address = new DomainSocketAddress(socketPath);
byte[] pathBytes = socketPath.getBytes(StandardCharsets.UTF_8);
int expectedLength = Native.SOCKADDR_UN_OFFSETOF_SUN_PATH + pathBytes.length + 1;
int actualLength = SockaddrIn.setUds(buffer, address);
Source
Frequently Asked Questions
What is the SockaddrInTest class?
SockaddrInTest is a class in the netty codebase, defined in transport-native-io_uring/src/test/java/io/netty/channel/uring/SockaddrInTest.java.
Where is SockaddrInTest defined?
SockaddrInTest is defined in transport-native-io_uring/src/test/java/io/netty/channel/uring/SockaddrInTest.java at line 35.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free