Home / File/ netty_io_uring_native.c — netty Source File

netty_io_uring_native.c — netty Source File

Architecture documentation for netty_io_uring_native.c, a c file in the netty codebase. 28 imports, 0 dependents.

File c NativeTransport 28 imports

Entity Profile

Dependency Diagram

graph LR
  1e90a91a_8d6e_4bf9_7471_176403d8fd24["netty_io_uring_native.c"]
  0e9a8ab2_7f8f_64f5_981b_0fbad9d0a59e["netty_io_uring.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 0e9a8ab2_7f8f_64f5_981b_0fbad9d0a59e
  ddebf97c_764b_c969_f280_80845f7175f3["syscall.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> ddebf97c_764b_c969_f280_80845f7175f3
  d0123fb4_894e_5f98_aeac_81dde1bffaf1["netty_io_uring_linuxsocket.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> d0123fb4_894e_5f98_aeac_81dde1bffaf1
  9352ca16_90fc_8ed8_7895_3d7ec708edb1["dlfcn.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 9352ca16_90fc_8ed8_7895_3d7ec708edb1
  71c52c20_b4aa_1551_58db_42e42fa27aa6["errno.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 71c52c20_b4aa_1551_58db_42e42fa27aa6
  d74a6009_ec80_1e86_97f9_4d3451c5416a["fcntl.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> d74a6009_ec80_1e86_97f9_4d3451c5416a
  0c4a58dc_2fdd_e4ad_9234_08a5790f43e3["jni.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 0c4a58dc_2fdd_e4ad_9234_08a5790f43e3
  288859d7_e5ab_33f0_d108_cd2692f095f6["stdbool.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 288859d7_e5ab_33f0_d108_cd2692f095f6
  57dbba5a_a02c_21b2_1382_79ab5e44c50a["stddef.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 57dbba5a_a02c_21b2_1382_79ab5e44c50a
  617ed4cf_d595_a5c7_1593_810f21ce0712["stdint.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 617ed4cf_d595_a5c7_1593_810f21ce0712
  929444c6_83a0_72f2_6829_b63c20d5b933["stdio.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 929444c6_83a0_72f2_6829_b63c20d5b933
  d822c438_bcda_8ebc_05f9_1007c55018be["stdlib.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> d822c438_bcda_8ebc_05f9_1007c55018be
  5cbcd069_b25c_7379_e9c5_47a7dd85985a["string.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 5cbcd069_b25c_7379_e9c5_47a7dd85985a
  5f4ab627_5bbd_12fd_4013_bc3764ac0bd8["ioctl.h"]
  1e90a91a_8d6e_4bf9_7471_176403d8fd24 --> 5f4ab627_5bbd_12fd_4013_bc3764ac0bd8
  style 1e90a91a_8d6e_4bf9_7471_176403d8fd24 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

/*
 * Copyright 2020 The Netty Project
 *
 * The Netty Project licenses this file to you under the Apache License,
 * version 2.0 (the "License"); you may not use this file except in compliance
 * with the License. You may obtain a copy of the License at:
 *
 *   https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations
 * under the License.
 */
#define _GNU_SOURCE // RTLD_DEFAULT
#include "netty_io_uring.h"
#include <dlfcn.h>
#include <errno.h>
#include <fcntl.h>
#include <jni.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>

#include "syscall.h"
#include "netty_io_uring_linuxsocket.h"
#include <syscall.h>

#include <arpa/inet.h>
#include <netinet/in.h>
#include <netinet/tcp.h>
#include <sys/socket.h>
#include <sys/un.h>

#include <sys/eventfd.h>
#include <poll.h>

// Needed for UDP_SEGMENT
#include <netinet/udp.h>
#include <sys/utsname.h>

// Allow to compile on systems with older kernels.
#ifndef UDP_SEGMENT
#define UDP_SEGMENT 103
#endif

// Add define if NETTY_IO_URING_BUILD_STATIC is defined so it is picked up in netty_jni_util.c
#ifdef NETTY_IO_URING_BUILD_STATIC
#define NETTY_JNI_UTIL_BUILD_STATIC
#endif

// ... (913 more lines)

Dependencies

Frequently Asked Questions

What does netty_io_uring_native.c do?
netty_io_uring_native.c is a source file in the netty codebase, written in c. It belongs to the NativeTransport domain.
What does netty_io_uring_native.c depend on?
netty_io_uring_native.c imports 28 module(s): dlfcn.h, errno.h, eventfd.h, fcntl.h, in.h, inet.h, ioctl.h, jni.h, and 20 more.
Where is netty_io_uring_native.c in the architecture?
netty_io_uring_native.c is located at transport-native-io_uring/src/main/c/netty_io_uring_native.c (domain: NativeTransport, directory: transport-native-io_uring/src/main/c).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free