├── .gitignore ├── Cargo.toml ├── Makefile ├── README.md ├── rte.h └── src ├── dpdk.rs └── lib.rs /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | /Cargo.lock 3 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | 3 | name = "rust-dpdk" 4 | version = "0.0.1" 5 | authors = ["Robert Clipsham "] 6 | homepage = "http://dpdk.org/" 7 | repository = "https://github.com/libpnet/rust-dpdk" 8 | license = "BSD-3-Clause" 9 | description = "Bindings to Intel DPDK: Data Plane Development Kit" 10 | readme = "README.md" 11 | keywords = ["networking", "packet", "bindings"] 12 | 13 | #[build-dependencies.rust-bindgen] 14 | #git = "https://github.com/crabtw/rust-bindgen.git" 15 | # 16 | #[build-dependencies] 17 | #regex = "*" 18 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | BINDGEN = bindgen 2 | PERL = perl 3 | EXTRA_ARGS = -msse4.2 -I /usr/lib/clang/3.5.1/include 4 | 5 | all: src/dpdk.rs 6 | 7 | src/dpdk.rs: rte.h 8 | $(BINDGEN) $(EXTRA_ARGS) -match rte -o src/dpdk.rs rte.h 9 | $(PERL) -pi -e 's/uint64_t/u64/g' src/dpdk.rs 10 | $(PERL) -pi -e 's/uint32_t/u32/g' src/dpdk.rs 11 | $(PERL) -pi -e 's/uint16_t/u16/g' src/dpdk.rs 12 | $(PERL) -pi -e 's/uint8_t/u8/g' src/dpdk.rs 13 | $(PERL) -pi -e 's/int64_t/i64/g' src/dpdk.rs 14 | $(PERL) -pi -e 's/int32_t/i32/g' src/dpdk.rs 15 | $(PERL) -pi -e 's/int16_t/i16/g' src/dpdk.rs 16 | $(PERL) -pi -e 's/int8_t/i8/g' src/dpdk.rs 17 | $(PERL) -pi -e 's/(ssize_t|size_t)/::libc::\1/g' src/dpdk.rs 18 | $(PERL) -pi -e 's/uintptr_t/::libc::size_t/g' src/dpdk.rs 19 | $(PERL) -pi -e 's/pthread_t/::libc::pthread_t/g' src/dpdk.rs 20 | $(PERL) -pi -e 's/FILE/::libc::FILE/g' src/dpdk.rs 21 | $(PERL) -pi -e 's/Struct_in6_addr/::libc::in6_addr/g' src/dpdk.rs 22 | $(PERL) -pi -e 's/Struct_in_addr/::libc::in_addr/g' src/dpdk.rs 23 | $(PERL) -pi -e 's/va_list/::libc::c_void/g' src/dpdk.rs 24 | $(PERL) -pi -e 's|__m128i|::libc::c_void /* FIXME This is incorrect */|g' src/dpdk.rs 25 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # rust-dpdk 2 | 3 | Rust bindings to [Intel's DPDK](http://dpdk.org/), currently at version 1.8.0. 4 | 5 | ## Building 6 | 7 | To generate the bindings from scratch, use: 8 | 9 | ``` 10 | make BINDGEN= EXTRA_ARGS= 11 | ``` 12 | 13 | The BINDGEN and EXTRA_ARGS parameters are optional, and may be used to specify 14 | the path to the `bindgen` binary, and replace some of the arguments passed to 15 | `bindgen` (include paths etc) respectively. 16 | 17 | To use within your own project, use: 18 | 19 | ``` 20 | [dependencies.rust-dpdk] 21 | git = "https://github.com/libpnet/rust-dpdk.git" 22 | ``` 23 | -------------------------------------------------------------------------------- /rte.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include 29 | #include 30 | #include 31 | #include 32 | #include 33 | #include 34 | #include 35 | #include 36 | #include 37 | #include 38 | #include 39 | #include 40 | #include 41 | #include 42 | #include 43 | #include 44 | #include 45 | #include 46 | #include 47 | #include 48 | #include 49 | #include 50 | #include 51 | #include 52 | #include 53 | #include 54 | #include 55 | #include 56 | #include 57 | #include 58 | #include 59 | #include 60 | #include 61 | #include 62 | #include 63 | #include 64 | #include 65 | #include 66 | #include 67 | #include 68 | #include 69 | #include 70 | #include 71 | #include 72 | #include 73 | #include 74 | #include 75 | #include 76 | #include 77 | #include 78 | #include 79 | #include 80 | #include 81 | #include 82 | #include 83 | #include 84 | #include 85 | #include 86 | #include 87 | #include 88 | #include 89 | #include 90 | #include 91 | #include 92 | #include 93 | #include 94 | #include 95 | #include 96 | #include 97 | #include 98 | #include 99 | #include 100 | #include 101 | #include 102 | #include 103 | #include 104 | #include 105 | #include 106 | #include 107 | #include 108 | #include 109 | #include 110 | #include 111 | #include 112 | #include 113 | #include 114 | #include 115 | #include 116 | #include 117 | -------------------------------------------------------------------------------- /src/dpdk.rs: -------------------------------------------------------------------------------- 1 | /* automatically generated by rust-bindgen */ 2 | 3 | pub type xmm_t = ::libc::c_void /* FIXME This is incorrect */; 4 | #[repr(C)] 5 | #[derive(Copy)] 6 | pub struct Union_rte_xmm { 7 | pub _bindgen_data_: [u8; 16us], 8 | } 9 | impl Union_rte_xmm { 10 | pub unsafe fn m(&mut self) -> *mut xmm_t { 11 | ::std::mem::transmute(&self._bindgen_data_) 12 | } 13 | pub unsafe fn u8(&mut self) -> *mut [u8; 16us] { 14 | ::std::mem::transmute(&self._bindgen_data_) 15 | } 16 | pub unsafe fn u16(&mut self) -> *mut [u16; 8us] { 17 | ::std::mem::transmute(&self._bindgen_data_) 18 | } 19 | pub unsafe fn u32(&mut self) -> *mut [u32; 4us] { 20 | ::std::mem::transmute(&self._bindgen_data_) 21 | } 22 | pub unsafe fn u64(&mut self) -> *mut [u64; 2us] { 23 | ::std::mem::transmute(&self._bindgen_data_) 24 | } 25 | pub unsafe fn pd(&mut self) -> *mut [::libc::c_double; 2us] { 26 | ::std::mem::transmute(&self._bindgen_data_) 27 | } 28 | } 29 | impl ::std::default::Default for Union_rte_xmm { 30 | fn default() -> Union_rte_xmm { unsafe { ::std::mem::zeroed() } } 31 | } 32 | pub type rte_xmm_t = Union_rte_xmm; 33 | #[repr(C)] 34 | #[derive(Copy)] 35 | pub struct Struct_memory_info { 36 | pub name: [::libc::c_char; 256us], 37 | pub size: u64, 38 | } 39 | impl ::std::default::Default for Struct_memory_info { 40 | fn default() -> Struct_memory_info { unsafe { ::std::mem::zeroed() } } 41 | } 42 | #[repr(C)] 43 | #[derive(Copy)] 44 | pub struct Struct_memseg_info { 45 | pub idx: u32, 46 | pub pfn: u64, 47 | pub size: u64, 48 | pub mfn: [u64; 2048us], 49 | } 50 | impl ::std::default::Default for Struct_memseg_info { 51 | fn default() -> Struct_memseg_info { unsafe { ::std::mem::zeroed() } } 52 | } 53 | #[repr(C)] 54 | #[derive(Copy)] 55 | pub struct Struct_memblock_info { 56 | pub exchange_flag: u8, 57 | pub used: u8, 58 | pub vir_addr: u64, 59 | pub pfn: u64, 60 | pub mfn: u64, 61 | } 62 | impl ::std::default::Default for Struct_memblock_info { 63 | fn default() -> Struct_memblock_info { unsafe { ::std::mem::zeroed() } } 64 | } 65 | pub type Enum_rte_page_sizes = ::libc::c_ulong; 66 | pub const RTE_PGSIZE_4K: ::libc::c_ulong = 4096; 67 | pub const RTE_PGSIZE_2M: ::libc::c_ulong = 2097152; 68 | pub const RTE_PGSIZE_1G: ::libc::c_ulong = 1073741824; 69 | pub const RTE_PGSIZE_64K: ::libc::c_ulong = 65536; 70 | pub const RTE_PGSIZE_16M: ::libc::c_ulong = 16777216; 71 | pub const RTE_PGSIZE_16G: ::libc::c_ulong = 17179869184; 72 | pub type phys_addr_t = u64; 73 | #[repr(C)] 74 | #[derive(Copy)] 75 | pub struct Struct_rte_memseg { 76 | pub phys_addr: phys_addr_t, 77 | pub _bindgen_data_1_: [u64; 1us], 78 | pub len: ::libc::size_t, 79 | pub hugepage_sz: u64, 80 | pub socket_id: i32, 81 | pub nchannel: u32, 82 | pub nrank: u32, 83 | } 84 | impl Struct_rte_memseg { 85 | pub unsafe fn addr(&mut self) -> *mut *mut ::libc::c_void { 86 | ::std::mem::transmute(&self._bindgen_data_1_) 87 | } 88 | pub unsafe fn addr_64(&mut self) -> *mut u64 { 89 | ::std::mem::transmute(&self._bindgen_data_1_) 90 | } 91 | } 92 | impl ::std::default::Default for Struct_rte_memseg { 93 | fn default() -> Struct_rte_memseg { unsafe { ::std::mem::zeroed() } } 94 | } 95 | #[repr(C)] 96 | #[derive(Copy)] 97 | pub struct Struct_rte_logs { 98 | pub _type: u32, 99 | pub level: u32, 100 | pub file: *mut ::libc::FILE, 101 | } 102 | impl ::std::default::Default for Struct_rte_logs { 103 | fn default() -> Struct_rte_logs { unsafe { ::std::mem::zeroed() } } 104 | } 105 | #[repr(C)] 106 | #[derive(Copy)] 107 | pub struct Struct_rte_memzone { 108 | pub name: [::libc::c_char; 32us], 109 | pub phys_addr: phys_addr_t, 110 | pub _bindgen_data_1_: [u64; 1us], 111 | pub len: ::libc::size_t, 112 | pub hugepage_sz: u64, 113 | pub socket_id: i32, 114 | pub flags: u32, 115 | pub memseg_id: u32, 116 | } 117 | impl Struct_rte_memzone { 118 | pub unsafe fn addr(&mut self) -> *mut *mut ::libc::c_void { 119 | ::std::mem::transmute(&self._bindgen_data_1_) 120 | } 121 | pub unsafe fn addr_64(&mut self) -> *mut u64 { 122 | ::std::mem::transmute(&self._bindgen_data_1_) 123 | } 124 | } 125 | impl ::std::default::Default for Struct_rte_memzone { 126 | fn default() -> Struct_rte_memzone { unsafe { ::std::mem::zeroed() } } 127 | } 128 | #[repr(C)] 129 | #[derive(Copy)] 130 | pub struct Struct_rte_malloc_socket_stats { 131 | pub heap_totalsz_bytes: ::libc::size_t, 132 | pub heap_freesz_bytes: ::libc::size_t, 133 | pub greatest_free_size: ::libc::size_t, 134 | pub free_count: ::libc::c_uint, 135 | pub alloc_count: ::libc::c_uint, 136 | pub heap_allocsz_bytes: ::libc::size_t, 137 | } 138 | impl ::std::default::Default for Struct_rte_malloc_socket_stats { 139 | fn default() -> Struct_rte_malloc_socket_stats { 140 | unsafe { ::std::mem::zeroed() } 141 | } 142 | } 143 | #[repr(C)] 144 | #[derive(Copy)] 145 | pub struct Struct_rte_tailq_entry { 146 | pub next: Struct_Unnamed1, 147 | pub data: *mut ::libc::c_void, 148 | } 149 | impl ::std::default::Default for Struct_rte_tailq_entry { 150 | fn default() -> Struct_rte_tailq_entry { unsafe { ::std::mem::zeroed() } } 151 | } 152 | #[repr(C)] 153 | #[derive(Copy)] 154 | pub struct Struct_Unnamed1 { 155 | pub tqe_next: *mut Struct_rte_tailq_entry, 156 | pub tqe_prev: *mut *mut Struct_rte_tailq_entry, 157 | } 158 | impl ::std::default::Default for Struct_Unnamed1 { 159 | fn default() -> Struct_Unnamed1 { unsafe { ::std::mem::zeroed() } } 160 | } 161 | #[repr(C)] 162 | #[derive(Copy)] 163 | pub struct Struct_rte_tailq_entry_head { 164 | pub tqh_first: *mut Struct_rte_tailq_entry, 165 | pub tqh_last: *mut *mut Struct_rte_tailq_entry, 166 | } 167 | impl ::std::default::Default for Struct_rte_tailq_entry_head { 168 | fn default() -> Struct_rte_tailq_entry_head { 169 | unsafe { ::std::mem::zeroed() } 170 | } 171 | } 172 | #[repr(C)] 173 | #[derive(Copy)] 174 | pub struct Struct_rte_tailq_head { 175 | pub tailq_head: Struct_rte_tailq_entry_head, 176 | } 177 | impl ::std::default::Default for Struct_rte_tailq_head { 178 | fn default() -> Struct_rte_tailq_head { unsafe { ::std::mem::zeroed() } } 179 | } 180 | pub type Enum_rte_lcore_role_t = ::libc::c_uint; 181 | pub const ROLE_RTE: ::libc::c_uint = 0; 182 | pub const ROLE_OFF: ::libc::c_uint = 1; 183 | pub type Enum_rte_proc_type_t = ::libc::c_int; 184 | pub const RTE_PROC_AUTO: ::libc::c_int = -1; 185 | pub const RTE_PROC_PRIMARY: ::libc::c_int = 0; 186 | pub const RTE_PROC_SECONDARY: ::libc::c_int = 1; 187 | pub const RTE_PROC_INVALID: ::libc::c_int = 2; 188 | #[repr(C)] 189 | #[derive(Copy)] 190 | pub struct Struct_rte_config { 191 | pub master_lcore: u32, 192 | pub lcore_count: u32, 193 | pub lcore_role: [Enum_rte_lcore_role_t; 128us], 194 | pub process_type: Enum_rte_proc_type_t, 195 | pub mem_config: *mut Struct_rte_mem_config, 196 | } 197 | impl ::std::default::Default for Struct_rte_config { 198 | fn default() -> Struct_rte_config { unsafe { ::std::mem::zeroed() } } 199 | } 200 | pub type rte_usage_hook_t = 201 | ::std::option::Option ()>; 203 | pub type Enum_rte_lcore_state_t = ::libc::c_uint; 204 | pub const WAIT: ::libc::c_uint = 0; 205 | pub const RUNNING: ::libc::c_uint = 1; 206 | pub const FINISHED: ::libc::c_uint = 2; 207 | pub type lcore_function_t = 208 | extern "C" fn(arg1: *mut ::libc::c_void) -> ::libc::c_int; 209 | pub type Enum_rte_rmt_call_master_t = ::libc::c_uint; 210 | pub const SKIP_MASTER: ::libc::c_uint = 0; 211 | pub const CALL_MASTER: ::libc::c_uint = 1; 212 | #[repr(C)] 213 | #[derive(Copy)] 214 | pub struct Struct_lcore_config { 215 | pub detected: ::libc::c_uint, 216 | pub thread_id: ::libc::pthread_t, 217 | pub pipe_master2slave: [::libc::c_int; 2us], 218 | pub pipe_slave2master: [::libc::c_int; 2us], 219 | pub f: *mut lcore_function_t, 220 | pub arg: *mut ::libc::c_void, 221 | pub ret: ::libc::c_int, 222 | pub state: Enum_rte_lcore_state_t, 223 | pub socket_id: ::libc::c_uint, 224 | pub core_id: ::libc::c_uint, 225 | pub core_index: ::libc::c_int, 226 | } 227 | impl ::std::default::Default for Struct_lcore_config { 228 | fn default() -> Struct_lcore_config { unsafe { ::std::mem::zeroed() } } 229 | } 230 | #[repr(C)] 231 | #[derive(Copy)] 232 | pub struct Struct_Unnamed2 { 233 | pub locked: ::libc::c_int, 234 | } 235 | impl ::std::default::Default for Struct_Unnamed2 { 236 | fn default() -> Struct_Unnamed2 { unsafe { ::std::mem::zeroed() } } 237 | } 238 | pub type rte_spinlock_t = Struct_Unnamed2; 239 | #[repr(C)] 240 | #[derive(Copy)] 241 | pub struct Struct_Unnamed3 { 242 | pub sl: rte_spinlock_t, 243 | pub user: ::libc::c_int, 244 | pub count: ::libc::c_int, 245 | } 246 | impl ::std::default::Default for Struct_Unnamed3 { 247 | fn default() -> Struct_Unnamed3 { unsafe { ::std::mem::zeroed() } } 248 | } 249 | pub type rte_spinlock_recursive_t = Struct_Unnamed3; 250 | pub enum Struct_malloc_elem { } 251 | #[repr(C)] 252 | #[derive(Copy)] 253 | pub struct Struct_malloc_heap { 254 | pub lock: rte_spinlock_t, 255 | pub free_head: [Struct_Unnamed4; 5us], 256 | pub mz_count: ::libc::c_uint, 257 | pub alloc_count: ::libc::c_uint, 258 | pub total_size: ::libc::size_t, 259 | } 260 | impl ::std::default::Default for Struct_malloc_heap { 261 | fn default() -> Struct_malloc_heap { unsafe { ::std::mem::zeroed() } } 262 | } 263 | #[repr(C)] 264 | #[derive(Copy)] 265 | pub struct Struct_Unnamed4 { 266 | pub lh_first: *mut Struct_malloc_elem, 267 | } 268 | impl ::std::default::Default for Struct_Unnamed4 { 269 | fn default() -> Struct_Unnamed4 { unsafe { ::std::mem::zeroed() } } 270 | } 271 | #[repr(C)] 272 | #[derive(Copy)] 273 | pub struct Struct_Unnamed5 { 274 | pub cnt: i16, 275 | } 276 | impl ::std::default::Default for Struct_Unnamed5 { 277 | fn default() -> Struct_Unnamed5 { unsafe { ::std::mem::zeroed() } } 278 | } 279 | pub type rte_atomic16_t = Struct_Unnamed5; 280 | #[repr(C)] 281 | #[derive(Copy)] 282 | pub struct Struct_Unnamed6 { 283 | pub cnt: i32, 284 | } 285 | impl ::std::default::Default for Struct_Unnamed6 { 286 | fn default() -> Struct_Unnamed6 { unsafe { ::std::mem::zeroed() } } 287 | } 288 | pub type rte_atomic32_t = Struct_Unnamed6; 289 | #[repr(C)] 290 | #[derive(Copy)] 291 | pub struct Struct_Unnamed7 { 292 | pub cnt: i64, 293 | } 294 | impl ::std::default::Default for Struct_Unnamed7 { 295 | fn default() -> Struct_Unnamed7 { unsafe { ::std::mem::zeroed() } } 296 | } 297 | pub type rte_atomic64_t = Struct_Unnamed7; 298 | #[repr(C)] 299 | #[derive(Copy)] 300 | pub struct Struct_Unnamed8 { 301 | pub cnt: i32, 302 | } 303 | impl ::std::default::Default for Struct_Unnamed8 { 304 | fn default() -> Struct_Unnamed8 { unsafe { ::std::mem::zeroed() } } 305 | } 306 | pub type rte_rwlock_t = Struct_Unnamed8; 307 | pub type Enum_rte_tailq_t = ::libc::c_uint; 308 | pub const RTE_TAILQ_PCI: ::libc::c_uint = 0; 309 | pub const RTE_TAILQ_MEMPOOL: ::libc::c_uint = 1; 310 | pub const RTE_TAILQ_RING: ::libc::c_uint = 2; 311 | pub const RTE_TAILQ_HASH: ::libc::c_uint = 3; 312 | pub const RTE_TAILQ_FBK_HASH: ::libc::c_uint = 4; 313 | pub const RTE_TAILQ_LPM: ::libc::c_uint = 5; 314 | pub const RTE_TAILQ_LPM6: ::libc::c_uint = 6; 315 | pub const RTE_TAILQ_PM: ::libc::c_uint = 7; 316 | pub const RTE_TAILQ_ACL: ::libc::c_uint = 8; 317 | pub const RTE_TAILQ_DISTRIBUTOR: ::libc::c_uint = 9; 318 | pub const RTE_TAILQ_NUM: ::libc::c_uint = 10; 319 | #[repr(C)] 320 | #[derive(Copy)] 321 | pub struct Struct_rte_mem_config { 322 | pub magic: u32, 323 | pub nchannel: u32, 324 | pub nrank: u32, 325 | pub mlock: rte_rwlock_t, 326 | pub qlock: rte_rwlock_t, 327 | pub mplock: rte_rwlock_t, 328 | pub memzone_idx: u32, 329 | pub memseg: [Struct_rte_memseg; 256us], 330 | pub memzone: [Struct_rte_memzone; 2560us], 331 | pub free_memseg: [Struct_rte_memseg; 256us], 332 | pub tailq_head: [Struct_rte_tailq_head; 32us], 333 | pub malloc_heaps: [Struct_malloc_heap; 8us], 334 | pub mem_cfg_addr: u64, 335 | } 336 | impl ::std::default::Default for Struct_rte_mem_config { 337 | fn default() -> Struct_rte_mem_config { unsafe { ::std::mem::zeroed() } } 338 | } 339 | pub type Enum_Unnamed9 = ::libc::c_uint; 340 | pub const RTE_MIN_ERRNO: ::libc::c_uint = 1000; 341 | pub const E_RTE_SECONDARY: ::libc::c_uint = 1001; 342 | pub const E_RTE_NO_CONFIG: ::libc::c_uint = 1002; 343 | pub const E_RTE_NO_TAILQ: ::libc::c_uint = 1003; 344 | pub const RTE_MAX_ERRNO: ::libc::c_uint = 1004; 345 | pub type cpuid_registers_t = [u32; 4us]; 346 | #[repr(C)] 347 | #[derive(Copy)] 348 | pub struct Struct_feature_entry { 349 | pub leaf: u32, 350 | pub subleaf: u32, 351 | pub reg: u32, 352 | pub bit: u32, 353 | pub name: [::libc::c_char; 64us], 354 | } 355 | impl ::std::default::Default for Struct_feature_entry { 356 | fn default() -> Struct_feature_entry { unsafe { ::std::mem::zeroed() } } 357 | } 358 | pub type Enum_rte_cpu_flag_t = ::libc::c_int; 359 | pub const RTE_CPUFLAG_SSE3: ::libc::c_int = 0; 360 | pub const RTE_CPUFLAG_PCLMULQDQ: ::libc::c_int = 1; 361 | pub const RTE_CPUFLAG_DTES64: ::libc::c_int = 2; 362 | pub const RTE_CPUFLAG_MONITOR: ::libc::c_int = 3; 363 | pub const RTE_CPUFLAG_DS_CPL: ::libc::c_int = 4; 364 | pub const RTE_CPUFLAG_VMX: ::libc::c_int = 5; 365 | pub const RTE_CPUFLAG_SMX: ::libc::c_int = 6; 366 | pub const RTE_CPUFLAG_EIST: ::libc::c_int = 7; 367 | pub const RTE_CPUFLAG_TM2: ::libc::c_int = 8; 368 | pub const RTE_CPUFLAG_SSSE3: ::libc::c_int = 9; 369 | pub const RTE_CPUFLAG_CNXT_ID: ::libc::c_int = 10; 370 | pub const RTE_CPUFLAG_FMA: ::libc::c_int = 11; 371 | pub const RTE_CPUFLAG_CMPXCHG16B: ::libc::c_int = 12; 372 | pub const RTE_CPUFLAG_XTPR: ::libc::c_int = 13; 373 | pub const RTE_CPUFLAG_PDCM: ::libc::c_int = 14; 374 | pub const RTE_CPUFLAG_PCID: ::libc::c_int = 15; 375 | pub const RTE_CPUFLAG_DCA: ::libc::c_int = 16; 376 | pub const RTE_CPUFLAG_SSE4_1: ::libc::c_int = 17; 377 | pub const RTE_CPUFLAG_SSE4_2: ::libc::c_int = 18; 378 | pub const RTE_CPUFLAG_X2APIC: ::libc::c_int = 19; 379 | pub const RTE_CPUFLAG_MOVBE: ::libc::c_int = 20; 380 | pub const RTE_CPUFLAG_POPCNT: ::libc::c_int = 21; 381 | pub const RTE_CPUFLAG_TSC_DEADLINE: ::libc::c_int = 22; 382 | pub const RTE_CPUFLAG_AES: ::libc::c_int = 23; 383 | pub const RTE_CPUFLAG_XSAVE: ::libc::c_int = 24; 384 | pub const RTE_CPUFLAG_OSXSAVE: ::libc::c_int = 25; 385 | pub const RTE_CPUFLAG_AVX: ::libc::c_int = 26; 386 | pub const RTE_CPUFLAG_F16C: ::libc::c_int = 27; 387 | pub const RTE_CPUFLAG_RDRAND: ::libc::c_int = 28; 388 | pub const RTE_CPUFLAG_FPU: ::libc::c_int = 29; 389 | pub const RTE_CPUFLAG_VME: ::libc::c_int = 30; 390 | pub const RTE_CPUFLAG_DE: ::libc::c_int = 31; 391 | pub const RTE_CPUFLAG_PSE: ::libc::c_int = 32; 392 | pub const RTE_CPUFLAG_TSC: ::libc::c_int = 33; 393 | pub const RTE_CPUFLAG_MSR: ::libc::c_int = 34; 394 | pub const RTE_CPUFLAG_PAE: ::libc::c_int = 35; 395 | pub const RTE_CPUFLAG_MCE: ::libc::c_int = 36; 396 | pub const RTE_CPUFLAG_CX8: ::libc::c_int = 37; 397 | pub const RTE_CPUFLAG_APIC: ::libc::c_int = 38; 398 | pub const RTE_CPUFLAG_SEP: ::libc::c_int = 39; 399 | pub const RTE_CPUFLAG_MTRR: ::libc::c_int = 40; 400 | pub const RTE_CPUFLAG_PGE: ::libc::c_int = 41; 401 | pub const RTE_CPUFLAG_MCA: ::libc::c_int = 42; 402 | pub const RTE_CPUFLAG_CMOV: ::libc::c_int = 43; 403 | pub const RTE_CPUFLAG_PAT: ::libc::c_int = 44; 404 | pub const RTE_CPUFLAG_PSE36: ::libc::c_int = 45; 405 | pub const RTE_CPUFLAG_PSN: ::libc::c_int = 46; 406 | pub const RTE_CPUFLAG_CLFSH: ::libc::c_int = 47; 407 | pub const RTE_CPUFLAG_DS: ::libc::c_int = 48; 408 | pub const RTE_CPUFLAG_ACPI: ::libc::c_int = 49; 409 | pub const RTE_CPUFLAG_MMX: ::libc::c_int = 50; 410 | pub const RTE_CPUFLAG_FXSR: ::libc::c_int = 51; 411 | pub const RTE_CPUFLAG_SSE: ::libc::c_int = 52; 412 | pub const RTE_CPUFLAG_SSE2: ::libc::c_int = 53; 413 | pub const RTE_CPUFLAG_SS: ::libc::c_int = 54; 414 | pub const RTE_CPUFLAG_HTT: ::libc::c_int = 55; 415 | pub const RTE_CPUFLAG_TM: ::libc::c_int = 56; 416 | pub const RTE_CPUFLAG_PBE: ::libc::c_int = 57; 417 | pub const RTE_CPUFLAG_DIGTEMP: ::libc::c_int = 58; 418 | pub const RTE_CPUFLAG_TRBOBST: ::libc::c_int = 59; 419 | pub const RTE_CPUFLAG_ARAT: ::libc::c_int = 60; 420 | pub const RTE_CPUFLAG_PLN: ::libc::c_int = 61; 421 | pub const RTE_CPUFLAG_ECMD: ::libc::c_int = 62; 422 | pub const RTE_CPUFLAG_PTM: ::libc::c_int = 63; 423 | pub const RTE_CPUFLAG_MPERF_APERF_MSR: ::libc::c_int = 64; 424 | pub const RTE_CPUFLAG_ACNT2: ::libc::c_int = 65; 425 | pub const RTE_CPUFLAG_ENERGY_EFF: ::libc::c_int = 66; 426 | pub const RTE_CPUFLAG_FSGSBASE: ::libc::c_int = 67; 427 | pub const RTE_CPUFLAG_BMI1: ::libc::c_int = 68; 428 | pub const RTE_CPUFLAG_HLE: ::libc::c_int = 69; 429 | pub const RTE_CPUFLAG_AVX2: ::libc::c_int = 70; 430 | pub const RTE_CPUFLAG_SMEP: ::libc::c_int = 71; 431 | pub const RTE_CPUFLAG_BMI2: ::libc::c_int = 72; 432 | pub const RTE_CPUFLAG_ERMS: ::libc::c_int = 73; 433 | pub const RTE_CPUFLAG_INVPCID: ::libc::c_int = 74; 434 | pub const RTE_CPUFLAG_RTM: ::libc::c_int = 75; 435 | pub const RTE_CPUFLAG_LAHF_SAHF: ::libc::c_int = 76; 436 | pub const RTE_CPUFLAG_LZCNT: ::libc::c_int = 77; 437 | pub const RTE_CPUFLAG_SYSCALL: ::libc::c_int = 78; 438 | pub const RTE_CPUFLAG_XD: ::libc::c_int = 79; 439 | pub const RTE_CPUFLAG_1GB_PG: ::libc::c_int = 80; 440 | pub const RTE_CPUFLAG_RDTSCP: ::libc::c_int = 81; 441 | pub const RTE_CPUFLAG_EM64T: ::libc::c_int = 82; 442 | pub const RTE_CPUFLAG_INVTSC: ::libc::c_int = 83; 443 | pub const RTE_CPUFLAG_NUMFLAGS: ::libc::c_int = 84; 444 | pub type Enum_cpu_register_t = ::libc::c_int; 445 | pub const REG_EAX: ::libc::c_int = 0; 446 | pub const REG_EBX: ::libc::c_int = 1; 447 | pub const REG_ECX: ::libc::c_int = 2; 448 | pub const REG_EDX: ::libc::c_int = 3; 449 | #[repr(C)] 450 | #[derive(Copy)] 451 | pub struct Union_rte_acl_field_types { 452 | pub _bindgen_data_: [u64; 1us], 453 | } 454 | impl Union_rte_acl_field_types { 455 | pub unsafe fn u8(&mut self) -> *mut u8 { 456 | ::std::mem::transmute(&self._bindgen_data_) 457 | } 458 | pub unsafe fn u16(&mut self) -> *mut u16 { 459 | ::std::mem::transmute(&self._bindgen_data_) 460 | } 461 | pub unsafe fn u32(&mut self) -> *mut u32 { 462 | ::std::mem::transmute(&self._bindgen_data_) 463 | } 464 | pub unsafe fn u64(&mut self) -> *mut u64 { 465 | ::std::mem::transmute(&self._bindgen_data_) 466 | } 467 | } 468 | impl ::std::default::Default for Union_rte_acl_field_types { 469 | fn default() -> Union_rte_acl_field_types { 470 | unsafe { ::std::mem::zeroed() } 471 | } 472 | } 473 | pub type Enum_Unnamed10 = ::libc::c_uint; 474 | pub const RTE_ACL_FIELD_TYPE_MASK: ::libc::c_uint = 0; 475 | pub const RTE_ACL_FIELD_TYPE_RANGE: ::libc::c_uint = 1; 476 | pub const RTE_ACL_FIELD_TYPE_BITMASK: ::libc::c_uint = 2; 477 | #[repr(C)] 478 | #[derive(Copy)] 479 | pub struct Struct_rte_acl_field_def { 480 | pub _type: u8, 481 | pub size: u8, 482 | pub field_index: u8, 483 | pub input_index: u8, 484 | pub offset: u32, 485 | } 486 | impl ::std::default::Default for Struct_rte_acl_field_def { 487 | fn default() -> Struct_rte_acl_field_def { 488 | unsafe { ::std::mem::zeroed() } 489 | } 490 | } 491 | #[repr(C)] 492 | #[derive(Copy)] 493 | pub struct Struct_rte_acl_config { 494 | pub num_categories: u32, 495 | pub num_fields: u32, 496 | pub defs: [Struct_rte_acl_field_def; 64us], 497 | } 498 | impl ::std::default::Default for Struct_rte_acl_config { 499 | fn default() -> Struct_rte_acl_config { unsafe { ::std::mem::zeroed() } } 500 | } 501 | #[repr(C)] 502 | #[derive(Copy)] 503 | pub struct Struct_rte_acl_field { 504 | pub value: Union_rte_acl_field_types, 505 | pub mask_range: Union_rte_acl_field_types, 506 | } 507 | impl ::std::default::Default for Struct_rte_acl_field { 508 | fn default() -> Struct_rte_acl_field { unsafe { ::std::mem::zeroed() } } 509 | } 510 | pub type Enum_Unnamed11 = ::libc::c_uint; 511 | pub const RTE_ACL_TYPE_SHIFT: ::libc::c_uint = 29; 512 | pub const RTE_ACL_MAX_INDEX: ::libc::c_uint = 536870911; 513 | pub const RTE_ACL_MAX_PRIORITY: ::libc::c_uint = 536870911; 514 | pub const RTE_ACL_MIN_PRIORITY: ::libc::c_uint = 0; 515 | #[repr(C)] 516 | #[derive(Copy)] 517 | pub struct Struct_rte_acl_rule_data { 518 | pub category_mask: u32, 519 | pub priority: i32, 520 | pub userdata: u32, 521 | } 522 | impl ::std::default::Default for Struct_rte_acl_rule_data { 523 | fn default() -> Struct_rte_acl_rule_data { 524 | unsafe { ::std::mem::zeroed() } 525 | } 526 | } 527 | #[repr(C)] 528 | #[derive(Copy)] 529 | pub struct Struct_rte_acl_rule { 530 | pub data: Struct_rte_acl_rule_data, 531 | pub field: [Struct_rte_acl_field; 0us], 532 | } 533 | impl ::std::default::Default for Struct_rte_acl_rule { 534 | fn default() -> Struct_rte_acl_rule { unsafe { ::std::mem::zeroed() } } 535 | } 536 | #[repr(C)] 537 | #[derive(Copy)] 538 | pub struct Struct_rte_acl_param { 539 | pub name: *const ::libc::c_char, 540 | pub socket_id: ::libc::c_int, 541 | pub rule_size: u32, 542 | pub max_rule_num: u32, 543 | } 544 | impl ::std::default::Default for Struct_rte_acl_param { 545 | fn default() -> Struct_rte_acl_param { unsafe { ::std::mem::zeroed() } } 546 | } 547 | pub enum Struct_rte_acl_ctx { } 548 | pub type Enum_rte_acl_classify_alg = ::libc::c_uint; 549 | pub const RTE_ACL_CLASSIFY_DEFAULT: ::libc::c_uint = 0; 550 | pub const RTE_ACL_CLASSIFY_SCALAR: ::libc::c_uint = 1; 551 | pub const RTE_ACL_CLASSIFY_SSE: ::libc::c_uint = 2; 552 | #[repr(C)] 553 | #[derive(Copy)] 554 | pub struct Struct_rte_acl_ipv4vlan_rule { 555 | pub data: Struct_rte_acl_rule_data, 556 | pub proto: u8, 557 | pub proto_mask: u8, 558 | pub vlan: u16, 559 | pub vlan_mask: u16, 560 | pub domain: u16, 561 | pub domain_mask: u16, 562 | pub src_addr: u32, 563 | pub src_mask_len: u32, 564 | pub dst_addr: u32, 565 | pub dst_mask_len: u32, 566 | pub src_port_low: u16, 567 | pub src_port_high: u16, 568 | pub dst_port_low: u16, 569 | pub dst_port_high: u16, 570 | } 571 | impl ::std::default::Default for Struct_rte_acl_ipv4vlan_rule { 572 | fn default() -> Struct_rte_acl_ipv4vlan_rule { 573 | unsafe { ::std::mem::zeroed() } 574 | } 575 | } 576 | pub type Enum_Unnamed12 = ::libc::c_uint; 577 | pub const RTE_ACL_IPV4VLAN_PROTO_FIELD: ::libc::c_uint = 0; 578 | pub const RTE_ACL_IPV4VLAN_VLAN1_FIELD: ::libc::c_uint = 1; 579 | pub const RTE_ACL_IPV4VLAN_VLAN2_FIELD: ::libc::c_uint = 2; 580 | pub const RTE_ACL_IPV4VLAN_SRC_FIELD: ::libc::c_uint = 3; 581 | pub const RTE_ACL_IPV4VLAN_DST_FIELD: ::libc::c_uint = 4; 582 | pub const RTE_ACL_IPV4VLAN_SRCP_FIELD: ::libc::c_uint = 5; 583 | pub const RTE_ACL_IPV4VLAN_DSTP_FIELD: ::libc::c_uint = 6; 584 | pub const RTE_ACL_IPV4VLAN_NUM_FIELDS: ::libc::c_uint = 7; 585 | pub type Enum_Unnamed13 = ::libc::c_uint; 586 | pub const RTE_ACL_IPV4VLAN_PROTO: ::libc::c_uint = 0; 587 | pub const RTE_ACL_IPV4VLAN_VLAN: ::libc::c_uint = 1; 588 | pub const RTE_ACL_IPV4VLAN_SRC: ::libc::c_uint = 2; 589 | pub const RTE_ACL_IPV4VLAN_DST: ::libc::c_uint = 3; 590 | pub const RTE_ACL_IPV4VLAN_PORTS: ::libc::c_uint = 4; 591 | pub const RTE_ACL_IPV4VLAN_NUM: ::libc::c_uint = 5; 592 | pub type rte_eal_alarm_callback = 593 | ::std::option::Option ()>; 594 | #[repr(C)] 595 | #[derive(Copy)] 596 | pub struct Struct_arp_ipv4 { 597 | pub arp_sha: [u8; 6us], 598 | pub arp_sip: [u8; 4us], 599 | pub arp_tha: [u8; 6us], 600 | pub arp_tip: [u8; 4us], 601 | } 602 | impl ::std::default::Default for Struct_arp_ipv4 { 603 | fn default() -> Struct_arp_ipv4 { unsafe { ::std::mem::zeroed() } } 604 | } 605 | #[repr(C)] 606 | #[derive(Copy)] 607 | pub struct Struct_arp_hdr { 608 | pub arp_hrd: u16, 609 | pub arp_pro: u16, 610 | pub arp_hln: u8, 611 | pub arp_pln: u8, 612 | pub arp_op: u16, 613 | pub arp_data: Union_Unnamed14, 614 | } 615 | impl ::std::default::Default for Struct_arp_hdr { 616 | fn default() -> Struct_arp_hdr { unsafe { ::std::mem::zeroed() } } 617 | } 618 | #[repr(C)] 619 | #[derive(Copy)] 620 | pub struct Union_Unnamed14 { 621 | pub _bindgen_data_: [u8; 20us], 622 | } 623 | impl Union_Unnamed14 { 624 | pub unsafe fn arp_ip(&mut self) -> *mut Struct_arp_ipv4 { 625 | ::std::mem::transmute(&self._bindgen_data_) 626 | } 627 | } 628 | impl ::std::default::Default for Union_Unnamed14 { 629 | fn default() -> Union_Unnamed14 { unsafe { ::std::mem::zeroed() } } 630 | } 631 | #[repr(C)] 632 | #[derive(Copy)] 633 | pub struct Struct_rte_bitmap { 634 | pub array1: *mut u64, 635 | pub array2: *mut u64, 636 | pub array1_size: u32, 637 | pub array2_size: u32, 638 | pub index1: u32, 639 | pub offset1: u32, 640 | pub index2: u32, 641 | pub go2: u32, 642 | pub memory: [u8; 0us], 643 | } 644 | impl ::std::default::Default for Struct_rte_bitmap { 645 | fn default() -> Struct_rte_bitmap { unsafe { ::std::mem::zeroed() } } 646 | } 647 | pub enum Struct_rte_cfgfile { } 648 | #[repr(C)] 649 | #[derive(Copy)] 650 | pub struct Struct_rte_cfgfile_entry { 651 | pub name: [::libc::c_char; 32us], 652 | pub value: [::libc::c_char; 64us], 653 | } 654 | impl ::std::default::Default for Struct_rte_cfgfile_entry { 655 | fn default() -> Struct_rte_cfgfile_entry { 656 | unsafe { ::std::mem::zeroed() } 657 | } 658 | } 659 | pub type Enum_timer_source = ::libc::c_uint; 660 | pub const EAL_TIMER_TSC: ::libc::c_uint = 0; 661 | pub const EAL_TIMER_HPET: ::libc::c_uint = 1; 662 | pub type rte_intr_callback_fn = 663 | ::std::option::Option ()>; 666 | pub type Enum_rte_intr_handle_type = ::libc::c_uint; 667 | pub const RTE_INTR_HANDLE_UNKNOWN: ::libc::c_uint = 0; 668 | pub const RTE_INTR_HANDLE_UIO: ::libc::c_uint = 1; 669 | pub const RTE_INTR_HANDLE_VFIO_LEGACY: ::libc::c_uint = 2; 670 | pub const RTE_INTR_HANDLE_VFIO_MSI: ::libc::c_uint = 3; 671 | pub const RTE_INTR_HANDLE_VFIO_MSIX: ::libc::c_uint = 4; 672 | pub const RTE_INTR_HANDLE_ALARM: ::libc::c_uint = 5; 673 | pub const RTE_INTR_HANDLE_MAX: ::libc::c_uint = 6; 674 | #[repr(C)] 675 | #[derive(Copy)] 676 | pub struct Struct_rte_intr_handle { 677 | pub vfio_dev_fd: ::libc::c_int, 678 | pub fd: ::libc::c_int, 679 | pub _type: Enum_rte_intr_handle_type, 680 | } 681 | impl ::std::default::Default for Struct_rte_intr_handle { 682 | fn default() -> Struct_rte_intr_handle { unsafe { ::std::mem::zeroed() } } 683 | } 684 | #[repr(C)] 685 | #[derive(Copy)] 686 | pub struct Struct_pci_device_list { 687 | pub tqh_first: *mut Struct_rte_pci_device, 688 | pub tqh_last: *mut *mut Struct_rte_pci_device, 689 | } 690 | impl ::std::default::Default for Struct_pci_device_list { 691 | fn default() -> Struct_pci_device_list { unsafe { ::std::mem::zeroed() } } 692 | } 693 | #[repr(C)] 694 | #[derive(Copy)] 695 | pub struct Struct_pci_driver_list { 696 | pub tqh_first: *mut Struct_rte_pci_driver, 697 | pub tqh_last: *mut *mut Struct_rte_pci_driver, 698 | } 699 | impl ::std::default::Default for Struct_pci_driver_list { 700 | fn default() -> Struct_pci_driver_list { unsafe { ::std::mem::zeroed() } } 701 | } 702 | #[repr(C)] 703 | #[derive(Copy)] 704 | pub struct Struct_rte_pci_resource { 705 | pub phys_addr: u64, 706 | pub len: u64, 707 | pub addr: *mut ::libc::c_void, 708 | } 709 | impl ::std::default::Default for Struct_rte_pci_resource { 710 | fn default() -> Struct_rte_pci_resource { 711 | unsafe { ::std::mem::zeroed() } 712 | } 713 | } 714 | #[repr(C)] 715 | #[derive(Copy)] 716 | pub struct Struct_rte_pci_id { 717 | pub vendor_id: u16, 718 | pub device_id: u16, 719 | pub subsystem_vendor_id: u16, 720 | pub subsystem_device_id: u16, 721 | } 722 | impl ::std::default::Default for Struct_rte_pci_id { 723 | fn default() -> Struct_rte_pci_id { unsafe { ::std::mem::zeroed() } } 724 | } 725 | #[repr(C)] 726 | #[derive(Copy)] 727 | pub struct Struct_rte_pci_addr { 728 | pub domain: u16, 729 | pub bus: u8, 730 | pub devid: u8, 731 | pub function: u8, 732 | } 733 | impl ::std::default::Default for Struct_rte_pci_addr { 734 | fn default() -> Struct_rte_pci_addr { unsafe { ::std::mem::zeroed() } } 735 | } 736 | #[repr(C)] 737 | #[derive(Copy)] 738 | pub struct Struct_rte_pci_device { 739 | pub next: Struct_Unnamed15, 740 | pub addr: Struct_rte_pci_addr, 741 | pub id: Struct_rte_pci_id, 742 | pub mem_resource: [Struct_rte_pci_resource; 7us], 743 | pub intr_handle: Struct_rte_intr_handle, 744 | pub driver: *const Struct_rte_pci_driver, 745 | pub max_vfs: u16, 746 | pub numa_node: ::libc::c_int, 747 | pub devargs: *mut Struct_rte_devargs, 748 | } 749 | impl ::std::default::Default for Struct_rte_pci_device { 750 | fn default() -> Struct_rte_pci_device { unsafe { ::std::mem::zeroed() } } 751 | } 752 | #[repr(C)] 753 | #[derive(Copy)] 754 | pub struct Struct_Unnamed15 { 755 | pub tqe_next: *mut Struct_rte_pci_device, 756 | pub tqe_prev: *mut *mut Struct_rte_pci_device, 757 | } 758 | impl ::std::default::Default for Struct_Unnamed15 { 759 | fn default() -> Struct_Unnamed15 { unsafe { ::std::mem::zeroed() } } 760 | } 761 | pub type pci_devinit_t = 762 | extern "C" fn 763 | (arg1: *mut Struct_rte_pci_driver, arg2: *mut Struct_rte_pci_device) 764 | -> ::libc::c_int; 765 | #[repr(C)] 766 | #[derive(Copy)] 767 | pub struct Struct_rte_pci_driver { 768 | pub next: Struct_Unnamed16, 769 | pub name: *const ::libc::c_char, 770 | pub devinit: *mut pci_devinit_t, 771 | pub id_table: *mut Struct_rte_pci_id, 772 | pub drv_flags: u32, 773 | } 774 | impl ::std::default::Default for Struct_rte_pci_driver { 775 | fn default() -> Struct_rte_pci_driver { unsafe { ::std::mem::zeroed() } } 776 | } 777 | #[repr(C)] 778 | #[derive(Copy)] 779 | pub struct Struct_Unnamed16 { 780 | pub tqe_next: *mut Struct_rte_pci_driver, 781 | pub tqe_prev: *mut *mut Struct_rte_pci_driver, 782 | } 783 | impl ::std::default::Default for Struct_Unnamed16 { 784 | fn default() -> Struct_Unnamed16 { unsafe { ::std::mem::zeroed() } } 785 | } 786 | pub type Enum_rte_devtype = ::libc::c_uint; 787 | pub const RTE_DEVTYPE_WHITELISTED_PCI: ::libc::c_uint = 0; 788 | pub const RTE_DEVTYPE_BLACKLISTED_PCI: ::libc::c_uint = 1; 789 | pub const RTE_DEVTYPE_VIRTUAL: ::libc::c_uint = 2; 790 | #[repr(C)] 791 | #[derive(Copy)] 792 | pub struct Struct_rte_devargs { 793 | pub next: Struct_Unnamed17, 794 | pub _type: Enum_rte_devtype, 795 | pub _bindgen_data_1_: [u16; 16us], 796 | pub args: [::libc::c_char; 256us], 797 | } 798 | impl Struct_rte_devargs { 799 | pub unsafe fn pci(&mut self) -> *mut Struct_Unnamed18 { 800 | ::std::mem::transmute(&self._bindgen_data_1_) 801 | } 802 | pub unsafe fn _virtual(&mut self) -> *mut Struct_Unnamed19 { 803 | ::std::mem::transmute(&self._bindgen_data_1_) 804 | } 805 | } 806 | impl ::std::default::Default for Struct_rte_devargs { 807 | fn default() -> Struct_rte_devargs { unsafe { ::std::mem::zeroed() } } 808 | } 809 | #[repr(C)] 810 | #[derive(Copy)] 811 | pub struct Struct_Unnamed17 { 812 | pub tqe_next: *mut Struct_rte_devargs, 813 | pub tqe_prev: *mut *mut Struct_rte_devargs, 814 | } 815 | impl ::std::default::Default for Struct_Unnamed17 { 816 | fn default() -> Struct_Unnamed17 { unsafe { ::std::mem::zeroed() } } 817 | } 818 | #[repr(C)] 819 | #[derive(Copy)] 820 | pub struct Struct_Unnamed18 { 821 | pub addr: Struct_rte_pci_addr, 822 | } 823 | impl ::std::default::Default for Struct_Unnamed18 { 824 | fn default() -> Struct_Unnamed18 { unsafe { ::std::mem::zeroed() } } 825 | } 826 | #[repr(C)] 827 | #[derive(Copy)] 828 | pub struct Struct_Unnamed19 { 829 | pub drv_name: [::libc::c_char; 32us], 830 | } 831 | impl ::std::default::Default for Struct_Unnamed19 { 832 | fn default() -> Struct_Unnamed19 { unsafe { ::std::mem::zeroed() } } 833 | } 834 | #[repr(C)] 835 | #[derive(Copy)] 836 | pub struct Struct_rte_devargs_list { 837 | pub tqh_first: *mut Struct_rte_devargs, 838 | pub tqh_last: *mut *mut Struct_rte_devargs, 839 | } 840 | impl ::std::default::Default for Struct_rte_devargs_list { 841 | fn default() -> Struct_rte_devargs_list { 842 | unsafe { ::std::mem::zeroed() } 843 | } 844 | } 845 | #[repr(C)] 846 | #[derive(Copy)] 847 | pub struct Struct_rte_driver_list { 848 | pub tqh_first: *mut Struct_rte_driver, 849 | pub tqh_last: *mut *mut Struct_rte_driver, 850 | } 851 | impl ::std::default::Default for Struct_rte_driver_list { 852 | fn default() -> Struct_rte_driver_list { unsafe { ::std::mem::zeroed() } } 853 | } 854 | pub type rte_dev_init_t = 855 | extern "C" fn(name: *const ::libc::c_char, args: *const ::libc::c_char) 856 | -> ::libc::c_int; 857 | pub type Enum_pmd_type = ::libc::c_uint; 858 | pub const PMD_VDEV: ::libc::c_uint = 0; 859 | pub const PMD_PDEV: ::libc::c_uint = 1; 860 | #[repr(C)] 861 | #[derive(Copy)] 862 | pub struct Struct_rte_driver { 863 | pub next: Struct_Unnamed20, 864 | pub _type: Enum_pmd_type, 865 | pub name: *const ::libc::c_char, 866 | pub init: *mut rte_dev_init_t, 867 | } 868 | impl ::std::default::Default for Struct_rte_driver { 869 | fn default() -> Struct_rte_driver { unsafe { ::std::mem::zeroed() } } 870 | } 871 | #[repr(C)] 872 | #[derive(Copy)] 873 | pub struct Struct_Unnamed20 { 874 | pub tqe_next: *mut Struct_rte_driver, 875 | pub tqe_prev: *mut *mut Struct_rte_driver, 876 | } 877 | impl ::std::default::Default for Struct_Unnamed20 { 878 | fn default() -> Struct_Unnamed20 { unsafe { ::std::mem::zeroed() } } 879 | } 880 | pub type Enum_rte_ring_queue_behavior = ::libc::c_uint; 881 | pub const RTE_RING_QUEUE_FIXED: ::libc::c_uint = 0; 882 | pub const RTE_RING_QUEUE_VARIABLE: ::libc::c_uint = 1; 883 | #[repr(C)] 884 | #[derive(Copy)] 885 | pub struct Struct_rte_ring { 886 | pub name: [::libc::c_char; 32us], 887 | pub flags: ::libc::c_int, 888 | pub prod: Struct_prod, 889 | pub cons: Struct_cons, 890 | pub ring: [*mut ::libc::c_void; 0us], 891 | } 892 | impl ::std::default::Default for Struct_rte_ring { 893 | fn default() -> Struct_rte_ring { unsafe { ::std::mem::zeroed() } } 894 | } 895 | #[repr(C)] 896 | #[derive(Copy)] 897 | pub struct Struct_prod { 898 | pub watermark: u32, 899 | pub sp_enqueue: u32, 900 | pub size: u32, 901 | pub mask: u32, 902 | pub head: u32, 903 | pub tail: u32, 904 | } 905 | impl ::std::default::Default for Struct_prod { 906 | fn default() -> Struct_prod { unsafe { ::std::mem::zeroed() } } 907 | } 908 | #[repr(C)] 909 | #[derive(Copy)] 910 | pub struct Struct_cons { 911 | pub sc_dequeue: u32, 912 | pub size: u32, 913 | pub mask: u32, 914 | pub head: u32, 915 | pub tail: u32, 916 | } 917 | impl ::std::default::Default for Struct_cons { 918 | fn default() -> Struct_cons { unsafe { ::std::mem::zeroed() } } 919 | } 920 | #[repr(C)] 921 | #[derive(Copy)] 922 | pub struct Struct_rte_mempool_cache { 923 | pub len: ::libc::c_uint, 924 | pub objs: [*mut ::libc::c_void; 1536us], 925 | } 926 | impl ::std::default::Default for Struct_rte_mempool_cache { 927 | fn default() -> Struct_rte_mempool_cache { 928 | unsafe { ::std::mem::zeroed() } 929 | } 930 | } 931 | #[repr(C)] 932 | #[derive(Copy)] 933 | pub struct Struct_rte_mempool_objsz { 934 | pub elt_size: u32, 935 | pub header_size: u32, 936 | pub trailer_size: u32, 937 | pub total_size: u32, 938 | } 939 | impl ::std::default::Default for Struct_rte_mempool_objsz { 940 | fn default() -> Struct_rte_mempool_objsz { 941 | unsafe { ::std::mem::zeroed() } 942 | } 943 | } 944 | #[repr(C)] 945 | #[derive(Copy)] 946 | pub struct Struct_rte_mempool { 947 | pub name: [::libc::c_char; 32us], 948 | pub ring: *mut Struct_rte_ring, 949 | pub phys_addr: phys_addr_t, 950 | pub flags: ::libc::c_int, 951 | pub size: u32, 952 | pub cache_size: u32, 953 | pub cache_flushthresh: u32, 954 | pub elt_size: u32, 955 | pub header_size: u32, 956 | pub trailer_size: u32, 957 | pub private_data_size: ::libc::c_uint, 958 | pub local_cache: [Struct_rte_mempool_cache; 128us], 959 | pub pg_num: u32, 960 | pub pg_shift: u32, 961 | pub pg_mask: ::libc::size_t, 962 | pub elt_va_start: ::libc::size_t, 963 | pub elt_va_end: ::libc::size_t, 964 | pub elt_pa: [phys_addr_t; 1us], 965 | } 966 | impl ::std::default::Default for Struct_rte_mempool { 967 | fn default() -> Struct_rte_mempool { unsafe { ::std::mem::zeroed() } } 968 | } 969 | pub type rte_mempool_obj_iter_t = 970 | ::std::option::Option ()>; 975 | pub type rte_mempool_obj_ctor_t = 976 | extern "C" fn 977 | (arg1: *mut Struct_rte_mempool, arg2: *mut ::libc::c_void, 978 | arg3: *mut ::libc::c_void, arg4: ::libc::c_uint) -> (); 979 | pub type rte_mempool_ctor_t = 980 | extern "C" fn(arg1: *mut Struct_rte_mempool, arg2: *mut ::libc::c_void) 981 | -> (); 982 | pub type MARKER = [*mut ::libc::c_void; 0us]; 983 | pub type MARKER8 = [u8; 0us]; 984 | pub type MARKER64 = [u64; 0us]; 985 | #[repr(C)] 986 | #[derive(Copy)] 987 | pub struct Struct_rte_mbuf { 988 | pub cacheline0: MARKER, 989 | pub buf_addr: *mut ::libc::c_void, 990 | pub buf_physaddr: phys_addr_t, 991 | pub buf_len: u16, 992 | pub rearm_data: MARKER8, 993 | pub data_off: u16, 994 | pub _bindgen_data_1_: [u16; 1us], 995 | pub nb_segs: u8, 996 | pub port: u8, 997 | pub ol_flags: u64, 998 | pub rx_descriptor_fields1: MARKER, 999 | pub packet_type: u16, 1000 | pub data_len: u16, 1001 | pub pkt_len: u32, 1002 | pub vlan_tci: u16, 1003 | pub reserved: u16, 1004 | pub hash: Union_Unnamed21, 1005 | pub cacheline1: MARKER, 1006 | pub _bindgen_data_2_: [u64; 1us], 1007 | pub pool: *mut Struct_rte_mempool, 1008 | pub next: *mut Struct_rte_mbuf, 1009 | pub _bindgen_data_3_: [u64; 1us], 1010 | } 1011 | impl Struct_rte_mbuf { 1012 | pub unsafe fn refcnt_atomic(&mut self) -> *mut rte_atomic16_t { 1013 | ::std::mem::transmute(&self._bindgen_data_1_) 1014 | } 1015 | pub unsafe fn refcnt(&mut self) -> *mut u16 { 1016 | ::std::mem::transmute(&self._bindgen_data_1_) 1017 | } 1018 | pub unsafe fn refcnt_reserved(&mut self) -> *mut u16 { 1019 | ::std::mem::transmute(&self._bindgen_data_1_) 1020 | } 1021 | pub unsafe fn userdata(&mut self) -> *mut *mut ::libc::c_void { 1022 | ::std::mem::transmute(&self._bindgen_data_2_) 1023 | } 1024 | pub unsafe fn udata64(&mut self) -> *mut u64 { 1025 | ::std::mem::transmute(&self._bindgen_data_2_) 1026 | } 1027 | pub unsafe fn tx_offload(&mut self) -> *mut u64 { 1028 | ::std::mem::transmute(&self._bindgen_data_3_) 1029 | } 1030 | } 1031 | impl ::std::default::Default for Struct_rte_mbuf { 1032 | fn default() -> Struct_rte_mbuf { unsafe { ::std::mem::zeroed() } } 1033 | } 1034 | #[repr(C)] 1035 | #[derive(Copy)] 1036 | pub struct Union_Unnamed21 { 1037 | pub _bindgen_data_: [u32; 2us], 1038 | } 1039 | impl Union_Unnamed21 { 1040 | pub unsafe fn rss(&mut self) -> *mut u32 { 1041 | ::std::mem::transmute(&self._bindgen_data_) 1042 | } 1043 | pub unsafe fn fdir(&mut self) -> *mut Struct_Unnamed22 { 1044 | ::std::mem::transmute(&self._bindgen_data_) 1045 | } 1046 | pub unsafe fn sched(&mut self) -> *mut u32 { 1047 | ::std::mem::transmute(&self._bindgen_data_) 1048 | } 1049 | pub unsafe fn usr(&mut self) -> *mut u32 { 1050 | ::std::mem::transmute(&self._bindgen_data_) 1051 | } 1052 | } 1053 | impl ::std::default::Default for Union_Unnamed21 { 1054 | fn default() -> Union_Unnamed21 { unsafe { ::std::mem::zeroed() } } 1055 | } 1056 | #[repr(C)] 1057 | #[derive(Copy)] 1058 | pub struct Struct_Unnamed22 { 1059 | pub _bindgen_data_1_: [u32; 1us], 1060 | pub hi: u32, 1061 | } 1062 | impl Struct_Unnamed22 { 1063 | pub unsafe fn hash(&mut self) -> *mut u16 { 1064 | ::std::mem::transmute(&self._bindgen_data_1_) 1065 | } 1066 | pub unsafe fn id(&mut self) -> *mut u16 { 1067 | ::std::mem::transmute(&self._bindgen_data_1_) 1068 | } 1069 | pub unsafe fn lo(&mut self) -> *mut u32 { 1070 | ::std::mem::transmute(&self._bindgen_data_1_) 1071 | } 1072 | } 1073 | impl ::std::default::Default for Struct_Unnamed22 { 1074 | fn default() -> Struct_Unnamed22 { unsafe { ::std::mem::zeroed() } } 1075 | } 1076 | #[repr(C)] 1077 | #[derive(Copy)] 1078 | pub struct Struct_rte_pktmbuf_pool_private { 1079 | pub mbuf_data_room_size: u16, 1080 | } 1081 | impl ::std::default::Default for Struct_rte_pktmbuf_pool_private { 1082 | fn default() -> Struct_rte_pktmbuf_pool_private { 1083 | unsafe { ::std::mem::zeroed() } 1084 | } 1085 | } 1086 | pub enum Struct_rte_distributor { } 1087 | #[repr(C)] 1088 | #[derive(Copy)] 1089 | pub struct Struct_ether_addr { 1090 | pub addr_bytes: [u8; 6us], 1091 | } 1092 | impl ::std::default::Default for Struct_ether_addr { 1093 | fn default() -> Struct_ether_addr { unsafe { ::std::mem::zeroed() } } 1094 | } 1095 | #[repr(C)] 1096 | #[derive(Copy)] 1097 | pub struct Struct_ether_hdr { 1098 | pub d_addr: Struct_ether_addr, 1099 | pub s_addr: Struct_ether_addr, 1100 | pub ether_type: u16, 1101 | } 1102 | impl ::std::default::Default for Struct_ether_hdr { 1103 | fn default() -> Struct_ether_hdr { unsafe { ::std::mem::zeroed() } } 1104 | } 1105 | #[repr(C)] 1106 | #[derive(Copy)] 1107 | pub struct Struct_vlan_hdr { 1108 | pub vlan_tci: u16, 1109 | pub eth_proto: u16, 1110 | } 1111 | impl ::std::default::Default for Struct_vlan_hdr { 1112 | fn default() -> Struct_vlan_hdr { unsafe { ::std::mem::zeroed() } } 1113 | } 1114 | #[repr(C)] 1115 | #[derive(Copy)] 1116 | pub struct Struct_vxlan_hdr { 1117 | pub vx_flags: u32, 1118 | pub vx_vni: u32, 1119 | } 1120 | impl ::std::default::Default for Struct_vxlan_hdr { 1121 | fn default() -> Struct_vxlan_hdr { unsafe { ::std::mem::zeroed() } } 1122 | } 1123 | pub type Enum_rte_bond_8023ad_selection = ::libc::c_uint; 1124 | pub const UNSELECTED: ::libc::c_uint = 0; 1125 | pub const STANDBY: ::libc::c_uint = 1; 1126 | pub const SELECTED: ::libc::c_uint = 2; 1127 | #[repr(C)] 1128 | #[derive(Copy)] 1129 | pub struct Struct_slow_protocol { 1130 | pub subtype: u8, 1131 | pub reserved_119: [u8; 119us], 1132 | } 1133 | impl ::std::default::Default for Struct_slow_protocol { 1134 | fn default() -> Struct_slow_protocol { unsafe { ::std::mem::zeroed() } } 1135 | } 1136 | #[repr(C)] 1137 | #[derive(Copy)] 1138 | pub struct Struct_slow_protocol_frame { 1139 | pub eth_hdr: Struct_ether_hdr, 1140 | pub slow_protocol: Struct_slow_protocol, 1141 | } 1142 | impl ::std::default::Default for Struct_slow_protocol_frame { 1143 | fn default() -> Struct_slow_protocol_frame { 1144 | unsafe { ::std::mem::zeroed() } 1145 | } 1146 | } 1147 | #[repr(C)] 1148 | #[derive(Copy)] 1149 | pub struct Struct_port_params { 1150 | pub system_priority: u16, 1151 | pub system: Struct_ether_addr, 1152 | pub key: u16, 1153 | pub port_priority: u16, 1154 | pub port_number: u16, 1155 | } 1156 | impl ::std::default::Default for Struct_port_params { 1157 | fn default() -> Struct_port_params { unsafe { ::std::mem::zeroed() } } 1158 | } 1159 | #[repr(C)] 1160 | #[derive(Copy)] 1161 | pub struct Struct_lacpdu_actor_partner_params { 1162 | pub tlv_type_info: u8, 1163 | pub info_length: u8, 1164 | pub port_params: Struct_port_params, 1165 | pub state: u8, 1166 | pub reserved_3: [u8; 3us], 1167 | } 1168 | impl ::std::default::Default for Struct_lacpdu_actor_partner_params { 1169 | fn default() -> Struct_lacpdu_actor_partner_params { 1170 | unsafe { ::std::mem::zeroed() } 1171 | } 1172 | } 1173 | #[repr(C)] 1174 | #[derive(Copy)] 1175 | pub struct Struct_lacpdu { 1176 | pub subtype: u8, 1177 | pub version_number: u8, 1178 | pub actor: Struct_lacpdu_actor_partner_params, 1179 | pub partner: Struct_lacpdu_actor_partner_params, 1180 | pub tlv_type_collector_info: u8, 1181 | pub collector_info_length: u8, 1182 | pub collector_max_delay: u16, 1183 | pub reserved_12: [u8; 12us], 1184 | pub tlv_type_terminator: u8, 1185 | pub terminator_length: u8, 1186 | pub reserved_50: [u8; 50us], 1187 | } 1188 | impl ::std::default::Default for Struct_lacpdu { 1189 | fn default() -> Struct_lacpdu { unsafe { ::std::mem::zeroed() } } 1190 | } 1191 | #[repr(C)] 1192 | #[derive(Copy)] 1193 | pub struct Struct_lacpdu_header { 1194 | pub eth_hdr: Struct_ether_hdr, 1195 | pub lacpdu: Struct_lacpdu, 1196 | } 1197 | impl ::std::default::Default for Struct_lacpdu_header { 1198 | fn default() -> Struct_lacpdu_header { unsafe { ::std::mem::zeroed() } } 1199 | } 1200 | #[repr(C)] 1201 | #[derive(Copy)] 1202 | pub struct Struct_marker { 1203 | pub subtype: u8, 1204 | pub version_number: u8, 1205 | pub tlv_type_marker: u8, 1206 | pub info_length: u8, 1207 | pub requester_port: u16, 1208 | pub requester_system: Struct_ether_addr, 1209 | pub requester_transaction_id: u32, 1210 | pub reserved_2: [u8; 2us], 1211 | pub tlv_type_terminator: u8, 1212 | pub terminator_length: u8, 1213 | pub reserved_90: [u8; 90us], 1214 | } 1215 | impl ::std::default::Default for Struct_marker { 1216 | fn default() -> Struct_marker { unsafe { ::std::mem::zeroed() } } 1217 | } 1218 | #[repr(C)] 1219 | #[derive(Copy)] 1220 | pub struct Struct_marker_header { 1221 | pub eth_hdr: Struct_ether_hdr, 1222 | pub marker: Struct_marker, 1223 | } 1224 | impl ::std::default::Default for Struct_marker_header { 1225 | fn default() -> Struct_marker_header { unsafe { ::std::mem::zeroed() } } 1226 | } 1227 | #[repr(C)] 1228 | #[derive(Copy)] 1229 | pub struct Struct_rte_eth_bond_8023ad_conf { 1230 | pub fast_periodic_ms: u32, 1231 | pub slow_periodic_ms: u32, 1232 | pub short_timeout_ms: u32, 1233 | pub long_timeout_ms: u32, 1234 | pub aggregate_wait_timeout_ms: u32, 1235 | pub tx_period_ms: u32, 1236 | pub rx_marker_period_ms: u32, 1237 | pub update_timeout_ms: u32, 1238 | } 1239 | impl ::std::default::Default for Struct_rte_eth_bond_8023ad_conf { 1240 | fn default() -> Struct_rte_eth_bond_8023ad_conf { 1241 | unsafe { ::std::mem::zeroed() } 1242 | } 1243 | } 1244 | #[repr(C)] 1245 | #[derive(Copy)] 1246 | pub struct Struct_rte_eth_bond_8023ad_slave_info { 1247 | pub selected: Enum_rte_bond_8023ad_selection, 1248 | pub actor_state: u8, 1249 | pub actor: Struct_port_params, 1250 | pub partner_state: u8, 1251 | pub partner: Struct_port_params, 1252 | pub agg_port_id: u8, 1253 | } 1254 | impl ::std::default::Default for Struct_rte_eth_bond_8023ad_slave_info { 1255 | fn default() -> Struct_rte_eth_bond_8023ad_slave_info { 1256 | unsafe { ::std::mem::zeroed() } 1257 | } 1258 | } 1259 | pub type Enum_rte_filter_type = ::libc::c_uint; 1260 | pub const RTE_ETH_FILTER_NONE: ::libc::c_uint = 0; 1261 | pub const RTE_ETH_FILTER_MACVLAN: ::libc::c_uint = 1; 1262 | pub const RTE_ETH_FILTER_ETHERTYPE: ::libc::c_uint = 2; 1263 | pub const RTE_ETH_FILTER_TUNNEL: ::libc::c_uint = 3; 1264 | pub const RTE_ETH_FILTER_FDIR: ::libc::c_uint = 4; 1265 | pub const RTE_ETH_FILTER_MAX: ::libc::c_uint = 5; 1266 | pub type Enum_rte_filter_op = ::libc::c_uint; 1267 | pub const RTE_ETH_FILTER_NOP: ::libc::c_uint = 0; 1268 | pub const RTE_ETH_FILTER_ADD: ::libc::c_uint = 1; 1269 | pub const RTE_ETH_FILTER_UPDATE: ::libc::c_uint = 2; 1270 | pub const RTE_ETH_FILTER_DELETE: ::libc::c_uint = 3; 1271 | pub const RTE_ETH_FILTER_FLUSH: ::libc::c_uint = 4; 1272 | pub const RTE_ETH_FILTER_GET: ::libc::c_uint = 5; 1273 | pub const RTE_ETH_FILTER_SET: ::libc::c_uint = 6; 1274 | pub const RTE_ETH_FILTER_INFO: ::libc::c_uint = 7; 1275 | pub const RTE_ETH_FILTER_STATS: ::libc::c_uint = 8; 1276 | pub const RTE_ETH_FILTER_OP_MAX: ::libc::c_uint = 9; 1277 | pub type Enum_rte_mac_filter_type = ::libc::c_uint; 1278 | pub const RTE_MAC_PERFECT_MATCH: ::libc::c_uint = 1; 1279 | pub const RTE_MACVLAN_PERFECT_MATCH: ::libc::c_uint = 2; 1280 | pub const RTE_MAC_HASH_MATCH: ::libc::c_uint = 3; 1281 | pub const RTE_MACVLAN_HASH_MATCH: ::libc::c_uint = 4; 1282 | #[repr(C)] 1283 | #[derive(Copy)] 1284 | pub struct Struct_rte_eth_mac_filter { 1285 | pub is_vf: u8, 1286 | pub dst_id: u16, 1287 | pub filter_type: Enum_rte_mac_filter_type, 1288 | pub mac_addr: Struct_ether_addr, 1289 | } 1290 | impl ::std::default::Default for Struct_rte_eth_mac_filter { 1291 | fn default() -> Struct_rte_eth_mac_filter { 1292 | unsafe { ::std::mem::zeroed() } 1293 | } 1294 | } 1295 | #[repr(C)] 1296 | #[derive(Copy)] 1297 | pub struct Struct_rte_eth_ethertype_filter { 1298 | pub mac_addr: Struct_ether_addr, 1299 | pub ether_type: u16, 1300 | pub flags: u16, 1301 | pub queue: u16, 1302 | } 1303 | impl ::std::default::Default for Struct_rte_eth_ethertype_filter { 1304 | fn default() -> Struct_rte_eth_ethertype_filter { 1305 | unsafe { ::std::mem::zeroed() } 1306 | } 1307 | } 1308 | pub type Enum_rte_eth_tunnel_type = ::libc::c_uint; 1309 | pub const RTE_TUNNEL_TYPE_NONE: ::libc::c_uint = 0; 1310 | pub const RTE_TUNNEL_TYPE_VXLAN: ::libc::c_uint = 1; 1311 | pub const RTE_TUNNEL_TYPE_GENEVE: ::libc::c_uint = 2; 1312 | pub const RTE_TUNNEL_TYPE_TEREDO: ::libc::c_uint = 3; 1313 | pub const RTE_TUNNEL_TYPE_NVGRE: ::libc::c_uint = 4; 1314 | pub const RTE_TUNNEL_TYPE_MAX: ::libc::c_uint = 5; 1315 | pub type Enum_rte_tunnel_iptype = ::libc::c_uint; 1316 | pub const RTE_TUNNEL_IPTYPE_IPV4: ::libc::c_uint = 0; 1317 | pub const RTE_TUNNEL_IPTYPE_IPV6: ::libc::c_uint = 1; 1318 | #[repr(C)] 1319 | #[derive(Copy)] 1320 | pub struct Struct_rte_eth_tunnel_filter_conf { 1321 | pub outer_mac: *mut Struct_ether_addr, 1322 | pub inner_mac: *mut Struct_ether_addr, 1323 | pub inner_vlan: u16, 1324 | pub ip_type: Enum_rte_tunnel_iptype, 1325 | pub ip_addr: Union_Unnamed23, 1326 | pub filter_type: u16, 1327 | pub tunnel_type: Enum_rte_eth_tunnel_type, 1328 | pub tenant_id: u32, 1329 | pub queue_id: u16, 1330 | } 1331 | impl ::std::default::Default for Struct_rte_eth_tunnel_filter_conf { 1332 | fn default() -> Struct_rte_eth_tunnel_filter_conf { 1333 | unsafe { ::std::mem::zeroed() } 1334 | } 1335 | } 1336 | #[repr(C)] 1337 | #[derive(Copy)] 1338 | pub struct Union_Unnamed23 { 1339 | pub _bindgen_data_: [u32; 4us], 1340 | } 1341 | impl Union_Unnamed23 { 1342 | pub unsafe fn ipv4_addr(&mut self) -> *mut u32 { 1343 | ::std::mem::transmute(&self._bindgen_data_) 1344 | } 1345 | pub unsafe fn ipv6_addr(&mut self) -> *mut [u32; 4us] { 1346 | ::std::mem::transmute(&self._bindgen_data_) 1347 | } 1348 | } 1349 | impl ::std::default::Default for Union_Unnamed23 { 1350 | fn default() -> Union_Unnamed23 { unsafe { ::std::mem::zeroed() } } 1351 | } 1352 | pub type Enum_rte_eth_flow_type = ::libc::c_uint; 1353 | pub const RTE_ETH_FLOW_TYPE_NONE: ::libc::c_uint = 0; 1354 | pub const RTE_ETH_FLOW_TYPE_UDPV4: ::libc::c_uint = 1; 1355 | pub const RTE_ETH_FLOW_TYPE_TCPV4: ::libc::c_uint = 2; 1356 | pub const RTE_ETH_FLOW_TYPE_SCTPV4: ::libc::c_uint = 3; 1357 | pub const RTE_ETH_FLOW_TYPE_IPV4_OTHER: ::libc::c_uint = 4; 1358 | pub const RTE_ETH_FLOW_TYPE_FRAG_IPV4: ::libc::c_uint = 5; 1359 | pub const RTE_ETH_FLOW_TYPE_UDPV6: ::libc::c_uint = 6; 1360 | pub const RTE_ETH_FLOW_TYPE_TCPV6: ::libc::c_uint = 7; 1361 | pub const RTE_ETH_FLOW_TYPE_SCTPV6: ::libc::c_uint = 8; 1362 | pub const RTE_ETH_FLOW_TYPE_IPV6_OTHER: ::libc::c_uint = 9; 1363 | pub const RTE_ETH_FLOW_TYPE_FRAG_IPV6: ::libc::c_uint = 10; 1364 | pub const RTE_ETH_FLOW_TYPE_MAX: ::libc::c_uint = 64; 1365 | #[repr(C)] 1366 | #[derive(Copy)] 1367 | pub struct Struct_rte_eth_ipv4_flow { 1368 | pub src_ip: u32, 1369 | pub dst_ip: u32, 1370 | } 1371 | impl ::std::default::Default for Struct_rte_eth_ipv4_flow { 1372 | fn default() -> Struct_rte_eth_ipv4_flow { 1373 | unsafe { ::std::mem::zeroed() } 1374 | } 1375 | } 1376 | #[repr(C)] 1377 | #[derive(Copy)] 1378 | pub struct Struct_rte_eth_udpv4_flow { 1379 | pub ip: Struct_rte_eth_ipv4_flow, 1380 | pub src_port: u16, 1381 | pub dst_port: u16, 1382 | } 1383 | impl ::std::default::Default for Struct_rte_eth_udpv4_flow { 1384 | fn default() -> Struct_rte_eth_udpv4_flow { 1385 | unsafe { ::std::mem::zeroed() } 1386 | } 1387 | } 1388 | #[repr(C)] 1389 | #[derive(Copy)] 1390 | pub struct Struct_rte_eth_tcpv4_flow { 1391 | pub ip: Struct_rte_eth_ipv4_flow, 1392 | pub src_port: u16, 1393 | pub dst_port: u16, 1394 | } 1395 | impl ::std::default::Default for Struct_rte_eth_tcpv4_flow { 1396 | fn default() -> Struct_rte_eth_tcpv4_flow { 1397 | unsafe { ::std::mem::zeroed() } 1398 | } 1399 | } 1400 | #[repr(C)] 1401 | #[derive(Copy)] 1402 | pub struct Struct_rte_eth_sctpv4_flow { 1403 | pub ip: Struct_rte_eth_ipv4_flow, 1404 | pub verify_tag: u32, 1405 | } 1406 | impl ::std::default::Default for Struct_rte_eth_sctpv4_flow { 1407 | fn default() -> Struct_rte_eth_sctpv4_flow { 1408 | unsafe { ::std::mem::zeroed() } 1409 | } 1410 | } 1411 | #[repr(C)] 1412 | #[derive(Copy)] 1413 | pub struct Struct_rte_eth_ipv6_flow { 1414 | pub src_ip: [u32; 4us], 1415 | pub dst_ip: [u32; 4us], 1416 | } 1417 | impl ::std::default::Default for Struct_rte_eth_ipv6_flow { 1418 | fn default() -> Struct_rte_eth_ipv6_flow { 1419 | unsafe { ::std::mem::zeroed() } 1420 | } 1421 | } 1422 | #[repr(C)] 1423 | #[derive(Copy)] 1424 | pub struct Struct_rte_eth_udpv6_flow { 1425 | pub ip: Struct_rte_eth_ipv6_flow, 1426 | pub src_port: u16, 1427 | pub dst_port: u16, 1428 | } 1429 | impl ::std::default::Default for Struct_rte_eth_udpv6_flow { 1430 | fn default() -> Struct_rte_eth_udpv6_flow { 1431 | unsafe { ::std::mem::zeroed() } 1432 | } 1433 | } 1434 | #[repr(C)] 1435 | #[derive(Copy)] 1436 | pub struct Struct_rte_eth_tcpv6_flow { 1437 | pub ip: Struct_rte_eth_ipv6_flow, 1438 | pub src_port: u16, 1439 | pub dst_port: u16, 1440 | } 1441 | impl ::std::default::Default for Struct_rte_eth_tcpv6_flow { 1442 | fn default() -> Struct_rte_eth_tcpv6_flow { 1443 | unsafe { ::std::mem::zeroed() } 1444 | } 1445 | } 1446 | #[repr(C)] 1447 | #[derive(Copy)] 1448 | pub struct Struct_rte_eth_sctpv6_flow { 1449 | pub ip: Struct_rte_eth_ipv6_flow, 1450 | pub verify_tag: u32, 1451 | } 1452 | impl ::std::default::Default for Struct_rte_eth_sctpv6_flow { 1453 | fn default() -> Struct_rte_eth_sctpv6_flow { 1454 | unsafe { ::std::mem::zeroed() } 1455 | } 1456 | } 1457 | #[repr(C)] 1458 | #[derive(Copy)] 1459 | pub struct Union_rte_eth_fdir_flow { 1460 | pub _bindgen_data_: [u32; 9us], 1461 | } 1462 | impl Union_rte_eth_fdir_flow { 1463 | pub unsafe fn udp4_flow(&mut self) -> *mut Struct_rte_eth_udpv4_flow { 1464 | ::std::mem::transmute(&self._bindgen_data_) 1465 | } 1466 | pub unsafe fn tcp4_flow(&mut self) -> *mut Struct_rte_eth_tcpv4_flow { 1467 | ::std::mem::transmute(&self._bindgen_data_) 1468 | } 1469 | pub unsafe fn sctp4_flow(&mut self) -> *mut Struct_rte_eth_sctpv4_flow { 1470 | ::std::mem::transmute(&self._bindgen_data_) 1471 | } 1472 | pub unsafe fn ip4_flow(&mut self) -> *mut Struct_rte_eth_ipv4_flow { 1473 | ::std::mem::transmute(&self._bindgen_data_) 1474 | } 1475 | pub unsafe fn udp6_flow(&mut self) -> *mut Struct_rte_eth_udpv6_flow { 1476 | ::std::mem::transmute(&self._bindgen_data_) 1477 | } 1478 | pub unsafe fn tcp6_flow(&mut self) -> *mut Struct_rte_eth_tcpv6_flow { 1479 | ::std::mem::transmute(&self._bindgen_data_) 1480 | } 1481 | pub unsafe fn sctp6_flow(&mut self) -> *mut Struct_rte_eth_sctpv6_flow { 1482 | ::std::mem::transmute(&self._bindgen_data_) 1483 | } 1484 | pub unsafe fn ipv6_flow(&mut self) -> *mut Struct_rte_eth_ipv6_flow { 1485 | ::std::mem::transmute(&self._bindgen_data_) 1486 | } 1487 | } 1488 | impl ::std::default::Default for Union_rte_eth_fdir_flow { 1489 | fn default() -> Union_rte_eth_fdir_flow { 1490 | unsafe { ::std::mem::zeroed() } 1491 | } 1492 | } 1493 | #[repr(C)] 1494 | #[derive(Copy)] 1495 | pub struct Struct_rte_eth_fdir_flow_ext { 1496 | pub vlan_tci: u16, 1497 | pub flexbytes: [u8; 16us], 1498 | } 1499 | impl ::std::default::Default for Struct_rte_eth_fdir_flow_ext { 1500 | fn default() -> Struct_rte_eth_fdir_flow_ext { 1501 | unsafe { ::std::mem::zeroed() } 1502 | } 1503 | } 1504 | #[repr(C)] 1505 | #[derive(Copy)] 1506 | pub struct Struct_rte_eth_fdir_input { 1507 | pub flow_type: Enum_rte_eth_flow_type, 1508 | pub flow: Union_rte_eth_fdir_flow, 1509 | pub flow_ext: Struct_rte_eth_fdir_flow_ext, 1510 | } 1511 | impl ::std::default::Default for Struct_rte_eth_fdir_input { 1512 | fn default() -> Struct_rte_eth_fdir_input { 1513 | unsafe { ::std::mem::zeroed() } 1514 | } 1515 | } 1516 | pub type Enum_rte_eth_fdir_behavior = ::libc::c_uint; 1517 | pub const RTE_ETH_FDIR_ACCEPT: ::libc::c_uint = 0; 1518 | pub const RTE_ETH_FDIR_REJECT: ::libc::c_uint = 1; 1519 | pub type Enum_rte_eth_fdir_status = ::libc::c_uint; 1520 | pub const RTE_ETH_FDIR_NO_REPORT_STATUS: ::libc::c_uint = 0; 1521 | pub const RTE_ETH_FDIR_REPORT_ID: ::libc::c_uint = 1; 1522 | pub const RTE_ETH_FDIR_REPORT_ID_FLEX_4: ::libc::c_uint = 2; 1523 | pub const RTE_ETH_FDIR_REPORT_FLEX_8: ::libc::c_uint = 3; 1524 | #[repr(C)] 1525 | #[derive(Copy)] 1526 | pub struct Struct_rte_eth_fdir_action { 1527 | pub rx_queue: u16, 1528 | pub behavior: Enum_rte_eth_fdir_behavior, 1529 | pub report_status: Enum_rte_eth_fdir_status, 1530 | pub flex_off: u8, 1531 | } 1532 | impl ::std::default::Default for Struct_rte_eth_fdir_action { 1533 | fn default() -> Struct_rte_eth_fdir_action { 1534 | unsafe { ::std::mem::zeroed() } 1535 | } 1536 | } 1537 | #[repr(C)] 1538 | #[derive(Copy)] 1539 | pub struct Struct_rte_eth_fdir_filter { 1540 | pub soft_id: u32, 1541 | pub input: Struct_rte_eth_fdir_input, 1542 | pub action: Struct_rte_eth_fdir_action, 1543 | } 1544 | impl ::std::default::Default for Struct_rte_eth_fdir_filter { 1545 | fn default() -> Struct_rte_eth_fdir_filter { 1546 | unsafe { ::std::mem::zeroed() } 1547 | } 1548 | } 1549 | pub type Enum_rte_eth_payload_type = ::libc::c_uint; 1550 | pub const RTE_ETH_PAYLOAD_UNKNOWN: ::libc::c_uint = 0; 1551 | pub const RTE_ETH_L2_PAYLOAD: ::libc::c_uint = 1; 1552 | pub const RTE_ETH_L3_PAYLOAD: ::libc::c_uint = 2; 1553 | pub const RTE_ETH_L4_PAYLOAD: ::libc::c_uint = 3; 1554 | pub const RTE_ETH_PAYLOAD_MAX: ::libc::c_uint = 8; 1555 | #[repr(C)] 1556 | #[derive(Copy)] 1557 | pub struct Struct_rte_eth_flex_payload_cfg { 1558 | pub _type: Enum_rte_eth_payload_type, 1559 | pub src_offset: [u16; 16us], 1560 | } 1561 | impl ::std::default::Default for Struct_rte_eth_flex_payload_cfg { 1562 | fn default() -> Struct_rte_eth_flex_payload_cfg { 1563 | unsafe { ::std::mem::zeroed() } 1564 | } 1565 | } 1566 | #[repr(C)] 1567 | #[derive(Copy)] 1568 | pub struct Struct_rte_eth_fdir_flex_mask { 1569 | pub flow_type: Enum_rte_eth_flow_type, 1570 | pub mask: [u8; 16us], 1571 | } 1572 | impl ::std::default::Default for Struct_rte_eth_fdir_flex_mask { 1573 | fn default() -> Struct_rte_eth_fdir_flex_mask { 1574 | unsafe { ::std::mem::zeroed() } 1575 | } 1576 | } 1577 | #[repr(C)] 1578 | #[derive(Copy)] 1579 | pub struct Struct_rte_eth_fdir_flex_conf { 1580 | pub nb_payloads: u16, 1581 | pub nb_flexmasks: u16, 1582 | pub flex_set: [Struct_rte_eth_flex_payload_cfg; 8us], 1583 | pub flex_mask: [Struct_rte_eth_fdir_flex_mask; 64us], 1584 | } 1585 | impl ::std::default::Default for Struct_rte_eth_fdir_flex_conf { 1586 | fn default() -> Struct_rte_eth_fdir_flex_conf { 1587 | unsafe { ::std::mem::zeroed() } 1588 | } 1589 | } 1590 | pub type Enum_rte_fdir_mode = ::libc::c_uint; 1591 | pub const RTE_FDIR_MODE_NONE: ::libc::c_uint = 0; 1592 | pub const RTE_FDIR_MODE_SIGNATURE: ::libc::c_uint = 1; 1593 | pub const RTE_FDIR_MODE_PERFECT: ::libc::c_uint = 2; 1594 | #[repr(C)] 1595 | #[derive(Copy)] 1596 | pub struct Struct_rte_eth_fdir_info { 1597 | pub mode: Enum_rte_fdir_mode, 1598 | pub flex_conf: Struct_rte_eth_fdir_flex_conf, 1599 | pub guarant_spc: u32, 1600 | pub best_spc: u32, 1601 | pub flow_types_mask: [u32; 16us], 1602 | pub max_flexpayload: u32, 1603 | pub flex_payload_unit: u32, 1604 | pub max_flex_payload_segment_num: u32, 1605 | pub flex_payload_limit: u16, 1606 | pub flex_bitmask_unit: u32, 1607 | pub max_flex_bitmask_num: u32, 1608 | } 1609 | impl ::std::default::Default for Struct_rte_eth_fdir_info { 1610 | fn default() -> Struct_rte_eth_fdir_info { 1611 | unsafe { ::std::mem::zeroed() } 1612 | } 1613 | } 1614 | #[repr(C)] 1615 | #[derive(Copy)] 1616 | pub struct Struct_rte_eth_fdir_stats { 1617 | pub collision: u32, 1618 | pub free: u32, 1619 | pub maxhash: u32, 1620 | pub maxlen: u32, 1621 | pub add: u64, 1622 | pub remove: u64, 1623 | pub f_add: u64, 1624 | pub f_remove: u64, 1625 | pub guarant_cnt: u32, 1626 | pub best_cnt: u32, 1627 | } 1628 | impl ::std::default::Default for Struct_rte_eth_fdir_stats { 1629 | fn default() -> Struct_rte_eth_fdir_stats { 1630 | unsafe { ::std::mem::zeroed() } 1631 | } 1632 | } 1633 | #[repr(C)] 1634 | #[derive(Copy)] 1635 | pub struct Struct_rte_eth_stats { 1636 | pub ipackets: u64, 1637 | pub opackets: u64, 1638 | pub ibytes: u64, 1639 | pub obytes: u64, 1640 | pub imissed: u64, 1641 | pub ibadcrc: u64, 1642 | pub ibadlen: u64, 1643 | pub ierrors: u64, 1644 | pub oerrors: u64, 1645 | pub imcasts: u64, 1646 | pub rx_nombuf: u64, 1647 | pub fdirmatch: u64, 1648 | pub fdirmiss: u64, 1649 | pub tx_pause_xon: u64, 1650 | pub rx_pause_xon: u64, 1651 | pub tx_pause_xoff: u64, 1652 | pub rx_pause_xoff: u64, 1653 | pub q_ipackets: [u64; 16us], 1654 | pub q_opackets: [u64; 16us], 1655 | pub q_ibytes: [u64; 16us], 1656 | pub q_obytes: [u64; 16us], 1657 | pub q_errors: [u64; 16us], 1658 | pub ilbpackets: u64, 1659 | pub olbpackets: u64, 1660 | pub ilbbytes: u64, 1661 | pub olbbytes: u64, 1662 | } 1663 | impl ::std::default::Default for Struct_rte_eth_stats { 1664 | fn default() -> Struct_rte_eth_stats { unsafe { ::std::mem::zeroed() } } 1665 | } 1666 | #[repr(C)] 1667 | #[derive(Copy)] 1668 | pub struct Struct_rte_eth_link { 1669 | pub link_speed: u16, 1670 | pub link_duplex: u16, 1671 | pub _bindgen_bitfield_1_: u8, 1672 | } 1673 | impl ::std::default::Default for Struct_rte_eth_link { 1674 | fn default() -> Struct_rte_eth_link { unsafe { ::std::mem::zeroed() } } 1675 | } 1676 | #[repr(C)] 1677 | #[derive(Copy)] 1678 | pub struct Struct_rte_eth_thresh { 1679 | pub pthresh: u8, 1680 | pub hthresh: u8, 1681 | pub wthresh: u8, 1682 | } 1683 | impl ::std::default::Default for Struct_rte_eth_thresh { 1684 | fn default() -> Struct_rte_eth_thresh { unsafe { ::std::mem::zeroed() } } 1685 | } 1686 | pub type Enum_rte_eth_rx_mq_mode = ::libc::c_uint; 1687 | pub const ETH_MQ_RX_NONE: ::libc::c_uint = 0; 1688 | pub const ETH_MQ_RX_RSS: ::libc::c_uint = 1; 1689 | pub const ETH_MQ_RX_DCB: ::libc::c_uint = 2; 1690 | pub const ETH_MQ_RX_DCB_RSS: ::libc::c_uint = 3; 1691 | pub const ETH_MQ_RX_VMDQ_ONLY: ::libc::c_uint = 4; 1692 | pub const ETH_MQ_RX_VMDQ_RSS: ::libc::c_uint = 5; 1693 | pub const ETH_MQ_RX_VMDQ_DCB: ::libc::c_uint = 6; 1694 | pub const ETH_MQ_RX_VMDQ_DCB_RSS: ::libc::c_uint = 7; 1695 | pub type Enum_rte_eth_tx_mq_mode = ::libc::c_uint; 1696 | pub const ETH_MQ_TX_NONE: ::libc::c_uint = 0; 1697 | pub const ETH_MQ_TX_DCB: ::libc::c_uint = 1; 1698 | pub const ETH_MQ_TX_VMDQ_DCB: ::libc::c_uint = 2; 1699 | pub const ETH_MQ_TX_VMDQ_ONLY: ::libc::c_uint = 3; 1700 | #[repr(C)] 1701 | #[derive(Copy)] 1702 | pub struct Struct_rte_eth_rxmode { 1703 | pub mq_mode: Enum_rte_eth_rx_mq_mode, 1704 | pub max_rx_pkt_len: u32, 1705 | pub split_hdr_size: u16, 1706 | pub _bindgen_bitfield_1_: u8, 1707 | pub _bindgen_bitfield_2_: u8, 1708 | pub _bindgen_bitfield_3_: u8, 1709 | pub _bindgen_bitfield_4_: u8, 1710 | pub _bindgen_bitfield_5_: u8, 1711 | pub _bindgen_bitfield_6_: u8, 1712 | pub _bindgen_bitfield_7_: u8, 1713 | pub _bindgen_bitfield_8_: u8, 1714 | } 1715 | impl ::std::default::Default for Struct_rte_eth_rxmode { 1716 | fn default() -> Struct_rte_eth_rxmode { unsafe { ::std::mem::zeroed() } } 1717 | } 1718 | #[repr(C)] 1719 | #[derive(Copy)] 1720 | pub struct Struct_rte_eth_rss_conf { 1721 | pub rss_key: *mut u8, 1722 | pub rss_key_len: u8, 1723 | pub rss_hf: u64, 1724 | } 1725 | impl ::std::default::Default for Struct_rte_eth_rss_conf { 1726 | fn default() -> Struct_rte_eth_rss_conf { 1727 | unsafe { ::std::mem::zeroed() } 1728 | } 1729 | } 1730 | #[repr(C)] 1731 | #[derive(Copy)] 1732 | pub struct Struct_rte_eth_vlan_mirror { 1733 | pub vlan_mask: u64, 1734 | pub vlan_id: [u16; 64us], 1735 | } 1736 | impl ::std::default::Default for Struct_rte_eth_vlan_mirror { 1737 | fn default() -> Struct_rte_eth_vlan_mirror { 1738 | unsafe { ::std::mem::zeroed() } 1739 | } 1740 | } 1741 | #[repr(C)] 1742 | #[derive(Copy)] 1743 | pub struct Struct_rte_eth_vmdq_mirror_conf { 1744 | pub rule_type_mask: u8, 1745 | pub dst_pool: u8, 1746 | pub pool_mask: u64, 1747 | pub vlan: Struct_rte_eth_vlan_mirror, 1748 | } 1749 | impl ::std::default::Default for Struct_rte_eth_vmdq_mirror_conf { 1750 | fn default() -> Struct_rte_eth_vmdq_mirror_conf { 1751 | unsafe { ::std::mem::zeroed() } 1752 | } 1753 | } 1754 | #[repr(C)] 1755 | #[derive(Copy)] 1756 | pub struct Struct_rte_eth_rss_reta_entry64 { 1757 | pub mask: u64, 1758 | pub reta: [u8; 64us], 1759 | } 1760 | impl ::std::default::Default for Struct_rte_eth_rss_reta_entry64 { 1761 | fn default() -> Struct_rte_eth_rss_reta_entry64 { 1762 | unsafe { ::std::mem::zeroed() } 1763 | } 1764 | } 1765 | pub type Enum_rte_eth_nb_tcs = ::libc::c_uint; 1766 | pub const ETH_4_TCS: ::libc::c_uint = 4; 1767 | pub const ETH_8_TCS: ::libc::c_uint = 8; 1768 | pub type Enum_rte_eth_nb_pools = ::libc::c_uint; 1769 | pub const ETH_8_POOLS: ::libc::c_uint = 8; 1770 | pub const ETH_16_POOLS: ::libc::c_uint = 16; 1771 | pub const ETH_32_POOLS: ::libc::c_uint = 32; 1772 | pub const ETH_64_POOLS: ::libc::c_uint = 64; 1773 | #[repr(C)] 1774 | #[derive(Copy)] 1775 | pub struct Struct_rte_eth_dcb_rx_conf { 1776 | pub nb_tcs: Enum_rte_eth_nb_tcs, 1777 | pub dcb_queue: [u8; 8us], 1778 | } 1779 | impl ::std::default::Default for Struct_rte_eth_dcb_rx_conf { 1780 | fn default() -> Struct_rte_eth_dcb_rx_conf { 1781 | unsafe { ::std::mem::zeroed() } 1782 | } 1783 | } 1784 | #[repr(C)] 1785 | #[derive(Copy)] 1786 | pub struct Struct_rte_eth_vmdq_dcb_tx_conf { 1787 | pub nb_queue_pools: Enum_rte_eth_nb_pools, 1788 | pub dcb_queue: [u8; 8us], 1789 | } 1790 | impl ::std::default::Default for Struct_rte_eth_vmdq_dcb_tx_conf { 1791 | fn default() -> Struct_rte_eth_vmdq_dcb_tx_conf { 1792 | unsafe { ::std::mem::zeroed() } 1793 | } 1794 | } 1795 | #[repr(C)] 1796 | #[derive(Copy)] 1797 | pub struct Struct_rte_eth_dcb_tx_conf { 1798 | pub nb_tcs: Enum_rte_eth_nb_tcs, 1799 | pub dcb_queue: [u8; 8us], 1800 | } 1801 | impl ::std::default::Default for Struct_rte_eth_dcb_tx_conf { 1802 | fn default() -> Struct_rte_eth_dcb_tx_conf { 1803 | unsafe { ::std::mem::zeroed() } 1804 | } 1805 | } 1806 | #[repr(C)] 1807 | #[derive(Copy)] 1808 | pub struct Struct_rte_eth_vmdq_tx_conf { 1809 | pub nb_queue_pools: Enum_rte_eth_nb_pools, 1810 | } 1811 | impl ::std::default::Default for Struct_rte_eth_vmdq_tx_conf { 1812 | fn default() -> Struct_rte_eth_vmdq_tx_conf { 1813 | unsafe { ::std::mem::zeroed() } 1814 | } 1815 | } 1816 | #[repr(C)] 1817 | #[derive(Copy)] 1818 | pub struct Struct_rte_eth_vmdq_dcb_conf { 1819 | pub nb_queue_pools: Enum_rte_eth_nb_pools, 1820 | pub enable_default_pool: u8, 1821 | pub default_pool: u8, 1822 | pub nb_pool_maps: u8, 1823 | pub pool_map: [Struct_Unnamed24; 64us], 1824 | pub dcb_queue: [u8; 8us], 1825 | } 1826 | impl ::std::default::Default for Struct_rte_eth_vmdq_dcb_conf { 1827 | fn default() -> Struct_rte_eth_vmdq_dcb_conf { 1828 | unsafe { ::std::mem::zeroed() } 1829 | } 1830 | } 1831 | #[repr(C)] 1832 | #[derive(Copy)] 1833 | pub struct Struct_Unnamed24 { 1834 | pub vlan_id: u16, 1835 | pub pools: u64, 1836 | } 1837 | impl ::std::default::Default for Struct_Unnamed24 { 1838 | fn default() -> Struct_Unnamed24 { unsafe { ::std::mem::zeroed() } } 1839 | } 1840 | #[repr(C)] 1841 | #[derive(Copy)] 1842 | pub struct Struct_rte_eth_vmdq_rx_conf { 1843 | pub nb_queue_pools: Enum_rte_eth_nb_pools, 1844 | pub enable_default_pool: u8, 1845 | pub default_pool: u8, 1846 | pub enable_loop_back: u8, 1847 | pub nb_pool_maps: u8, 1848 | pub rx_mode: u32, 1849 | pub pool_map: [Struct_Unnamed25; 64us], 1850 | } 1851 | impl ::std::default::Default for Struct_rte_eth_vmdq_rx_conf { 1852 | fn default() -> Struct_rte_eth_vmdq_rx_conf { 1853 | unsafe { ::std::mem::zeroed() } 1854 | } 1855 | } 1856 | #[repr(C)] 1857 | #[derive(Copy)] 1858 | pub struct Struct_Unnamed25 { 1859 | pub vlan_id: u16, 1860 | pub pools: u64, 1861 | } 1862 | impl ::std::default::Default for Struct_Unnamed25 { 1863 | fn default() -> Struct_Unnamed25 { unsafe { ::std::mem::zeroed() } } 1864 | } 1865 | #[repr(C)] 1866 | #[derive(Copy)] 1867 | pub struct Struct_rte_eth_txmode { 1868 | pub mq_mode: Enum_rte_eth_tx_mq_mode, 1869 | pub pvid: u16, 1870 | pub _bindgen_bitfield_1_: u8, 1871 | pub _bindgen_bitfield_2_: u8, 1872 | pub _bindgen_bitfield_3_: u8, 1873 | } 1874 | impl ::std::default::Default for Struct_rte_eth_txmode { 1875 | fn default() -> Struct_rte_eth_txmode { unsafe { ::std::mem::zeroed() } } 1876 | } 1877 | #[repr(C)] 1878 | #[derive(Copy)] 1879 | pub struct Struct_rte_eth_rxconf { 1880 | pub rx_thresh: Struct_rte_eth_thresh, 1881 | pub rx_free_thresh: u16, 1882 | pub rx_drop_en: u8, 1883 | pub rx_deferred_start: u8, 1884 | } 1885 | impl ::std::default::Default for Struct_rte_eth_rxconf { 1886 | fn default() -> Struct_rte_eth_rxconf { unsafe { ::std::mem::zeroed() } } 1887 | } 1888 | #[repr(C)] 1889 | #[derive(Copy)] 1890 | pub struct Struct_rte_eth_txconf { 1891 | pub tx_thresh: Struct_rte_eth_thresh, 1892 | pub tx_rs_thresh: u16, 1893 | pub tx_free_thresh: u16, 1894 | pub txq_flags: u32, 1895 | pub tx_deferred_start: u8, 1896 | } 1897 | impl ::std::default::Default for Struct_rte_eth_txconf { 1898 | fn default() -> Struct_rte_eth_txconf { unsafe { ::std::mem::zeroed() } } 1899 | } 1900 | pub type Enum_rte_eth_fc_mode = ::libc::c_uint; 1901 | pub const RTE_FC_NONE: ::libc::c_uint = 0; 1902 | pub const RTE_FC_RX_PAUSE: ::libc::c_uint = 1; 1903 | pub const RTE_FC_TX_PAUSE: ::libc::c_uint = 2; 1904 | pub const RTE_FC_FULL: ::libc::c_uint = 3; 1905 | #[repr(C)] 1906 | #[derive(Copy)] 1907 | pub struct Struct_rte_eth_fc_conf { 1908 | pub high_water: u32, 1909 | pub low_water: u32, 1910 | pub pause_time: u16, 1911 | pub send_xon: u16, 1912 | pub mode: Enum_rte_eth_fc_mode, 1913 | pub mac_ctrl_frame_fwd: u8, 1914 | pub autoneg: u8, 1915 | } 1916 | impl ::std::default::Default for Struct_rte_eth_fc_conf { 1917 | fn default() -> Struct_rte_eth_fc_conf { unsafe { ::std::mem::zeroed() } } 1918 | } 1919 | #[repr(C)] 1920 | #[derive(Copy)] 1921 | pub struct Struct_rte_eth_pfc_conf { 1922 | pub fc: Struct_rte_eth_fc_conf, 1923 | pub priority: u8, 1924 | } 1925 | impl ::std::default::Default for Struct_rte_eth_pfc_conf { 1926 | fn default() -> Struct_rte_eth_pfc_conf { 1927 | unsafe { ::std::mem::zeroed() } 1928 | } 1929 | } 1930 | pub type Enum_rte_fdir_pballoc_type = ::libc::c_uint; 1931 | pub const RTE_FDIR_PBALLOC_64K: ::libc::c_uint = 0; 1932 | pub const RTE_FDIR_PBALLOC_128K: ::libc::c_uint = 1; 1933 | pub const RTE_FDIR_PBALLOC_256K: ::libc::c_uint = 2; 1934 | pub type Enum_rte_fdir_status_mode = ::libc::c_uint; 1935 | pub const RTE_FDIR_NO_REPORT_STATUS: ::libc::c_uint = 0; 1936 | pub const RTE_FDIR_REPORT_STATUS: ::libc::c_uint = 1; 1937 | pub const RTE_FDIR_REPORT_STATUS_ALWAYS: ::libc::c_uint = 2; 1938 | #[repr(C)] 1939 | #[derive(Copy)] 1940 | pub struct Struct_rte_fdir_conf { 1941 | pub mode: Enum_rte_fdir_mode, 1942 | pub pballoc: Enum_rte_fdir_pballoc_type, 1943 | pub status: Enum_rte_fdir_status_mode, 1944 | pub flexbytes_offset: u8, 1945 | pub drop_queue: u8, 1946 | pub flex_conf: Struct_rte_eth_fdir_flex_conf, 1947 | } 1948 | impl ::std::default::Default for Struct_rte_fdir_conf { 1949 | fn default() -> Struct_rte_fdir_conf { unsafe { ::std::mem::zeroed() } } 1950 | } 1951 | #[repr(C)] 1952 | #[derive(Copy)] 1953 | pub struct Struct_rte_eth_udp_tunnel { 1954 | pub udp_port: u16, 1955 | pub prot_type: u8, 1956 | } 1957 | impl ::std::default::Default for Struct_rte_eth_udp_tunnel { 1958 | fn default() -> Struct_rte_eth_udp_tunnel { 1959 | unsafe { ::std::mem::zeroed() } 1960 | } 1961 | } 1962 | pub type Enum_rte_l4type = ::libc::c_uint; 1963 | pub const RTE_FDIR_L4TYPE_NONE: ::libc::c_uint = 0; 1964 | pub const RTE_FDIR_L4TYPE_UDP: ::libc::c_uint = 1; 1965 | pub const RTE_FDIR_L4TYPE_TCP: ::libc::c_uint = 2; 1966 | pub const RTE_FDIR_L4TYPE_SCTP: ::libc::c_uint = 3; 1967 | pub type Enum_rte_iptype = ::libc::c_uint; 1968 | pub const RTE_FDIR_IPTYPE_IPV4: ::libc::c_uint = 0; 1969 | pub const RTE_FDIR_IPTYPE_IPV6: ::libc::c_uint = 1; 1970 | #[repr(C)] 1971 | #[derive(Copy)] 1972 | pub struct Struct_rte_fdir_filter { 1973 | pub flex_bytes: u16, 1974 | pub vlan_id: u16, 1975 | pub port_src: u16, 1976 | pub port_dst: u16, 1977 | pub ip_src: Union_Unnamed26, 1978 | pub ip_dst: Union_Unnamed27, 1979 | pub l4type: Enum_rte_l4type, 1980 | pub iptype: Enum_rte_iptype, 1981 | } 1982 | impl ::std::default::Default for Struct_rte_fdir_filter { 1983 | fn default() -> Struct_rte_fdir_filter { unsafe { ::std::mem::zeroed() } } 1984 | } 1985 | #[repr(C)] 1986 | #[derive(Copy)] 1987 | pub struct Union_Unnamed26 { 1988 | pub _bindgen_data_: [u32; 4us], 1989 | } 1990 | impl Union_Unnamed26 { 1991 | pub unsafe fn ipv4_addr(&mut self) -> *mut u32 { 1992 | ::std::mem::transmute(&self._bindgen_data_) 1993 | } 1994 | pub unsafe fn ipv6_addr(&mut self) -> *mut [u32; 4us] { 1995 | ::std::mem::transmute(&self._bindgen_data_) 1996 | } 1997 | } 1998 | impl ::std::default::Default for Union_Unnamed26 { 1999 | fn default() -> Union_Unnamed26 { unsafe { ::std::mem::zeroed() } } 2000 | } 2001 | #[repr(C)] 2002 | #[derive(Copy)] 2003 | pub struct Union_Unnamed27 { 2004 | pub _bindgen_data_: [u32; 4us], 2005 | } 2006 | impl Union_Unnamed27 { 2007 | pub unsafe fn ipv4_addr(&mut self) -> *mut u32 { 2008 | ::std::mem::transmute(&self._bindgen_data_) 2009 | } 2010 | pub unsafe fn ipv6_addr(&mut self) -> *mut [u32; 4us] { 2011 | ::std::mem::transmute(&self._bindgen_data_) 2012 | } 2013 | } 2014 | impl ::std::default::Default for Union_Unnamed27 { 2015 | fn default() -> Union_Unnamed27 { unsafe { ::std::mem::zeroed() } } 2016 | } 2017 | #[repr(C)] 2018 | #[derive(Copy)] 2019 | pub struct Struct_rte_fdir_masks { 2020 | pub only_ip_flow: u8, 2021 | pub vlan_id: u8, 2022 | pub vlan_prio: u8, 2023 | pub flexbytes: u8, 2024 | pub set_ipv6_mask: u8, 2025 | pub comp_ipv6_dst: u8, 2026 | pub dst_ipv4_mask: u32, 2027 | pub src_ipv4_mask: u32, 2028 | pub dst_ipv6_mask: u16, 2029 | pub src_ipv6_mask: u16, 2030 | pub src_port_mask: u16, 2031 | pub dst_port_mask: u16, 2032 | } 2033 | impl ::std::default::Default for Struct_rte_fdir_masks { 2034 | fn default() -> Struct_rte_fdir_masks { unsafe { ::std::mem::zeroed() } } 2035 | } 2036 | #[repr(C)] 2037 | #[derive(Copy)] 2038 | pub struct Struct_rte_eth_fdir { 2039 | pub collision: u16, 2040 | pub free: u16, 2041 | pub maxhash: u16, 2042 | pub maxlen: u8, 2043 | pub add: u64, 2044 | pub remove: u64, 2045 | pub f_add: u64, 2046 | pub f_remove: u64, 2047 | } 2048 | impl ::std::default::Default for Struct_rte_eth_fdir { 2049 | fn default() -> Struct_rte_eth_fdir { unsafe { ::std::mem::zeroed() } } 2050 | } 2051 | #[repr(C)] 2052 | #[derive(Copy)] 2053 | pub struct Struct_rte_intr_conf { 2054 | pub lsc: u16, 2055 | } 2056 | impl ::std::default::Default for Struct_rte_intr_conf { 2057 | fn default() -> Struct_rte_intr_conf { unsafe { ::std::mem::zeroed() } } 2058 | } 2059 | #[repr(C)] 2060 | #[derive(Copy)] 2061 | pub struct Struct_rte_eth_conf { 2062 | pub link_speed: u16, 2063 | pub link_duplex: u16, 2064 | pub rxmode: Struct_rte_eth_rxmode, 2065 | pub txmode: Struct_rte_eth_txmode, 2066 | pub lpbk_mode: u32, 2067 | pub rx_adv_conf: Struct_Unnamed28, 2068 | pub tx_adv_conf: Union_Unnamed29, 2069 | pub dcb_capability_en: u32, 2070 | pub fdir_conf: Struct_rte_fdir_conf, 2071 | pub intr_conf: Struct_rte_intr_conf, 2072 | } 2073 | impl ::std::default::Default for Struct_rte_eth_conf { 2074 | fn default() -> Struct_rte_eth_conf { unsafe { ::std::mem::zeroed() } } 2075 | } 2076 | #[repr(C)] 2077 | #[derive(Copy)] 2078 | pub struct Struct_Unnamed28 { 2079 | pub rss_conf: Struct_rte_eth_rss_conf, 2080 | pub vmdq_dcb_conf: Struct_rte_eth_vmdq_dcb_conf, 2081 | pub dcb_rx_conf: Struct_rte_eth_dcb_rx_conf, 2082 | pub vmdq_rx_conf: Struct_rte_eth_vmdq_rx_conf, 2083 | } 2084 | impl ::std::default::Default for Struct_Unnamed28 { 2085 | fn default() -> Struct_Unnamed28 { unsafe { ::std::mem::zeroed() } } 2086 | } 2087 | #[repr(C)] 2088 | #[derive(Copy)] 2089 | pub struct Union_Unnamed29 { 2090 | pub _bindgen_data_: [u32; 3us], 2091 | } 2092 | impl Union_Unnamed29 { 2093 | pub unsafe fn vmdq_dcb_tx_conf(&mut self) 2094 | -> *mut Struct_rte_eth_vmdq_dcb_tx_conf { 2095 | ::std::mem::transmute(&self._bindgen_data_) 2096 | } 2097 | pub unsafe fn dcb_tx_conf(&mut self) -> *mut Struct_rte_eth_dcb_tx_conf { 2098 | ::std::mem::transmute(&self._bindgen_data_) 2099 | } 2100 | pub unsafe fn vmdq_tx_conf(&mut self) 2101 | -> *mut Struct_rte_eth_vmdq_tx_conf { 2102 | ::std::mem::transmute(&self._bindgen_data_) 2103 | } 2104 | } 2105 | impl ::std::default::Default for Union_Unnamed29 { 2106 | fn default() -> Union_Unnamed29 { unsafe { ::std::mem::zeroed() } } 2107 | } 2108 | #[repr(C)] 2109 | #[derive(Copy)] 2110 | pub struct Struct_rte_eth_dev_info { 2111 | pub pci_dev: *mut Struct_rte_pci_device, 2112 | pub driver_name: *const ::libc::c_char, 2113 | pub if_index: ::libc::c_uint, 2114 | pub min_rx_bufsize: u32, 2115 | pub max_rx_pktlen: u32, 2116 | pub max_rx_queues: u16, 2117 | pub max_tx_queues: u16, 2118 | pub max_mac_addrs: u32, 2119 | pub max_hash_mac_addrs: u32, 2120 | pub max_vfs: u16, 2121 | pub max_vmdq_pools: u16, 2122 | pub rx_offload_capa: u32, 2123 | pub tx_offload_capa: u32, 2124 | pub reta_size: u16, 2125 | pub default_rxconf: Struct_rte_eth_rxconf, 2126 | pub default_txconf: Struct_rte_eth_txconf, 2127 | pub vmdq_queue_base: u16, 2128 | pub vmdq_queue_num: u16, 2129 | pub vmdq_pool_base: u16, 2130 | } 2131 | impl ::std::default::Default for Struct_rte_eth_dev_info { 2132 | fn default() -> Struct_rte_eth_dev_info { 2133 | unsafe { ::std::mem::zeroed() } 2134 | } 2135 | } 2136 | #[repr(C)] 2137 | #[derive(Copy)] 2138 | pub struct Struct_rte_eth_xstats { 2139 | pub name: [::libc::c_char; 64us], 2140 | pub value: u64, 2141 | } 2142 | impl ::std::default::Default for Struct_rte_eth_xstats { 2143 | fn default() -> Struct_rte_eth_xstats { unsafe { ::std::mem::zeroed() } } 2144 | } 2145 | pub enum Struct_rte_eth_dev_callback { } 2146 | #[repr(C)] 2147 | #[derive(Copy)] 2148 | pub struct Struct_rte_eth_dev_cb_list { 2149 | pub tqh_first: *mut Struct_rte_eth_dev_callback, 2150 | pub tqh_last: *mut *mut Struct_rte_eth_dev_callback, 2151 | } 2152 | impl ::std::default::Default for Struct_rte_eth_dev_cb_list { 2153 | fn default() -> Struct_rte_eth_dev_cb_list { 2154 | unsafe { ::std::mem::zeroed() } 2155 | } 2156 | } 2157 | #[repr(C)] 2158 | #[derive(Copy)] 2159 | pub struct Struct_rte_ethertype_filter { 2160 | pub ethertype: u16, 2161 | pub priority_en: u8, 2162 | pub priority: u8, 2163 | } 2164 | impl ::std::default::Default for Struct_rte_ethertype_filter { 2165 | fn default() -> Struct_rte_ethertype_filter { 2166 | unsafe { ::std::mem::zeroed() } 2167 | } 2168 | } 2169 | #[repr(C)] 2170 | #[derive(Copy)] 2171 | pub struct Struct_rte_syn_filter { 2172 | pub hig_pri: u8, 2173 | } 2174 | impl ::std::default::Default for Struct_rte_syn_filter { 2175 | fn default() -> Struct_rte_syn_filter { unsafe { ::std::mem::zeroed() } } 2176 | } 2177 | #[repr(C)] 2178 | #[derive(Copy)] 2179 | pub struct Struct_rte_2tuple_filter { 2180 | pub dst_port: u16, 2181 | pub protocol: u8, 2182 | pub tcp_flags: u8, 2183 | pub priority: u16, 2184 | pub _bindgen_bitfield_1_: u8, 2185 | pub _bindgen_bitfield_2_: u8, 2186 | } 2187 | impl ::std::default::Default for Struct_rte_2tuple_filter { 2188 | fn default() -> Struct_rte_2tuple_filter { 2189 | unsafe { ::std::mem::zeroed() } 2190 | } 2191 | } 2192 | #[repr(C)] 2193 | #[derive(Copy)] 2194 | pub struct Struct_rte_flex_filter { 2195 | pub len: u16, 2196 | pub dwords: [u32; 32us], 2197 | pub mask: [u8; 16us], 2198 | pub priority: u8, 2199 | } 2200 | impl ::std::default::Default for Struct_rte_flex_filter { 2201 | fn default() -> Struct_rte_flex_filter { unsafe { ::std::mem::zeroed() } } 2202 | } 2203 | #[repr(C)] 2204 | #[derive(Copy)] 2205 | pub struct Struct_rte_5tuple_filter { 2206 | pub dst_ip: u32, 2207 | pub src_ip: u32, 2208 | pub dst_port: u16, 2209 | pub src_port: u16, 2210 | pub protocol: u8, 2211 | pub tcp_flags: u8, 2212 | pub priority: u16, 2213 | pub _bindgen_bitfield_1_: u8, 2214 | pub _bindgen_bitfield_2_: u8, 2215 | pub _bindgen_bitfield_3_: u8, 2216 | pub _bindgen_bitfield_4_: u8, 2217 | pub _bindgen_bitfield_5_: u8, 2218 | } 2219 | impl ::std::default::Default for Struct_rte_5tuple_filter { 2220 | fn default() -> Struct_rte_5tuple_filter { 2221 | unsafe { ::std::mem::zeroed() } 2222 | } 2223 | } 2224 | pub type eth_dev_configure_t = 2225 | ::std::option::Option ::libc::c_int>; 2227 | pub type eth_dev_start_t = 2228 | ::std::option::Option ::libc::c_int>; 2230 | pub type eth_dev_stop_t = 2231 | ::std::option::Option ()>; 2232 | pub type eth_dev_set_link_up_t = 2233 | ::std::option::Option ::libc::c_int>; 2235 | pub type eth_dev_set_link_down_t = 2236 | ::std::option::Option ::libc::c_int>; 2238 | pub type eth_dev_close_t = 2239 | ::std::option::Option ()>; 2240 | pub type eth_promiscuous_enable_t = 2241 | ::std::option::Option ()>; 2242 | pub type eth_promiscuous_disable_t = 2243 | ::std::option::Option ()>; 2244 | pub type eth_allmulticast_enable_t = 2245 | ::std::option::Option ()>; 2246 | pub type eth_allmulticast_disable_t = 2247 | ::std::option::Option ()>; 2248 | pub type eth_link_update_t = 2249 | ::std::option::Option ::libc::c_int>; 2253 | pub type eth_stats_get_t = 2254 | ::std::option::Option ()>; 2257 | pub type eth_stats_reset_t = 2258 | ::std::option::Option ()>; 2259 | pub type eth_xstats_get_t = 2260 | ::std::option::Option ::libc::c_int>; 2264 | pub type eth_xstats_reset_t = 2265 | ::std::option::Option ()>; 2266 | pub type eth_queue_stats_mapping_set_t = 2267 | ::std::option::Option ::libc::c_int>; 2271 | pub type eth_dev_infos_get_t = 2272 | ::std::option::Option ()>; 2275 | pub type eth_queue_start_t = 2276 | ::std::option::Option ::libc::c_int>; 2279 | pub type eth_queue_stop_t = 2280 | ::std::option::Option ::libc::c_int>; 2283 | pub type eth_rx_queue_setup_t = 2284 | ::std::option::Option ::libc::c_int>; 2291 | pub type eth_tx_queue_setup_t = 2292 | ::std::option::Option ::libc::c_int>; 2298 | pub type eth_queue_release_t = 2299 | ::std::option::Option ()>; 2300 | pub type eth_rx_queue_count_t = 2301 | ::std::option::Option u32>; 2304 | pub type eth_rx_descriptor_done_t = 2305 | ::std::option::Option ::libc::c_int>; 2308 | pub type mtu_set_t = 2309 | ::std::option::Option ::libc::c_int>; 2312 | pub type vlan_filter_set_t = 2313 | ::std::option::Option ::libc::c_int>; 2317 | pub type vlan_tpid_set_t = 2318 | ::std::option::Option ()>; 2321 | pub type vlan_offload_set_t = 2322 | ::std::option::Option ()>; 2325 | pub type vlan_pvid_set_t = 2326 | ::std::option::Option ::libc::c_int>; 2330 | pub type vlan_strip_queue_set_t = 2331 | ::std::option::Option ()>; 2335 | pub type eth_rx_burst_t = 2336 | ::std::option::Option u16>; 2340 | pub type eth_tx_burst_t = 2341 | ::std::option::Option u16>; 2345 | pub type fdir_add_signature_filter_t = 2346 | ::std::option::Option ::libc::c_int>; 2350 | pub type fdir_update_signature_filter_t = 2351 | ::std::option::Option ::libc::c_int>; 2355 | pub type fdir_remove_signature_filter_t = 2356 | ::std::option::Option ::libc::c_int>; 2360 | pub type fdir_infos_get_t = 2361 | ::std::option::Option ()>; 2364 | pub type fdir_add_perfect_filter_t = 2365 | ::std::option::Option ::libc::c_int>; 2370 | pub type fdir_update_perfect_filter_t = 2371 | ::std::option::Option ::libc::c_int>; 2376 | pub type fdir_remove_perfect_filter_t = 2377 | ::std::option::Option ::libc::c_int>; 2381 | pub type fdir_set_masks_t = 2382 | ::std::option::Option ::libc::c_int>; 2386 | pub type flow_ctrl_get_t = 2387 | ::std::option::Option ::libc::c_int>; 2391 | pub type flow_ctrl_set_t = 2392 | ::std::option::Option ::libc::c_int>; 2396 | pub type priority_flow_ctrl_set_t = 2397 | ::std::option::Option ::libc::c_int>; 2401 | pub type reta_update_t = 2402 | ::std::option::Option ::libc::c_int>; 2407 | pub type reta_query_t = 2408 | ::std::option::Option ::libc::c_int>; 2413 | pub type rss_hash_update_t = 2414 | ::std::option::Option ::libc::c_int>; 2418 | pub type rss_hash_conf_get_t = 2419 | ::std::option::Option ::libc::c_int>; 2423 | pub type eth_dev_led_on_t = 2424 | ::std::option::Option ::libc::c_int>; 2426 | pub type eth_dev_led_off_t = 2427 | ::std::option::Option ::libc::c_int>; 2429 | pub type eth_mac_addr_remove_t = 2430 | ::std::option::Option ()>; 2433 | pub type eth_mac_addr_add_t = 2434 | ::std::option::Option ()>; 2438 | pub type eth_uc_hash_table_set_t = 2439 | ::std::option::Option ::libc::c_int>; 2443 | pub type eth_uc_all_hash_table_set_t = 2444 | ::std::option::Option ::libc::c_int>; 2447 | pub type eth_set_vf_rx_mode_t = 2448 | ::std::option::Option ::libc::c_int>; 2452 | pub type eth_set_vf_rx_t = 2453 | ::std::option::Option ::libc::c_int>; 2456 | pub type eth_set_vf_tx_t = 2457 | ::std::option::Option ::libc::c_int>; 2460 | pub type eth_set_vf_vlan_filter_t = 2461 | ::std::option::Option ::libc::c_int>; 2465 | pub type eth_set_queue_rate_limit_t = 2466 | ::std::option::Option ::libc::c_int>; 2470 | pub type eth_set_vf_rate_limit_t = 2471 | ::std::option::Option ::libc::c_int>; 2475 | pub type eth_mirror_rule_set_t = 2476 | ::std::option::Option ::libc::c_int>; 2482 | pub type eth_mirror_rule_reset_t = 2483 | ::std::option::Option ::libc::c_int>; 2486 | pub type eth_udp_tunnel_add_t = 2487 | ::std::option::Option ::libc::c_int>; 2491 | pub type eth_udp_tunnel_del_t = 2492 | ::std::option::Option ::libc::c_int>; 2496 | pub type eth_add_syn_filter_t = 2497 | ::std::option::Option ::libc::c_int>; 2501 | pub type eth_remove_syn_filter_t = 2502 | ::std::option::Option ::libc::c_int>; 2504 | pub type eth_get_syn_filter_t = 2505 | ::std::option::Option ::libc::c_int>; 2509 | pub type eth_add_ethertype_filter_t = 2510 | ::std::option::Option ::libc::c_int>; 2514 | pub type eth_remove_ethertype_filter_t = 2515 | ::std::option::Option ::libc::c_int>; 2518 | pub type eth_get_ethertype_filter_t = 2519 | ::std::option::Option ::libc::c_int>; 2523 | pub type eth_add_2tuple_filter_t = 2524 | ::std::option::Option ::libc::c_int>; 2528 | pub type eth_remove_2tuple_filter_t = 2529 | ::std::option::Option ::libc::c_int>; 2532 | pub type eth_get_2tuple_filter_t = 2533 | ::std::option::Option ::libc::c_int>; 2537 | pub type eth_add_5tuple_filter_t = 2538 | ::std::option::Option ::libc::c_int>; 2542 | pub type eth_remove_5tuple_filter_t = 2543 | ::std::option::Option ::libc::c_int>; 2546 | pub type eth_get_5tuple_filter_t = 2547 | ::std::option::Option ::libc::c_int>; 2551 | pub type eth_add_flex_filter_t = 2552 | ::std::option::Option ::libc::c_int>; 2556 | pub type eth_remove_flex_filter_t = 2557 | ::std::option::Option ::libc::c_int>; 2560 | pub type eth_get_flex_filter_t = 2561 | ::std::option::Option ::libc::c_int>; 2565 | pub type eth_filter_ctrl_t = 2566 | ::std::option::Option ::libc::c_int>; 2571 | #[repr(C)] 2572 | #[derive(Copy)] 2573 | pub struct Struct_eth_dev_ops { 2574 | pub dev_configure: eth_dev_configure_t, 2575 | pub dev_start: eth_dev_start_t, 2576 | pub dev_stop: eth_dev_stop_t, 2577 | pub dev_set_link_up: eth_dev_set_link_up_t, 2578 | pub dev_set_link_down: eth_dev_set_link_down_t, 2579 | pub dev_close: eth_dev_close_t, 2580 | pub promiscuous_enable: eth_promiscuous_enable_t, 2581 | pub promiscuous_disable: eth_promiscuous_disable_t, 2582 | pub allmulticast_enable: eth_allmulticast_enable_t, 2583 | pub allmulticast_disable: eth_allmulticast_disable_t, 2584 | pub link_update: eth_link_update_t, 2585 | pub stats_get: eth_stats_get_t, 2586 | pub stats_reset: eth_stats_reset_t, 2587 | pub xstats_get: eth_xstats_get_t, 2588 | pub xstats_reset: eth_xstats_reset_t, 2589 | pub queue_stats_mapping_set: eth_queue_stats_mapping_set_t, 2590 | pub dev_infos_get: eth_dev_infos_get_t, 2591 | pub mtu_set: mtu_set_t, 2592 | pub vlan_filter_set: vlan_filter_set_t, 2593 | pub vlan_tpid_set: vlan_tpid_set_t, 2594 | pub vlan_strip_queue_set: vlan_strip_queue_set_t, 2595 | pub vlan_offload_set: vlan_offload_set_t, 2596 | pub vlan_pvid_set: vlan_pvid_set_t, 2597 | pub rx_queue_start: eth_queue_start_t, 2598 | pub rx_queue_stop: eth_queue_stop_t, 2599 | pub tx_queue_start: eth_queue_start_t, 2600 | pub tx_queue_stop: eth_queue_stop_t, 2601 | pub rx_queue_setup: eth_rx_queue_setup_t, 2602 | pub rx_queue_release: eth_queue_release_t, 2603 | pub rx_queue_count: eth_rx_queue_count_t, 2604 | pub rx_descriptor_done: eth_rx_descriptor_done_t, 2605 | pub tx_queue_setup: eth_tx_queue_setup_t, 2606 | pub tx_queue_release: eth_queue_release_t, 2607 | pub dev_led_on: eth_dev_led_on_t, 2608 | pub dev_led_off: eth_dev_led_off_t, 2609 | pub flow_ctrl_get: flow_ctrl_get_t, 2610 | pub flow_ctrl_set: flow_ctrl_set_t, 2611 | pub priority_flow_ctrl_set: priority_flow_ctrl_set_t, 2612 | pub mac_addr_remove: eth_mac_addr_remove_t, 2613 | pub mac_addr_add: eth_mac_addr_add_t, 2614 | pub uc_hash_table_set: eth_uc_hash_table_set_t, 2615 | pub uc_all_hash_table_set: eth_uc_all_hash_table_set_t, 2616 | pub mirror_rule_set: eth_mirror_rule_set_t, 2617 | pub mirror_rule_reset: eth_mirror_rule_reset_t, 2618 | pub set_vf_rx_mode: eth_set_vf_rx_mode_t, 2619 | pub set_vf_rx: eth_set_vf_rx_t, 2620 | pub set_vf_tx: eth_set_vf_tx_t, 2621 | pub set_vf_vlan_filter: eth_set_vf_vlan_filter_t, 2622 | pub udp_tunnel_add: eth_udp_tunnel_add_t, 2623 | pub udp_tunnel_del: eth_udp_tunnel_del_t, 2624 | pub set_queue_rate_limit: eth_set_queue_rate_limit_t, 2625 | pub set_vf_rate_limit: eth_set_vf_rate_limit_t, 2626 | pub fdir_add_signature_filter: fdir_add_signature_filter_t, 2627 | pub fdir_update_signature_filter: fdir_update_signature_filter_t, 2628 | pub fdir_remove_signature_filter: fdir_remove_signature_filter_t, 2629 | pub fdir_infos_get: fdir_infos_get_t, 2630 | pub fdir_add_perfect_filter: fdir_add_perfect_filter_t, 2631 | pub fdir_update_perfect_filter: fdir_update_perfect_filter_t, 2632 | pub fdir_remove_perfect_filter: fdir_remove_perfect_filter_t, 2633 | pub fdir_set_masks: fdir_set_masks_t, 2634 | pub reta_update: reta_update_t, 2635 | pub reta_query: reta_query_t, 2636 | pub rss_hash_update: rss_hash_update_t, 2637 | pub rss_hash_conf_get: rss_hash_conf_get_t, 2638 | pub add_syn_filter: eth_add_syn_filter_t, 2639 | pub remove_syn_filter: eth_remove_syn_filter_t, 2640 | pub get_syn_filter: eth_get_syn_filter_t, 2641 | pub add_ethertype_filter: eth_add_ethertype_filter_t, 2642 | pub remove_ethertype_filter: eth_remove_ethertype_filter_t, 2643 | pub get_ethertype_filter: eth_get_ethertype_filter_t, 2644 | pub add_2tuple_filter: eth_add_2tuple_filter_t, 2645 | pub remove_2tuple_filter: eth_remove_2tuple_filter_t, 2646 | pub get_2tuple_filter: eth_get_2tuple_filter_t, 2647 | pub add_5tuple_filter: eth_add_5tuple_filter_t, 2648 | pub remove_5tuple_filter: eth_remove_5tuple_filter_t, 2649 | pub get_5tuple_filter: eth_get_5tuple_filter_t, 2650 | pub add_flex_filter: eth_add_flex_filter_t, 2651 | pub remove_flex_filter: eth_remove_flex_filter_t, 2652 | pub get_flex_filter: eth_get_flex_filter_t, 2653 | pub filter_ctrl: eth_filter_ctrl_t, 2654 | } 2655 | impl ::std::default::Default for Struct_eth_dev_ops { 2656 | fn default() -> Struct_eth_dev_ops { unsafe { ::std::mem::zeroed() } } 2657 | } 2658 | #[repr(C)] 2659 | #[derive(Copy)] 2660 | pub struct Struct_rte_eth_dev { 2661 | pub rx_pkt_burst: eth_rx_burst_t, 2662 | pub tx_pkt_burst: eth_tx_burst_t, 2663 | pub data: *mut Struct_rte_eth_dev_data, 2664 | pub driver: *const Struct_eth_driver, 2665 | pub dev_ops: *mut Struct_eth_dev_ops, 2666 | pub pci_dev: *mut Struct_rte_pci_device, 2667 | pub callbacks: Struct_rte_eth_dev_cb_list, 2668 | } 2669 | impl ::std::default::Default for Struct_rte_eth_dev { 2670 | fn default() -> Struct_rte_eth_dev { unsafe { ::std::mem::zeroed() } } 2671 | } 2672 | #[repr(C)] 2673 | #[derive(Copy)] 2674 | pub struct Struct_rte_eth_dev_sriov { 2675 | pub active: u8, 2676 | pub nb_q_per_pool: u8, 2677 | pub def_vmdq_idx: u16, 2678 | pub def_pool_q_idx: u16, 2679 | } 2680 | impl ::std::default::Default for Struct_rte_eth_dev_sriov { 2681 | fn default() -> Struct_rte_eth_dev_sriov { 2682 | unsafe { ::std::mem::zeroed() } 2683 | } 2684 | } 2685 | #[repr(C)] 2686 | #[derive(Copy)] 2687 | pub struct Struct_rte_eth_dev_data { 2688 | pub name: [::libc::c_char; 32us], 2689 | pub rx_queues: *mut *mut ::libc::c_void, 2690 | pub tx_queues: *mut *mut ::libc::c_void, 2691 | pub nb_rx_queues: u16, 2692 | pub nb_tx_queues: u16, 2693 | pub sriov: Struct_rte_eth_dev_sriov, 2694 | pub dev_private: *mut ::libc::c_void, 2695 | pub dev_link: Struct_rte_eth_link, 2696 | pub dev_conf: Struct_rte_eth_conf, 2697 | pub mtu: u16, 2698 | pub min_rx_buf_size: u32, 2699 | pub rx_mbuf_alloc_failed: u64, 2700 | pub mac_addrs: *mut Struct_ether_addr, 2701 | pub mac_pool_sel: [u64; 128us], 2702 | pub hash_mac_addrs: *mut Struct_ether_addr, 2703 | pub port_id: u8, 2704 | pub _bindgen_bitfield_1_: u8, 2705 | pub _bindgen_bitfield_2_: u8, 2706 | pub _bindgen_bitfield_3_: u8, 2707 | pub _bindgen_bitfield_4_: u8, 2708 | } 2709 | impl ::std::default::Default for Struct_rte_eth_dev_data { 2710 | fn default() -> Struct_rte_eth_dev_data { 2711 | unsafe { ::std::mem::zeroed() } 2712 | } 2713 | } 2714 | pub type eth_dev_init_t = 2715 | ::std::option::Option ::libc::c_int>; 2719 | #[repr(C)] 2720 | #[derive(Copy)] 2721 | pub struct Struct_eth_driver { 2722 | pub pci_drv: Struct_rte_pci_driver, 2723 | pub eth_dev_init: eth_dev_init_t, 2724 | pub dev_private_size: ::libc::c_uint, 2725 | } 2726 | impl ::std::default::Default for Struct_eth_driver { 2727 | fn default() -> Struct_eth_driver { unsafe { ::std::mem::zeroed() } } 2728 | } 2729 | pub type Enum_rte_eth_event_type = ::libc::c_uint; 2730 | pub const RTE_ETH_EVENT_UNKNOWN: ::libc::c_uint = 0; 2731 | pub const RTE_ETH_EVENT_INTR_LSC: ::libc::c_uint = 1; 2732 | pub const RTE_ETH_EVENT_MAX: ::libc::c_uint = 2; 2733 | pub type rte_eth_dev_cb_fn = 2734 | ::std::option::Option ()>; 2738 | pub type rte_fbk_hash_fn = 2739 | ::std::option::Option u32>; 2741 | #[repr(C)] 2742 | #[derive(Copy)] 2743 | pub struct Struct_rte_fbk_hash_params { 2744 | pub name: *const ::libc::c_char, 2745 | pub entries: u32, 2746 | pub entries_per_bucket: u32, 2747 | pub socket_id: ::libc::c_int, 2748 | pub hash_func: rte_fbk_hash_fn, 2749 | pub init_val: u32, 2750 | } 2751 | impl ::std::default::Default for Struct_rte_fbk_hash_params { 2752 | fn default() -> Struct_rte_fbk_hash_params { 2753 | unsafe { ::std::mem::zeroed() } 2754 | } 2755 | } 2756 | #[repr(C)] 2757 | #[derive(Copy)] 2758 | pub struct Union_rte_fbk_hash_entry { 2759 | pub _bindgen_data_: [u64; 1us], 2760 | } 2761 | impl Union_rte_fbk_hash_entry { 2762 | pub unsafe fn whole_entry(&mut self) -> *mut u64 { 2763 | ::std::mem::transmute(&self._bindgen_data_) 2764 | } 2765 | pub unsafe fn entry(&mut self) -> *mut Struct_Unnamed30 { 2766 | ::std::mem::transmute(&self._bindgen_data_) 2767 | } 2768 | } 2769 | impl ::std::default::Default for Union_rte_fbk_hash_entry { 2770 | fn default() -> Union_rte_fbk_hash_entry { 2771 | unsafe { ::std::mem::zeroed() } 2772 | } 2773 | } 2774 | #[repr(C)] 2775 | #[derive(Copy)] 2776 | pub struct Struct_Unnamed30 { 2777 | pub is_entry: u16, 2778 | pub value: u16, 2779 | pub key: u32, 2780 | } 2781 | impl ::std::default::Default for Struct_Unnamed30 { 2782 | fn default() -> Struct_Unnamed30 { unsafe { ::std::mem::zeroed() } } 2783 | } 2784 | #[repr(C)] 2785 | #[derive(Copy)] 2786 | pub struct Struct_rte_fbk_hash_table { 2787 | pub name: [::libc::c_char; 32us], 2788 | pub entries: u32, 2789 | pub entries_per_bucket: u32, 2790 | pub used_entries: u32, 2791 | pub bucket_mask: u32, 2792 | pub bucket_shift: u32, 2793 | pub hash_func: rte_fbk_hash_fn, 2794 | pub init_val: u32, 2795 | pub t: [Union_rte_fbk_hash_entry; 0us], 2796 | } 2797 | impl ::std::default::Default for Struct_rte_fbk_hash_table { 2798 | fn default() -> Struct_rte_fbk_hash_table { 2799 | unsafe { ::std::mem::zeroed() } 2800 | } 2801 | } 2802 | pub type hash_sig_t = u32; 2803 | pub type rte_hash_function = 2804 | ::std::option::Option u32>; 2807 | #[repr(C)] 2808 | #[derive(Copy)] 2809 | pub struct Struct_rte_hash_parameters { 2810 | pub name: *const ::libc::c_char, 2811 | pub entries: u32, 2812 | pub bucket_entries: u32, 2813 | pub key_len: u32, 2814 | pub hash_func: rte_hash_function, 2815 | pub hash_func_init_val: u32, 2816 | pub socket_id: ::libc::c_int, 2817 | } 2818 | impl ::std::default::Default for Struct_rte_hash_parameters { 2819 | fn default() -> Struct_rte_hash_parameters { 2820 | unsafe { ::std::mem::zeroed() } 2821 | } 2822 | } 2823 | #[repr(C)] 2824 | #[derive(Copy)] 2825 | pub struct Struct_rte_hash { 2826 | pub name: [::libc::c_char; 32us], 2827 | pub entries: u32, 2828 | pub bucket_entries: u32, 2829 | pub key_len: u32, 2830 | pub hash_func: rte_hash_function, 2831 | pub hash_func_init_val: u32, 2832 | pub num_buckets: u32, 2833 | pub bucket_bitmask: u32, 2834 | pub sig_msb: hash_sig_t, 2835 | pub sig_tbl: *mut u8, 2836 | pub sig_tbl_bucket_size: u32, 2837 | pub key_tbl: *mut u8, 2838 | pub key_tbl_key_size: u32, 2839 | } 2840 | impl ::std::default::Default for Struct_rte_hash { 2841 | fn default() -> Struct_rte_hash { unsafe { ::std::mem::zeroed() } } 2842 | } 2843 | #[repr(C)] 2844 | #[derive(Copy)] 2845 | pub struct Struct_icmp_hdr { 2846 | pub icmp_type: u8, 2847 | pub icmp_code: u8, 2848 | pub icmp_cksum: u16, 2849 | pub icmp_ident: u16, 2850 | pub icmp_seq_nb: u16, 2851 | } 2852 | impl ::std::default::Default for Struct_icmp_hdr { 2853 | fn default() -> Struct_icmp_hdr { unsafe { ::std::mem::zeroed() } } 2854 | } 2855 | #[repr(C)] 2856 | #[derive(Copy)] 2857 | pub struct Struct_ipv4_hdr { 2858 | pub version_ihl: u8, 2859 | pub type_of_service: u8, 2860 | pub total_length: u16, 2861 | pub packet_id: u16, 2862 | pub fragment_offset: u16, 2863 | pub time_to_live: u8, 2864 | pub next_proto_id: u8, 2865 | pub hdr_checksum: u16, 2866 | pub src_addr: u32, 2867 | pub dst_addr: u32, 2868 | } 2869 | impl ::std::default::Default for Struct_ipv4_hdr { 2870 | fn default() -> Struct_ipv4_hdr { unsafe { ::std::mem::zeroed() } } 2871 | } 2872 | #[repr(C)] 2873 | #[derive(Copy)] 2874 | pub struct Struct_ipv6_hdr { 2875 | pub vtc_flow: u32, 2876 | pub payload_len: u16, 2877 | pub proto: u8, 2878 | pub hop_limits: u8, 2879 | pub src_addr: [u8; 16us], 2880 | pub dst_addr: [u8; 16us], 2881 | } 2882 | impl ::std::default::Default for Struct_ipv6_hdr { 2883 | fn default() -> Struct_ipv6_hdr { unsafe { ::std::mem::zeroed() } } 2884 | } 2885 | pub type Enum_Unnamed31 = ::libc::c_uint; 2886 | pub const IP_LAST_FRAG_IDX: ::libc::c_uint = 0; 2887 | pub const IP_FIRST_FRAG_IDX: ::libc::c_uint = 1; 2888 | pub const IP_MIN_FRAG_NUM: ::libc::c_uint = 2; 2889 | pub const IP_MAX_FRAG_NUM: ::libc::c_uint = 4; 2890 | #[repr(C)] 2891 | #[derive(Copy)] 2892 | pub struct Struct_ip_frag { 2893 | pub ofs: u16, 2894 | pub len: u16, 2895 | pub mb: *mut Struct_rte_mbuf, 2896 | } 2897 | impl ::std::default::Default for Struct_ip_frag { 2898 | fn default() -> Struct_ip_frag { unsafe { ::std::mem::zeroed() } } 2899 | } 2900 | #[repr(C)] 2901 | #[derive(Copy)] 2902 | pub struct Struct_ip_frag_key { 2903 | pub src_dst: [u64; 4us], 2904 | pub id: u32, 2905 | pub key_len: u32, 2906 | } 2907 | impl ::std::default::Default for Struct_ip_frag_key { 2908 | fn default() -> Struct_ip_frag_key { unsafe { ::std::mem::zeroed() } } 2909 | } 2910 | #[repr(C)] 2911 | #[derive(Copy)] 2912 | pub struct Struct_ip_frag_pkt { 2913 | pub lru: Struct_Unnamed32, 2914 | pub key: Struct_ip_frag_key, 2915 | pub start: u64, 2916 | pub total_size: u32, 2917 | pub frag_size: u32, 2918 | pub last_idx: u32, 2919 | pub frags: [Struct_ip_frag; 4us], 2920 | } 2921 | impl ::std::default::Default for Struct_ip_frag_pkt { 2922 | fn default() -> Struct_ip_frag_pkt { unsafe { ::std::mem::zeroed() } } 2923 | } 2924 | #[repr(C)] 2925 | #[derive(Copy)] 2926 | pub struct Struct_Unnamed32 { 2927 | pub tqe_next: *mut Struct_ip_frag_pkt, 2928 | pub tqe_prev: *mut *mut Struct_ip_frag_pkt, 2929 | } 2930 | impl ::std::default::Default for Struct_Unnamed32 { 2931 | fn default() -> Struct_Unnamed32 { unsafe { ::std::mem::zeroed() } } 2932 | } 2933 | #[repr(C)] 2934 | #[derive(Copy)] 2935 | pub struct Struct_rte_ip_frag_death_row { 2936 | pub cnt: u32, 2937 | pub row: [*mut Struct_rte_mbuf; 160us], 2938 | } 2939 | impl ::std::default::Default for Struct_rte_ip_frag_death_row { 2940 | fn default() -> Struct_rte_ip_frag_death_row { 2941 | unsafe { ::std::mem::zeroed() } 2942 | } 2943 | } 2944 | #[repr(C)] 2945 | #[derive(Copy)] 2946 | pub struct Struct_ip_pkt_list { 2947 | pub tqh_first: *mut Struct_ip_frag_pkt, 2948 | pub tqh_last: *mut *mut Struct_ip_frag_pkt, 2949 | } 2950 | impl ::std::default::Default for Struct_ip_pkt_list { 2951 | fn default() -> Struct_ip_pkt_list { unsafe { ::std::mem::zeroed() } } 2952 | } 2953 | #[repr(C)] 2954 | #[derive(Copy)] 2955 | pub struct Struct_ip_frag_tbl_stat { 2956 | pub find_num: u64, 2957 | pub add_num: u64, 2958 | pub del_num: u64, 2959 | pub reuse_num: u64, 2960 | pub fail_total: u64, 2961 | pub fail_nospace: u64, 2962 | } 2963 | impl ::std::default::Default for Struct_ip_frag_tbl_stat { 2964 | fn default() -> Struct_ip_frag_tbl_stat { 2965 | unsafe { ::std::mem::zeroed() } 2966 | } 2967 | } 2968 | #[repr(C)] 2969 | #[derive(Copy)] 2970 | pub struct Struct_rte_ip_frag_tbl { 2971 | pub max_cycles: u64, 2972 | pub entry_mask: u32, 2973 | pub max_entries: u32, 2974 | pub use_entries: u32, 2975 | pub bucket_entries: u32, 2976 | pub nb_entries: u32, 2977 | pub nb_buckets: u32, 2978 | pub last: *mut Struct_ip_frag_pkt, 2979 | pub lru: Struct_ip_pkt_list, 2980 | pub stat: Struct_ip_frag_tbl_stat, 2981 | pub pkt: [Struct_ip_frag_pkt; 0us], 2982 | } 2983 | impl ::std::default::Default for Struct_rte_ip_frag_tbl { 2984 | fn default() -> Struct_rte_ip_frag_tbl { unsafe { ::std::mem::zeroed() } } 2985 | } 2986 | #[repr(C)] 2987 | #[derive(Copy)] 2988 | pub struct Struct_ipv6_extension_fragment { 2989 | pub next_header: u8, 2990 | pub reserved1: u8, 2991 | pub _bindgen_data_1_: [u16; 1us], 2992 | pub id: u32, 2993 | } 2994 | impl Struct_ipv6_extension_fragment { 2995 | pub unsafe fn frag_data(&mut self) -> *mut u16 { 2996 | ::std::mem::transmute(&self._bindgen_data_1_) 2997 | } 2998 | } 2999 | impl ::std::default::Default for Struct_ipv6_extension_fragment { 3000 | fn default() -> Struct_ipv6_extension_fragment { 3001 | unsafe { ::std::mem::zeroed() } 3002 | } 3003 | } 3004 | pub type Enum_rte_kni_req_id = ::libc::c_uint; 3005 | pub const RTE_KNI_REQ_UNKNOWN: ::libc::c_uint = 0; 3006 | pub const RTE_KNI_REQ_CHANGE_MTU: ::libc::c_uint = 1; 3007 | pub const RTE_KNI_REQ_CFG_NETWORK_IF: ::libc::c_uint = 2; 3008 | pub const RTE_KNI_REQ_MAX: ::libc::c_uint = 3; 3009 | #[repr(C)] 3010 | #[derive(Copy)] 3011 | pub struct Struct_rte_kni_request { 3012 | pub req_id: u32, 3013 | pub _bindgen_data_1_: [u32; 1us], 3014 | pub result: i32, 3015 | } 3016 | impl Struct_rte_kni_request { 3017 | pub unsafe fn new_mtu(&mut self) -> *mut u32 { 3018 | ::std::mem::transmute(&self._bindgen_data_1_) 3019 | } 3020 | pub unsafe fn if_up(&mut self) -> *mut u8 { 3021 | ::std::mem::transmute(&self._bindgen_data_1_) 3022 | } 3023 | } 3024 | impl ::std::default::Default for Struct_rte_kni_request { 3025 | fn default() -> Struct_rte_kni_request { unsafe { ::std::mem::zeroed() } } 3026 | } 3027 | #[repr(C)] 3028 | #[derive(Copy)] 3029 | pub struct Struct_rte_kni_fifo { 3030 | pub write: ::libc::c_uint, 3031 | pub read: ::libc::c_uint, 3032 | pub len: ::libc::c_uint, 3033 | pub elem_size: ::libc::c_uint, 3034 | pub buffer: [*mut ::libc::c_void; 0us], 3035 | } 3036 | impl ::std::default::Default for Struct_rte_kni_fifo { 3037 | fn default() -> Struct_rte_kni_fifo { unsafe { ::std::mem::zeroed() } } 3038 | } 3039 | #[repr(C)] 3040 | #[derive(Copy)] 3041 | pub struct Struct_rte_kni_mbuf { 3042 | pub buf_addr: *mut ::libc::c_void, 3043 | pub pad0: [::libc::c_char; 10us], 3044 | pub data_off: u16, 3045 | pub pad1: [::libc::c_char; 4us], 3046 | pub ol_flags: u64, 3047 | pub pad2: [::libc::c_char; 2us], 3048 | pub data_len: u16, 3049 | pub pkt_len: u32, 3050 | pub pad3: [::libc::c_char; 8us], 3051 | pub pool: *mut ::libc::c_void, 3052 | pub next: *mut ::libc::c_void, 3053 | } 3054 | impl ::std::default::Default for Struct_rte_kni_mbuf { 3055 | fn default() -> Struct_rte_kni_mbuf { unsafe { ::std::mem::zeroed() } } 3056 | } 3057 | #[repr(C)] 3058 | #[derive(Copy)] 3059 | pub struct Struct_rte_kni_device_info { 3060 | pub name: [::libc::c_char; 32us], 3061 | pub tx_phys: phys_addr_t, 3062 | pub rx_phys: phys_addr_t, 3063 | pub alloc_phys: phys_addr_t, 3064 | pub free_phys: phys_addr_t, 3065 | pub req_phys: phys_addr_t, 3066 | pub resp_phys: phys_addr_t, 3067 | pub sync_phys: phys_addr_t, 3068 | pub sync_va: *mut ::libc::c_void, 3069 | pub mbuf_va: *mut ::libc::c_void, 3070 | pub mbuf_phys: phys_addr_t, 3071 | pub vendor_id: u16, 3072 | pub device_id: u16, 3073 | pub bus: u8, 3074 | pub devid: u8, 3075 | pub function: u8, 3076 | pub group_id: u16, 3077 | pub core_id: u32, 3078 | pub _bindgen_bitfield_1_: u8, 3079 | pub mbuf_size: ::libc::c_uint, 3080 | } 3081 | impl ::std::default::Default for Struct_rte_kni_device_info { 3082 | fn default() -> Struct_rte_kni_device_info { 3083 | unsafe { ::std::mem::zeroed() } 3084 | } 3085 | } 3086 | pub enum Struct_rte_kni { } 3087 | #[repr(C)] 3088 | #[derive(Copy)] 3089 | pub struct Struct_rte_kni_ops { 3090 | pub port_id: u8, 3091 | pub change_mtu: ::std::option::Option ::libc::c_int>, 3095 | pub config_network_if: ::std::option::Option ::libc::c_int>, 3099 | } 3100 | impl ::std::default::Default for Struct_rte_kni_ops { 3101 | fn default() -> Struct_rte_kni_ops { unsafe { ::std::mem::zeroed() } } 3102 | } 3103 | #[repr(C)] 3104 | #[derive(Copy)] 3105 | pub struct Struct_rte_kni_conf { 3106 | pub name: [::libc::c_char; 32us], 3107 | pub core_id: u32, 3108 | pub group_id: u16, 3109 | pub mbuf_size: ::libc::c_uint, 3110 | pub addr: Struct_rte_pci_addr, 3111 | pub id: Struct_rte_pci_id, 3112 | pub _bindgen_bitfield_1_: u8, 3113 | } 3114 | impl ::std::default::Default for Struct_rte_kni_conf { 3115 | fn default() -> Struct_rte_kni_conf { unsafe { ::std::mem::zeroed() } } 3116 | } 3117 | pub type arg_handler_t = 3118 | ::std::option::Option ::libc::c_int>; 3122 | #[repr(C)] 3123 | #[derive(Copy)] 3124 | pub struct Struct_rte_kvargs_pair { 3125 | pub key: *mut ::libc::c_char, 3126 | pub value: *mut ::libc::c_char, 3127 | } 3128 | impl ::std::default::Default for Struct_rte_kvargs_pair { 3129 | fn default() -> Struct_rte_kvargs_pair { unsafe { ::std::mem::zeroed() } } 3130 | } 3131 | #[repr(C)] 3132 | #[derive(Copy)] 3133 | pub struct Struct_rte_kvargs { 3134 | pub _str: *mut ::libc::c_char, 3135 | pub count: ::libc::c_uint, 3136 | pub pairs: [Struct_rte_kvargs_pair; 32us], 3137 | } 3138 | impl ::std::default::Default for Struct_rte_kvargs { 3139 | fn default() -> Struct_rte_kvargs { unsafe { ::std::mem::zeroed() } } 3140 | } 3141 | pub enum Struct_rte_lpm6 { } 3142 | #[repr(C)] 3143 | #[derive(Copy)] 3144 | pub struct Struct_rte_lpm6_config { 3145 | pub max_rules: u32, 3146 | pub number_tbl8s: u32, 3147 | pub flags: ::libc::c_int, 3148 | } 3149 | impl ::std::default::Default for Struct_rte_lpm6_config { 3150 | fn default() -> Struct_rte_lpm6_config { unsafe { ::std::mem::zeroed() } } 3151 | } 3152 | #[repr(C)] 3153 | #[derive(Copy)] 3154 | pub struct Struct_rte_lpm_tbl24_entry { 3155 | pub _bindgen_data_1_: [u8; 1us], 3156 | pub _bindgen_bitfield_1_: u8, 3157 | pub _bindgen_bitfield_2_: u8, 3158 | pub _bindgen_bitfield_3_: u8, 3159 | } 3160 | impl Struct_rte_lpm_tbl24_entry { 3161 | pub unsafe fn next_hop(&mut self) -> *mut u8 { 3162 | ::std::mem::transmute(&self._bindgen_data_1_) 3163 | } 3164 | pub unsafe fn tbl8_gindex(&mut self) -> *mut u8 { 3165 | ::std::mem::transmute(&self._bindgen_data_1_) 3166 | } 3167 | } 3168 | impl ::std::default::Default for Struct_rte_lpm_tbl24_entry { 3169 | fn default() -> Struct_rte_lpm_tbl24_entry { 3170 | unsafe { ::std::mem::zeroed() } 3171 | } 3172 | } 3173 | #[repr(C)] 3174 | #[derive(Copy)] 3175 | pub struct Struct_rte_lpm_tbl8_entry { 3176 | pub next_hop: u8, 3177 | pub _bindgen_bitfield_1_: u8, 3178 | pub _bindgen_bitfield_2_: u8, 3179 | pub _bindgen_bitfield_3_: u8, 3180 | } 3181 | impl ::std::default::Default for Struct_rte_lpm_tbl8_entry { 3182 | fn default() -> Struct_rte_lpm_tbl8_entry { 3183 | unsafe { ::std::mem::zeroed() } 3184 | } 3185 | } 3186 | #[repr(C)] 3187 | #[derive(Copy)] 3188 | pub struct Struct_rte_lpm_rule { 3189 | pub ip: u32, 3190 | pub next_hop: u8, 3191 | } 3192 | impl ::std::default::Default for Struct_rte_lpm_rule { 3193 | fn default() -> Struct_rte_lpm_rule { unsafe { ::std::mem::zeroed() } } 3194 | } 3195 | #[repr(C)] 3196 | #[derive(Copy)] 3197 | pub struct Struct_rte_lpm_rule_info { 3198 | pub used_rules: u32, 3199 | pub first_rule: u32, 3200 | } 3201 | impl ::std::default::Default for Struct_rte_lpm_rule_info { 3202 | fn default() -> Struct_rte_lpm_rule_info { 3203 | unsafe { ::std::mem::zeroed() } 3204 | } 3205 | } 3206 | #[repr(C)] 3207 | #[derive(Copy)] 3208 | pub struct Struct_rte_lpm { 3209 | pub name: [::libc::c_char; 32us], 3210 | pub mem_location: ::libc::c_int, 3211 | pub max_rules: u32, 3212 | pub rule_info: [Struct_rte_lpm_rule_info; 32us], 3213 | pub tbl24: [Struct_rte_lpm_tbl24_entry; 16777216us], 3214 | pub tbl8: [Struct_rte_lpm_tbl8_entry; 65536us], 3215 | pub rules_tbl: [Struct_rte_lpm_rule; 0us], 3216 | } 3217 | impl ::std::default::Default for Struct_rte_lpm { 3218 | fn default() -> Struct_rte_lpm { unsafe { ::std::mem::zeroed() } } 3219 | } 3220 | pub type Enum_rte_meter_color = ::libc::c_uint; 3221 | pub const e_RTE_METER_GREEN: ::libc::c_uint = 0; 3222 | pub const e_RTE_METER_YELLOW: ::libc::c_uint = 1; 3223 | pub const e_RTE_METER_RED: ::libc::c_uint = 2; 3224 | pub const e_RTE_METER_COLORS: ::libc::c_uint = 3; 3225 | #[repr(C)] 3226 | #[derive(Copy)] 3227 | pub struct Struct_rte_meter_srtcm_params { 3228 | pub cir: u64, 3229 | pub cbs: u64, 3230 | pub ebs: u64, 3231 | } 3232 | impl ::std::default::Default for Struct_rte_meter_srtcm_params { 3233 | fn default() -> Struct_rte_meter_srtcm_params { 3234 | unsafe { ::std::mem::zeroed() } 3235 | } 3236 | } 3237 | #[repr(C)] 3238 | #[derive(Copy)] 3239 | pub struct Struct_rte_meter_trtcm_params { 3240 | pub cir: u64, 3241 | pub pir: u64, 3242 | pub cbs: u64, 3243 | pub pbs: u64, 3244 | } 3245 | impl ::std::default::Default for Struct_rte_meter_trtcm_params { 3246 | fn default() -> Struct_rte_meter_trtcm_params { 3247 | unsafe { ::std::mem::zeroed() } 3248 | } 3249 | } 3250 | #[repr(C)] 3251 | #[derive(Copy)] 3252 | pub struct Struct_rte_meter_srtcm { 3253 | pub time: u64, 3254 | pub tc: u64, 3255 | pub te: u64, 3256 | pub cbs: u64, 3257 | pub ebs: u64, 3258 | pub cir_period: u64, 3259 | pub cir_bytes_per_period: u64, 3260 | } 3261 | impl ::std::default::Default for Struct_rte_meter_srtcm { 3262 | fn default() -> Struct_rte_meter_srtcm { unsafe { ::std::mem::zeroed() } } 3263 | } 3264 | #[repr(C)] 3265 | #[derive(Copy)] 3266 | pub struct Struct_rte_meter_trtcm { 3267 | pub time_tc: u64, 3268 | pub time_tp: u64, 3269 | pub tc: u64, 3270 | pub tp: u64, 3271 | pub cbs: u64, 3272 | pub pbs: u64, 3273 | pub cir_period: u64, 3274 | pub cir_bytes_per_period: u64, 3275 | pub pir_period: u64, 3276 | pub pir_bytes_per_period: u64, 3277 | } 3278 | impl ::std::default::Default for Struct_rte_meter_trtcm { 3279 | fn default() -> Struct_rte_meter_trtcm { unsafe { ::std::mem::zeroed() } } 3280 | } 3281 | pub type Enum_rte_intr_mode = ::libc::c_uint; 3282 | pub const RTE_INTR_MODE_NONE: ::libc::c_uint = 0; 3283 | pub const RTE_INTR_MODE_LEGACY: ::libc::c_uint = 1; 3284 | pub const RTE_INTR_MODE_MSI: ::libc::c_uint = 2; 3285 | pub const RTE_INTR_MODE_MSIX: ::libc::c_uint = 3; 3286 | pub type rte_port_in_op_create = 3287 | ::std::option::Option *mut ::libc::c_void>; 3291 | pub type rte_port_in_op_free = 3292 | ::std::option::Option ::libc::c_int>; 3294 | pub type rte_port_in_op_rx = 3295 | ::std::option::Option ::libc::c_int>; 3299 | #[repr(C)] 3300 | #[derive(Copy)] 3301 | pub struct Struct_rte_port_in_ops { 3302 | pub f_create: rte_port_in_op_create, 3303 | pub f_free: rte_port_in_op_free, 3304 | pub f_rx: rte_port_in_op_rx, 3305 | } 3306 | impl ::std::default::Default for Struct_rte_port_in_ops { 3307 | fn default() -> Struct_rte_port_in_ops { unsafe { ::std::mem::zeroed() } } 3308 | } 3309 | pub type rte_port_out_op_create = 3310 | ::std::option::Option *mut ::libc::c_void>; 3314 | pub type rte_port_out_op_free = 3315 | ::std::option::Option ::libc::c_int>; 3317 | pub type rte_port_out_op_tx = 3318 | ::std::option::Option ::libc::c_int>; 3321 | pub type rte_port_out_op_tx_bulk = 3322 | ::std::option::Option ::libc::c_int>; 3326 | pub type rte_port_out_op_flush = 3327 | ::std::option::Option ::libc::c_int>; 3329 | #[repr(C)] 3330 | #[derive(Copy)] 3331 | pub struct Struct_rte_port_out_ops { 3332 | pub f_create: rte_port_out_op_create, 3333 | pub f_free: rte_port_out_op_free, 3334 | pub f_tx: rte_port_out_op_tx, 3335 | pub f_tx_bulk: rte_port_out_op_tx_bulk, 3336 | pub f_flush: rte_port_out_op_flush, 3337 | } 3338 | impl ::std::default::Default for Struct_rte_port_out_ops { 3339 | fn default() -> Struct_rte_port_out_ops { 3340 | unsafe { ::std::mem::zeroed() } 3341 | } 3342 | } 3343 | pub type rte_table_op_create = 3344 | ::std::option::Option *mut ::libc::c_void>; 3348 | pub type rte_table_op_free = 3349 | ::std::option::Option ::libc::c_int>; 3351 | pub type rte_table_op_entry_add = 3352 | ::std::option::Option ::libc::c_int>; 3359 | pub type rte_table_op_entry_delete = 3360 | ::std::option::Option ::libc::c_int>; 3365 | pub type rte_table_op_lookup = 3366 | ::std::option::Option ::libc::c_int>; 3373 | #[repr(C)] 3374 | #[derive(Copy)] 3375 | pub struct Struct_rte_table_ops { 3376 | pub f_create: rte_table_op_create, 3377 | pub f_free: rte_table_op_free, 3378 | pub f_add: rte_table_op_entry_add, 3379 | pub f_delete: rte_table_op_entry_delete, 3380 | pub f_lookup: rte_table_op_lookup, 3381 | } 3382 | impl ::std::default::Default for Struct_rte_table_ops { 3383 | fn default() -> Struct_rte_table_ops { unsafe { ::std::mem::zeroed() } } 3384 | } 3385 | pub enum Struct_rte_pipeline { } 3386 | #[repr(C)] 3387 | #[derive(Copy)] 3388 | pub struct Struct_rte_pipeline_params { 3389 | pub name: *const ::libc::c_char, 3390 | pub socket_id: ::libc::c_int, 3391 | pub offset_port_id: u32, 3392 | } 3393 | impl ::std::default::Default for Struct_rte_pipeline_params { 3394 | fn default() -> Struct_rte_pipeline_params { 3395 | unsafe { ::std::mem::zeroed() } 3396 | } 3397 | } 3398 | pub type Enum_rte_pipeline_action = ::libc::c_uint; 3399 | pub const RTE_PIPELINE_ACTION_DROP: ::libc::c_uint = 0; 3400 | pub const RTE_PIPELINE_ACTION_PORT: ::libc::c_uint = 1; 3401 | pub const RTE_PIPELINE_ACTION_PORT_META: ::libc::c_uint = 2; 3402 | pub const RTE_PIPELINE_ACTION_TABLE: ::libc::c_uint = 3; 3403 | pub const RTE_PIPELINE_ACTIONS: ::libc::c_uint = 4; 3404 | #[repr(C)] 3405 | #[derive(Copy)] 3406 | pub struct Struct_rte_pipeline_table_entry { 3407 | pub action: Enum_rte_pipeline_action, 3408 | pub _bindgen_data_1_: [u32; 1us], 3409 | pub action_data: [u8; 0us], 3410 | } 3411 | impl Struct_rte_pipeline_table_entry { 3412 | pub unsafe fn port_id(&mut self) -> *mut u32 { 3413 | ::std::mem::transmute(&self._bindgen_data_1_) 3414 | } 3415 | pub unsafe fn table_id(&mut self) -> *mut u32 { 3416 | ::std::mem::transmute(&self._bindgen_data_1_) 3417 | } 3418 | } 3419 | impl ::std::default::Default for Struct_rte_pipeline_table_entry { 3420 | fn default() -> Struct_rte_pipeline_table_entry { 3421 | unsafe { ::std::mem::zeroed() } 3422 | } 3423 | } 3424 | pub type rte_pipeline_table_action_handler_hit = 3425 | ::std::option::Option ::libc::c_int>; 3431 | pub type rte_pipeline_table_action_handler_miss = 3432 | ::std::option::Option ::libc::c_int>; 3437 | #[repr(C)] 3438 | #[derive(Copy)] 3439 | pub struct Struct_rte_pipeline_table_params { 3440 | pub ops: *mut Struct_rte_table_ops, 3441 | pub arg_create: *mut ::libc::c_void, 3442 | pub f_action_hit: rte_pipeline_table_action_handler_hit, 3443 | pub f_action_miss: rte_pipeline_table_action_handler_miss, 3444 | pub arg_ah: *mut ::libc::c_void, 3445 | pub action_data_size: u32, 3446 | } 3447 | impl ::std::default::Default for Struct_rte_pipeline_table_params { 3448 | fn default() -> Struct_rte_pipeline_table_params { 3449 | unsafe { ::std::mem::zeroed() } 3450 | } 3451 | } 3452 | pub type rte_pipeline_port_in_action_handler = 3453 | ::std::option::Option ::libc::c_int>; 3457 | #[repr(C)] 3458 | #[derive(Copy)] 3459 | pub struct Struct_rte_pipeline_port_in_params { 3460 | pub ops: *mut Struct_rte_port_in_ops, 3461 | pub arg_create: *mut ::libc::c_void, 3462 | pub f_action: rte_pipeline_port_in_action_handler, 3463 | pub arg_ah: *mut ::libc::c_void, 3464 | pub burst_size: u32, 3465 | } 3466 | impl ::std::default::Default for Struct_rte_pipeline_port_in_params { 3467 | fn default() -> Struct_rte_pipeline_port_in_params { 3468 | unsafe { ::std::mem::zeroed() } 3469 | } 3470 | } 3471 | pub type rte_pipeline_port_out_action_handler = 3472 | ::std::option::Option ::libc::c_int>; 3476 | pub type rte_pipeline_port_out_action_handler_bulk = 3477 | ::std::option::Option ::libc::c_int>; 3481 | #[repr(C)] 3482 | #[derive(Copy)] 3483 | pub struct Struct_rte_pipeline_port_out_params { 3484 | pub ops: *mut Struct_rte_port_out_ops, 3485 | pub arg_create: *mut ::libc::c_void, 3486 | pub f_action: rte_pipeline_port_out_action_handler, 3487 | pub f_action_bulk: rte_pipeline_port_out_action_handler_bulk, 3488 | pub arg_ah: *mut ::libc::c_void, 3489 | } 3490 | impl ::std::default::Default for Struct_rte_pipeline_port_out_params { 3491 | fn default() -> Struct_rte_pipeline_port_out_params { 3492 | unsafe { ::std::mem::zeroed() } 3493 | } 3494 | } 3495 | #[repr(C)] 3496 | #[derive(Copy)] 3497 | pub struct Struct_rte_port_ethdev_reader_params { 3498 | pub port_id: u8, 3499 | pub queue_id: u16, 3500 | } 3501 | impl ::std::default::Default for Struct_rte_port_ethdev_reader_params { 3502 | fn default() -> Struct_rte_port_ethdev_reader_params { 3503 | unsafe { ::std::mem::zeroed() } 3504 | } 3505 | } 3506 | #[repr(C)] 3507 | #[derive(Copy)] 3508 | pub struct Struct_rte_port_ethdev_writer_params { 3509 | pub port_id: u8, 3510 | pub queue_id: u16, 3511 | pub tx_burst_sz: u32, 3512 | } 3513 | impl ::std::default::Default for Struct_rte_port_ethdev_writer_params { 3514 | fn default() -> Struct_rte_port_ethdev_writer_params { 3515 | unsafe { ::std::mem::zeroed() } 3516 | } 3517 | } 3518 | #[repr(C)] 3519 | #[derive(Copy)] 3520 | pub struct Struct_rte_port_ring_reader_ipv4_frag_params { 3521 | pub ring: *mut Struct_rte_ring, 3522 | pub mtu: u32, 3523 | pub metadata_size: u32, 3524 | pub pool_direct: *mut Struct_rte_mempool, 3525 | pub pool_indirect: *mut Struct_rte_mempool, 3526 | } 3527 | impl ::std::default::Default for Struct_rte_port_ring_reader_ipv4_frag_params 3528 | { 3529 | fn default() -> Struct_rte_port_ring_reader_ipv4_frag_params { 3530 | unsafe { ::std::mem::zeroed() } 3531 | } 3532 | } 3533 | #[repr(C)] 3534 | #[derive(Copy)] 3535 | pub struct Struct_rte_port_ring_writer_ipv4_ras_params { 3536 | pub ring: *mut Struct_rte_ring, 3537 | pub tx_burst_sz: u32, 3538 | } 3539 | impl ::std::default::Default for Struct_rte_port_ring_writer_ipv4_ras_params { 3540 | fn default() -> Struct_rte_port_ring_writer_ipv4_ras_params { 3541 | unsafe { ::std::mem::zeroed() } 3542 | } 3543 | } 3544 | #[repr(C)] 3545 | #[derive(Copy)] 3546 | pub struct Struct_rte_port_ring_reader_params { 3547 | pub ring: *mut Struct_rte_ring, 3548 | } 3549 | impl ::std::default::Default for Struct_rte_port_ring_reader_params { 3550 | fn default() -> Struct_rte_port_ring_reader_params { 3551 | unsafe { ::std::mem::zeroed() } 3552 | } 3553 | } 3554 | #[repr(C)] 3555 | #[derive(Copy)] 3556 | pub struct Struct_rte_port_ring_writer_params { 3557 | pub ring: *mut Struct_rte_ring, 3558 | pub tx_burst_sz: u32, 3559 | } 3560 | impl ::std::default::Default for Struct_rte_port_ring_writer_params { 3561 | fn default() -> Struct_rte_port_ring_writer_params { 3562 | unsafe { ::std::mem::zeroed() } 3563 | } 3564 | } 3565 | #[repr(C)] 3566 | #[derive(Copy)] 3567 | pub struct Struct_rte_sched_subport_params { 3568 | pub tb_rate: u32, 3569 | pub tb_size: u32, 3570 | pub tc_rate: [u32; 4us], 3571 | pub tc_period: u32, 3572 | } 3573 | impl ::std::default::Default for Struct_rte_sched_subport_params { 3574 | fn default() -> Struct_rte_sched_subport_params { 3575 | unsafe { ::std::mem::zeroed() } 3576 | } 3577 | } 3578 | #[repr(C)] 3579 | #[derive(Copy)] 3580 | pub struct Struct_rte_sched_subport_stats { 3581 | pub n_pkts_tc: [u32; 4us], 3582 | pub n_pkts_tc_dropped: [u32; 4us], 3583 | pub n_bytes_tc: [u32; 4us], 3584 | pub n_bytes_tc_dropped: [u32; 4us], 3585 | } 3586 | impl ::std::default::Default for Struct_rte_sched_subport_stats { 3587 | fn default() -> Struct_rte_sched_subport_stats { 3588 | unsafe { ::std::mem::zeroed() } 3589 | } 3590 | } 3591 | #[repr(C)] 3592 | #[derive(Copy)] 3593 | pub struct Struct_rte_sched_pipe_params { 3594 | pub tb_rate: u32, 3595 | pub tb_size: u32, 3596 | pub tc_rate: [u32; 4us], 3597 | pub tc_period: u32, 3598 | pub wrr_weights: [u8; 16us], 3599 | } 3600 | impl ::std::default::Default for Struct_rte_sched_pipe_params { 3601 | fn default() -> Struct_rte_sched_pipe_params { 3602 | unsafe { ::std::mem::zeroed() } 3603 | } 3604 | } 3605 | #[repr(C)] 3606 | #[derive(Copy)] 3607 | pub struct Struct_rte_sched_queue_stats { 3608 | pub n_pkts: u32, 3609 | pub n_pkts_dropped: u32, 3610 | pub n_bytes: u32, 3611 | pub n_bytes_dropped: u32, 3612 | } 3613 | impl ::std::default::Default for Struct_rte_sched_queue_stats { 3614 | fn default() -> Struct_rte_sched_queue_stats { 3615 | unsafe { ::std::mem::zeroed() } 3616 | } 3617 | } 3618 | #[repr(C)] 3619 | #[derive(Copy)] 3620 | pub struct Struct_rte_sched_port_params { 3621 | pub name: *const ::libc::c_char, 3622 | pub socket: ::libc::c_int, 3623 | pub rate: u32, 3624 | pub mtu: u32, 3625 | pub frame_overhead: u32, 3626 | pub n_subports_per_port: u32, 3627 | pub n_pipes_per_subport: u32, 3628 | pub qsize: [u16; 4us], 3629 | pub pipe_profiles: *mut Struct_rte_sched_pipe_params, 3630 | pub n_pipe_profiles: u32, 3631 | } 3632 | impl ::std::default::Default for Struct_rte_sched_port_params { 3633 | fn default() -> Struct_rte_sched_port_params { 3634 | unsafe { ::std::mem::zeroed() } 3635 | } 3636 | } 3637 | #[repr(C)] 3638 | #[derive(Copy)] 3639 | pub struct Struct_rte_sched_port_hierarchy { 3640 | pub _bindgen_bitfield_1_: u32, 3641 | pub _bindgen_bitfield_2_: u32, 3642 | pub _bindgen_bitfield_3_: u32, 3643 | pub _bindgen_bitfield_4_: u32, 3644 | pub _bindgen_bitfield_5_: u32, 3645 | } 3646 | impl ::std::default::Default for Struct_rte_sched_port_hierarchy { 3647 | fn default() -> Struct_rte_sched_port_hierarchy { 3648 | unsafe { ::std::mem::zeroed() } 3649 | } 3650 | } 3651 | pub enum Struct_rte_sched_port { } 3652 | #[repr(C)] 3653 | #[derive(Copy)] 3654 | pub struct Struct_rte_port_sched_reader_params { 3655 | pub sched: *mut Struct_rte_sched_port, 3656 | } 3657 | impl ::std::default::Default for Struct_rte_port_sched_reader_params { 3658 | fn default() -> Struct_rte_port_sched_reader_params { 3659 | unsafe { ::std::mem::zeroed() } 3660 | } 3661 | } 3662 | #[repr(C)] 3663 | #[derive(Copy)] 3664 | pub struct Struct_rte_port_sched_writer_params { 3665 | pub sched: *mut Struct_rte_sched_port, 3666 | pub tx_burst_sz: u32, 3667 | } 3668 | impl ::std::default::Default for Struct_rte_port_sched_writer_params { 3669 | fn default() -> Struct_rte_port_sched_writer_params { 3670 | unsafe { ::std::mem::zeroed() } 3671 | } 3672 | } 3673 | #[repr(C)] 3674 | #[derive(Copy)] 3675 | pub struct Struct_rte_port_source_params { 3676 | pub mempool: *mut Struct_rte_mempool, 3677 | } 3678 | impl ::std::default::Default for Struct_rte_port_source_params { 3679 | fn default() -> Struct_rte_port_source_params { 3680 | unsafe { ::std::mem::zeroed() } 3681 | } 3682 | } 3683 | pub type Enum_power_management_env = ::libc::c_uint; 3684 | pub const PM_ENV_NOT_SET: ::libc::c_uint = 0; 3685 | pub const PM_ENV_ACPI_CPUFREQ: ::libc::c_uint = 1; 3686 | pub const PM_ENV_KVM_VM: ::libc::c_uint = 2; 3687 | pub type rte_power_freqs_t = 3688 | ::std::option::Option u32>; 3691 | pub type rte_power_get_freq_t = 3692 | ::std::option::Option u32>; 3694 | pub type rte_power_set_freq_t = 3695 | ::std::option::Option ::libc::c_int>; 3698 | pub type rte_power_freq_change_t = 3699 | ::std::option::Option ::libc::c_int>; 3701 | #[repr(C)] 3702 | #[derive(Copy)] 3703 | pub struct Struct_rte_red_params { 3704 | pub min_th: u16, 3705 | pub max_th: u16, 3706 | pub maxp_inv: u16, 3707 | pub wq_log2: u16, 3708 | } 3709 | impl ::std::default::Default for Struct_rte_red_params { 3710 | fn default() -> Struct_rte_red_params { unsafe { ::std::mem::zeroed() } } 3711 | } 3712 | #[repr(C)] 3713 | #[derive(Copy)] 3714 | pub struct Struct_rte_red_config { 3715 | pub min_th: u32, 3716 | pub max_th: u32, 3717 | pub pa_const: u32, 3718 | pub maxp_inv: u8, 3719 | pub wq_log2: u8, 3720 | } 3721 | impl ::std::default::Default for Struct_rte_red_config { 3722 | fn default() -> Struct_rte_red_config { unsafe { ::std::mem::zeroed() } } 3723 | } 3724 | #[repr(C)] 3725 | #[derive(Copy)] 3726 | pub struct Struct_rte_red { 3727 | pub avg: u32, 3728 | pub count: u32, 3729 | pub q_time: u64, 3730 | } 3731 | impl ::std::default::Default for Struct_rte_red { 3732 | fn default() -> Struct_rte_red { unsafe { ::std::mem::zeroed() } } 3733 | } 3734 | #[repr(C)] 3735 | #[derive(Copy)] 3736 | pub struct Struct_sctp_hdr { 3737 | pub src_port: u16, 3738 | pub dst_port: u16, 3739 | pub tag: u32, 3740 | pub cksum: u32, 3741 | } 3742 | impl ::std::default::Default for Struct_sctp_hdr { 3743 | fn default() -> Struct_sctp_hdr { unsafe { ::std::mem::zeroed() } } 3744 | } 3745 | #[repr(C)] 3746 | #[derive(Copy)] 3747 | pub struct Struct_rte_table_acl_params { 3748 | pub name: *const ::libc::c_char, 3749 | pub n_rules: u32, 3750 | pub n_rule_fields: u32, 3751 | pub field_format: [Struct_rte_acl_field_def; 64us], 3752 | } 3753 | impl ::std::default::Default for Struct_rte_table_acl_params { 3754 | fn default() -> Struct_rte_table_acl_params { 3755 | unsafe { ::std::mem::zeroed() } 3756 | } 3757 | } 3758 | #[repr(C)] 3759 | #[derive(Copy)] 3760 | pub struct Struct_rte_table_acl_rule_add_params { 3761 | pub priority: i32, 3762 | pub field_value: [Struct_rte_acl_field; 64us], 3763 | } 3764 | impl ::std::default::Default for Struct_rte_table_acl_rule_add_params { 3765 | fn default() -> Struct_rte_table_acl_rule_add_params { 3766 | unsafe { ::std::mem::zeroed() } 3767 | } 3768 | } 3769 | #[repr(C)] 3770 | #[derive(Copy)] 3771 | pub struct Struct_rte_table_acl_rule_delete_params { 3772 | pub field_value: [Struct_rte_acl_field; 64us], 3773 | } 3774 | impl ::std::default::Default for Struct_rte_table_acl_rule_delete_params { 3775 | fn default() -> Struct_rte_table_acl_rule_delete_params { 3776 | unsafe { ::std::mem::zeroed() } 3777 | } 3778 | } 3779 | #[repr(C)] 3780 | #[derive(Copy)] 3781 | pub struct Struct_rte_table_array_params { 3782 | pub n_entries: u32, 3783 | pub offset: u32, 3784 | } 3785 | impl ::std::default::Default for Struct_rte_table_array_params { 3786 | fn default() -> Struct_rte_table_array_params { 3787 | unsafe { ::std::mem::zeroed() } 3788 | } 3789 | } 3790 | #[repr(C)] 3791 | #[derive(Copy)] 3792 | pub struct Struct_rte_table_array_key { 3793 | pub pos: u32, 3794 | } 3795 | impl ::std::default::Default for Struct_rte_table_array_key { 3796 | fn default() -> Struct_rte_table_array_key { 3797 | unsafe { ::std::mem::zeroed() } 3798 | } 3799 | } 3800 | pub type rte_table_hash_op_hash = 3801 | ::std::option::Option u64>; 3804 | #[repr(C)] 3805 | #[derive(Copy)] 3806 | pub struct Struct_rte_table_hash_ext_params { 3807 | pub key_size: u32, 3808 | pub n_keys: u32, 3809 | pub n_buckets: u32, 3810 | pub n_buckets_ext: u32, 3811 | pub f_hash: rte_table_hash_op_hash, 3812 | pub seed: u64, 3813 | pub signature_offset: u32, 3814 | pub key_offset: u32, 3815 | } 3816 | impl ::std::default::Default for Struct_rte_table_hash_ext_params { 3817 | fn default() -> Struct_rte_table_hash_ext_params { 3818 | unsafe { ::std::mem::zeroed() } 3819 | } 3820 | } 3821 | #[repr(C)] 3822 | #[derive(Copy)] 3823 | pub struct Struct_rte_table_hash_lru_params { 3824 | pub key_size: u32, 3825 | pub n_keys: u32, 3826 | pub n_buckets: u32, 3827 | pub f_hash: rte_table_hash_op_hash, 3828 | pub seed: u64, 3829 | pub signature_offset: u32, 3830 | pub key_offset: u32, 3831 | } 3832 | impl ::std::default::Default for Struct_rte_table_hash_lru_params { 3833 | fn default() -> Struct_rte_table_hash_lru_params { 3834 | unsafe { ::std::mem::zeroed() } 3835 | } 3836 | } 3837 | #[repr(C)] 3838 | #[derive(Copy)] 3839 | pub struct Struct_rte_table_hash_key8_lru_params { 3840 | pub n_entries: u32, 3841 | pub f_hash: rte_table_hash_op_hash, 3842 | pub seed: u64, 3843 | pub signature_offset: u32, 3844 | pub key_offset: u32, 3845 | } 3846 | impl ::std::default::Default for Struct_rte_table_hash_key8_lru_params { 3847 | fn default() -> Struct_rte_table_hash_key8_lru_params { 3848 | unsafe { ::std::mem::zeroed() } 3849 | } 3850 | } 3851 | #[repr(C)] 3852 | #[derive(Copy)] 3853 | pub struct Struct_rte_table_hash_key8_ext_params { 3854 | pub n_entries: u32, 3855 | pub n_entries_ext: u32, 3856 | pub f_hash: rte_table_hash_op_hash, 3857 | pub seed: u64, 3858 | pub signature_offset: u32, 3859 | pub key_offset: u32, 3860 | } 3861 | impl ::std::default::Default for Struct_rte_table_hash_key8_ext_params { 3862 | fn default() -> Struct_rte_table_hash_key8_ext_params { 3863 | unsafe { ::std::mem::zeroed() } 3864 | } 3865 | } 3866 | #[repr(C)] 3867 | #[derive(Copy)] 3868 | pub struct Struct_rte_table_hash_key16_lru_params { 3869 | pub n_entries: u32, 3870 | pub f_hash: rte_table_hash_op_hash, 3871 | pub seed: u64, 3872 | pub signature_offset: u32, 3873 | pub key_offset: u32, 3874 | } 3875 | impl ::std::default::Default for Struct_rte_table_hash_key16_lru_params { 3876 | fn default() -> Struct_rte_table_hash_key16_lru_params { 3877 | unsafe { ::std::mem::zeroed() } 3878 | } 3879 | } 3880 | #[repr(C)] 3881 | #[derive(Copy)] 3882 | pub struct Struct_rte_table_hash_key16_ext_params { 3883 | pub n_entries: u32, 3884 | pub n_entries_ext: u32, 3885 | pub f_hash: rte_table_hash_op_hash, 3886 | pub seed: u64, 3887 | pub signature_offset: u32, 3888 | pub key_offset: u32, 3889 | } 3890 | impl ::std::default::Default for Struct_rte_table_hash_key16_ext_params { 3891 | fn default() -> Struct_rte_table_hash_key16_ext_params { 3892 | unsafe { ::std::mem::zeroed() } 3893 | } 3894 | } 3895 | #[repr(C)] 3896 | #[derive(Copy)] 3897 | pub struct Struct_rte_table_hash_key32_lru_params { 3898 | pub n_entries: u32, 3899 | pub f_hash: rte_table_hash_op_hash, 3900 | pub seed: u64, 3901 | pub signature_offset: u32, 3902 | pub key_offset: u32, 3903 | } 3904 | impl ::std::default::Default for Struct_rte_table_hash_key32_lru_params { 3905 | fn default() -> Struct_rte_table_hash_key32_lru_params { 3906 | unsafe { ::std::mem::zeroed() } 3907 | } 3908 | } 3909 | #[repr(C)] 3910 | #[derive(Copy)] 3911 | pub struct Struct_rte_table_hash_key32_ext_params { 3912 | pub n_entries: u32, 3913 | pub n_entries_ext: u32, 3914 | pub f_hash: rte_table_hash_op_hash, 3915 | pub seed: u64, 3916 | pub signature_offset: u32, 3917 | pub key_offset: u32, 3918 | } 3919 | impl ::std::default::Default for Struct_rte_table_hash_key32_ext_params { 3920 | fn default() -> Struct_rte_table_hash_key32_ext_params { 3921 | unsafe { ::std::mem::zeroed() } 3922 | } 3923 | } 3924 | #[repr(C)] 3925 | #[derive(Copy)] 3926 | pub struct Struct_rte_table_lpm_params { 3927 | pub n_rules: u32, 3928 | pub entry_unique_size: u32, 3929 | pub offset: u32, 3930 | } 3931 | impl ::std::default::Default for Struct_rte_table_lpm_params { 3932 | fn default() -> Struct_rte_table_lpm_params { 3933 | unsafe { ::std::mem::zeroed() } 3934 | } 3935 | } 3936 | #[repr(C)] 3937 | #[derive(Copy)] 3938 | pub struct Struct_rte_table_lpm_key { 3939 | pub ip: u32, 3940 | pub depth: u8, 3941 | } 3942 | impl ::std::default::Default for Struct_rte_table_lpm_key { 3943 | fn default() -> Struct_rte_table_lpm_key { 3944 | unsafe { ::std::mem::zeroed() } 3945 | } 3946 | } 3947 | #[repr(C)] 3948 | #[derive(Copy)] 3949 | pub struct Struct_rte_table_lpm_ipv6_params { 3950 | pub n_rules: u32, 3951 | pub number_tbl8s: u32, 3952 | pub entry_unique_size: u32, 3953 | pub offset: u32, 3954 | } 3955 | impl ::std::default::Default for Struct_rte_table_lpm_ipv6_params { 3956 | fn default() -> Struct_rte_table_lpm_ipv6_params { 3957 | unsafe { ::std::mem::zeroed() } 3958 | } 3959 | } 3960 | #[repr(C)] 3961 | #[derive(Copy)] 3962 | pub struct Struct_rte_table_lpm_ipv6_key { 3963 | pub ip: [u8; 16us], 3964 | pub depth: u8, 3965 | } 3966 | impl ::std::default::Default for Struct_rte_table_lpm_ipv6_key { 3967 | fn default() -> Struct_rte_table_lpm_ipv6_key { 3968 | unsafe { ::std::mem::zeroed() } 3969 | } 3970 | } 3971 | #[repr(C)] 3972 | #[derive(Copy)] 3973 | pub struct Struct_tcp_hdr { 3974 | pub src_port: u16, 3975 | pub dst_port: u16, 3976 | pub sent_seq: u32, 3977 | pub recv_ack: u32, 3978 | pub data_off: u8, 3979 | pub tcp_flags: u8, 3980 | pub rx_win: u16, 3981 | pub cksum: u16, 3982 | pub tcp_urp: u16, 3983 | } 3984 | impl ::std::default::Default for Struct_tcp_hdr { 3985 | fn default() -> Struct_tcp_hdr { unsafe { ::std::mem::zeroed() } } 3986 | } 3987 | pub type Enum_rte_timer_type = ::libc::c_uint; 3988 | pub const SINGLE: ::libc::c_uint = 0; 3989 | pub const PERIODICAL: ::libc::c_uint = 1; 3990 | #[repr(C)] 3991 | #[derive(Copy)] 3992 | pub struct Union_rte_timer_status { 3993 | pub _bindgen_data_: [u32; 1us], 3994 | } 3995 | impl Union_rte_timer_status { 3996 | pub unsafe fn state(&mut self) -> *mut u16 { 3997 | ::std::mem::transmute(&self._bindgen_data_) 3998 | } 3999 | pub unsafe fn owner(&mut self) -> *mut i16 { 4000 | ::std::mem::transmute(&self._bindgen_data_) 4001 | } 4002 | pub unsafe fn u32(&mut self) -> *mut u32 { 4003 | ::std::mem::transmute(&self._bindgen_data_) 4004 | } 4005 | } 4006 | impl ::std::default::Default for Union_rte_timer_status { 4007 | fn default() -> Union_rte_timer_status { unsafe { ::std::mem::zeroed() } } 4008 | } 4009 | pub type rte_timer_cb_t = 4010 | extern "C" fn(arg1: *mut Struct_rte_timer, arg2: *mut ::libc::c_void) 4011 | -> (); 4012 | #[repr(C)] 4013 | #[derive(Copy)] 4014 | pub struct Struct_rte_timer { 4015 | pub expire: u64, 4016 | pub sl_next: [*mut Struct_rte_timer; 10us], 4017 | pub status: Union_rte_timer_status, 4018 | pub period: u64, 4019 | pub f: *mut rte_timer_cb_t, 4020 | pub arg: *mut ::libc::c_void, 4021 | } 4022 | impl ::std::default::Default for Struct_rte_timer { 4023 | fn default() -> Struct_rte_timer { unsafe { ::std::mem::zeroed() } } 4024 | } 4025 | #[repr(C)] 4026 | #[derive(Copy)] 4027 | pub struct Struct_udp_hdr { 4028 | pub src_port: u16, 4029 | pub dst_port: u16, 4030 | pub dgram_len: u16, 4031 | pub dgram_cksum: u16, 4032 | } 4033 | impl ::std::default::Default for Struct_udp_hdr { 4034 | fn default() -> Struct_udp_hdr { unsafe { ::std::mem::zeroed() } } 4035 | } 4036 | extern "C" { 4037 | pub static mut rte_logs: Struct_rte_logs; 4038 | pub static mut eal_default_log_stream: *mut ::libc::FILE; 4039 | pub static mut lcore_config: [Struct_lcore_config; 128us]; 4040 | pub static mut per_lcore__lcore_id: ::libc::c_void; 4041 | pub static mut per_lcore__rte_errno: ::libc::c_void; 4042 | pub static mut eal_timer_source: Enum_timer_source; 4043 | pub static mut rte_cycles_vmware_tsc_map: ::libc::c_int; 4044 | pub static mut pci_driver_list: Struct_pci_driver_list; 4045 | pub static mut pci_device_list: Struct_pci_device_list; 4046 | pub static mut devargs_list: Struct_rte_devargs_list; 4047 | pub static mut rte_eth_devices: *mut Struct_rte_eth_dev; 4048 | pub static mut rte_port_ethdev_reader_ops: Struct_rte_port_in_ops; 4049 | pub static mut rte_port_ethdev_writer_ops: Struct_rte_port_out_ops; 4050 | pub static mut rte_port_ring_reader_ipv4_frag_ops: Struct_rte_port_in_ops; 4051 | pub static mut rte_port_ring_writer_ipv4_ras_ops: Struct_rte_port_out_ops; 4052 | pub static mut rte_port_ring_reader_ops: Struct_rte_port_in_ops; 4053 | pub static mut rte_port_ring_writer_ops: Struct_rte_port_out_ops; 4054 | pub static mut rte_port_sched_reader_ops: Struct_rte_port_in_ops; 4055 | pub static mut rte_port_sched_writer_ops: Struct_rte_port_out_ops; 4056 | pub static mut rte_port_source_ops: Struct_rte_port_in_ops; 4057 | pub static mut rte_port_sink_ops: Struct_rte_port_out_ops; 4058 | pub static mut rte_power_freqs: rte_power_freqs_t; 4059 | pub static mut rte_power_get_freq: rte_power_get_freq_t; 4060 | pub static mut rte_power_set_freq: rte_power_set_freq_t; 4061 | pub static mut rte_power_freq_up: rte_power_freq_change_t; 4062 | pub static mut rte_power_freq_down: rte_power_freq_change_t; 4063 | pub static mut rte_power_freq_max: rte_power_freq_change_t; 4064 | pub static mut rte_power_freq_min: rte_power_freq_change_t; 4065 | pub static mut rte_red_rand_val: u32; 4066 | pub static mut rte_red_rand_seed: u32; 4067 | pub static mut rte_red_log2_1_minus_Wq: [u16; 12us]; 4068 | pub static mut rte_red_pow2_frac_inv: [u16; 16us]; 4069 | pub static mut rte_table_acl_ops: Struct_rte_table_ops; 4070 | pub static mut rte_table_array_ops: Struct_rte_table_ops; 4071 | pub static mut rte_table_hash_ext_ops: Struct_rte_table_ops; 4072 | pub static mut rte_table_hash_ext_dosig_ops: Struct_rte_table_ops; 4073 | pub static mut rte_table_hash_lru_ops: Struct_rte_table_ops; 4074 | pub static mut rte_table_hash_lru_dosig_ops: Struct_rte_table_ops; 4075 | pub static mut rte_table_hash_key8_lru_ops: Struct_rte_table_ops; 4076 | pub static mut rte_table_hash_key8_lru_dosig_ops: Struct_rte_table_ops; 4077 | pub static mut rte_table_hash_key8_ext_ops: Struct_rte_table_ops; 4078 | pub static mut rte_table_hash_key8_ext_dosig_ops: Struct_rte_table_ops; 4079 | pub static mut rte_table_hash_key16_lru_ops: Struct_rte_table_ops; 4080 | pub static mut rte_table_hash_key16_ext_ops: Struct_rte_table_ops; 4081 | pub static mut rte_table_hash_key32_lru_ops: Struct_rte_table_ops; 4082 | pub static mut rte_table_hash_key32_ext_ops: Struct_rte_table_ops; 4083 | pub static mut rte_table_lpm_ops: Struct_rte_table_ops; 4084 | pub static mut rte_table_lpm_ipv6_ops: Struct_rte_table_ops; 4085 | pub static mut rte_table_stub_ops: Struct_rte_table_ops; 4086 | } 4087 | extern "C" { 4088 | pub fn rte_exit(exit_code: ::libc::c_int, 4089 | format: *const ::libc::c_char, ...) -> (); 4090 | pub fn rte_mem_lock_page(virt: *const ::libc::c_void) -> ::libc::c_int; 4091 | pub fn rte_mem_virt2phy(virt: *const ::libc::c_void) -> phys_addr_t; 4092 | pub fn rte_eal_get_physmem_layout() -> *const Struct_rte_memseg; 4093 | pub fn rte_dump_physmem_layout(f: *mut ::libc::FILE) -> (); 4094 | pub fn rte_eal_get_physmem_size() -> u64; 4095 | pub fn rte_memory_get_nchannel() -> ::libc::c_uint; 4096 | pub fn rte_memory_get_nrank() -> ::libc::c_uint; 4097 | pub fn rte_openlog_stream(f: *mut ::libc::FILE) -> ::libc::c_int; 4098 | pub fn rte_set_log_level(level: u32) -> (); 4099 | pub fn rte_get_log_level() -> u32; 4100 | pub fn rte_set_log_type(_type: u32, enable: ::libc::c_int) -> (); 4101 | pub fn rte_log_cur_msg_loglevel() -> ::libc::c_int; 4102 | pub fn rte_log_cur_msg_logtype() -> ::libc::c_int; 4103 | pub fn rte_log_set_history(enable: ::libc::c_int) -> (); 4104 | pub fn rte_log_dump_history(f: *mut ::libc::FILE) -> (); 4105 | pub fn rte_log_add_in_history(buf: *const ::libc::c_char, size: ::libc::size_t) 4106 | -> ::libc::c_int; 4107 | pub fn rte_log(level: u32, logtype: u32, 4108 | format: *const ::libc::c_char, ...) -> ::libc::c_int; 4109 | pub fn rte_vlog(level: u32, logtype: u32, 4110 | format: *const ::libc::c_char, ap: ::libc::c_void) 4111 | -> ::libc::c_int; 4112 | pub fn rte_memzone_reserve(name: *const ::libc::c_char, len: ::libc::size_t, 4113 | socket_id: ::libc::c_int, 4114 | flags: ::libc::c_uint) 4115 | -> *const Struct_rte_memzone; 4116 | pub fn rte_memzone_reserve_aligned(name: *const ::libc::c_char, 4117 | len: ::libc::size_t, socket_id: ::libc::c_int, 4118 | flags: ::libc::c_uint, 4119 | align: ::libc::c_uint) 4120 | -> *const Struct_rte_memzone; 4121 | pub fn rte_memzone_reserve_bounded(name: *const ::libc::c_char, 4122 | len: ::libc::size_t, socket_id: ::libc::c_int, 4123 | flags: ::libc::c_uint, 4124 | align: ::libc::c_uint, 4125 | bound: ::libc::c_uint) 4126 | -> *const Struct_rte_memzone; 4127 | pub fn rte_memzone_lookup(name: *const ::libc::c_char) 4128 | -> *const Struct_rte_memzone; 4129 | pub fn rte_memzone_dump(arg1: *mut ::libc::FILE) -> (); 4130 | pub fn rte_memzone_walk(func: 4131 | ::std::option::Option ()>, 4137 | arg: *mut ::libc::c_void) -> (); 4138 | pub fn rte_malloc(_type: *const ::libc::c_char, size: ::libc::size_t, 4139 | align: ::libc::c_uint) -> *mut ::libc::c_void; 4140 | pub fn rte_zmalloc(_type: *const ::libc::c_char, size: ::libc::size_t, 4141 | align: ::libc::c_uint) -> *mut ::libc::c_void; 4142 | pub fn rte_calloc(_type: *const ::libc::c_char, num: ::libc::size_t, size: ::libc::size_t, 4143 | align: ::libc::c_uint) -> *mut ::libc::c_void; 4144 | pub fn rte_realloc(ptr: *mut ::libc::c_void, size: ::libc::size_t, 4145 | align: ::libc::c_uint) -> *mut ::libc::c_void; 4146 | pub fn rte_malloc_socket(_type: *const ::libc::c_char, size: ::libc::size_t, 4147 | align: ::libc::c_uint, socket: ::libc::c_int) 4148 | -> *mut ::libc::c_void; 4149 | pub fn rte_zmalloc_socket(_type: *const ::libc::c_char, size: ::libc::size_t, 4150 | align: ::libc::c_uint, socket: ::libc::c_int) 4151 | -> *mut ::libc::c_void; 4152 | pub fn rte_calloc_socket(_type: *const ::libc::c_char, num: ::libc::size_t, 4153 | size: ::libc::size_t, align: ::libc::c_uint, 4154 | socket: ::libc::c_int) -> *mut ::libc::c_void; 4155 | pub fn rte_free(ptr: *mut ::libc::c_void) -> (); 4156 | pub fn rte_malloc_validate(ptr: *const ::libc::c_void, size: *mut ::libc::size_t) 4157 | -> ::libc::c_int; 4158 | pub fn rte_malloc_get_socket_stats(socket: ::libc::c_int, 4159 | socket_stats: 4160 | *mut Struct_rte_malloc_socket_stats) 4161 | -> ::libc::c_int; 4162 | pub fn rte_malloc_dump_stats(f: *mut ::libc::FILE, _type: *const ::libc::c_char) 4163 | -> (); 4164 | pub fn rte_malloc_set_limit(_type: *const ::libc::c_char, max: ::libc::size_t) 4165 | -> ::libc::c_int; 4166 | pub fn rte_malloc_virt2phy(addr: *const ::libc::c_void) -> phys_addr_t; 4167 | pub fn rte_eal_tailq_reserve(name: *const ::libc::c_char) 4168 | -> *mut Struct_rte_tailq_head; 4169 | pub fn rte_eal_tailq_reserve_by_idx(idx: ::libc::c_uint) 4170 | -> *mut Struct_rte_tailq_head; 4171 | pub fn rte_dump_tailq(f: *mut ::libc::FILE) -> (); 4172 | pub fn rte_eal_tailq_lookup(name: *const ::libc::c_char) 4173 | -> *mut Struct_rte_tailq_head; 4174 | pub fn rte_eal_tailq_lookup_by_idx(idx: ::libc::c_uint) 4175 | -> *mut Struct_rte_tailq_head; 4176 | pub fn rte_eal_get_configuration() -> *mut Struct_rte_config; 4177 | pub fn rte_eal_lcore_role(lcore_id: ::libc::c_uint) 4178 | -> Enum_rte_lcore_role_t; 4179 | pub fn rte_eal_process_type() -> Enum_rte_proc_type_t; 4180 | pub fn rte_eal_iopl_init() -> ::libc::c_int; 4181 | pub fn rte_eal_init(argc: ::libc::c_int, argv: *mut *mut ::libc::c_char) 4182 | -> ::libc::c_int; 4183 | pub fn rte_set_application_usage_hook(usage_func: rte_usage_hook_t) 4184 | -> rte_usage_hook_t; 4185 | pub fn rte_eal_has_hugepages() -> ::libc::c_int; 4186 | pub fn rte_eal_remote_launch(f: *mut lcore_function_t, 4187 | arg: *mut ::libc::c_void, 4188 | slave_id: ::libc::c_uint) -> ::libc::c_int; 4189 | pub fn rte_eal_mp_remote_launch(f: *mut lcore_function_t, 4190 | arg: *mut ::libc::c_void, 4191 | call_master: Enum_rte_rmt_call_master_t) 4192 | -> ::libc::c_int; 4193 | pub fn rte_eal_get_lcore_state(slave_id: ::libc::c_uint) 4194 | -> Enum_rte_lcore_state_t; 4195 | pub fn rte_eal_wait_lcore(slave_id: ::libc::c_uint) -> ::libc::c_int; 4196 | pub fn rte_eal_mp_wait_lcore() -> (); 4197 | pub fn rte_strerror(errnum: ::libc::c_int) -> *const ::libc::c_char; 4198 | pub fn rte_strsplit(string: *mut ::libc::c_char, stringlen: ::libc::c_int, 4199 | tokens: *mut *mut ::libc::c_char, 4200 | maxtokens: ::libc::c_int, delim: ::libc::c_char) 4201 | -> ::libc::c_int; 4202 | pub fn rte_cpu_check_supported() -> (); 4203 | pub fn rte_dump_stack() -> (); 4204 | pub fn rte_dump_registers() -> (); 4205 | pub fn __rte_panic(funcname: *const ::libc::c_char, 4206 | format: *const ::libc::c_char, ...) -> (); 4207 | pub fn rte_acl_create(param: *const Struct_rte_acl_param) 4208 | -> *mut Struct_rte_acl_ctx; 4209 | pub fn rte_acl_find_existing(name: *const ::libc::c_char) 4210 | -> *mut Struct_rte_acl_ctx; 4211 | pub fn rte_acl_free(ctx: *mut Struct_rte_acl_ctx) -> (); 4212 | pub fn rte_acl_add_rules(ctx: *mut Struct_rte_acl_ctx, 4213 | rules: *const Struct_rte_acl_rule, num: u32) 4214 | -> ::libc::c_int; 4215 | pub fn rte_acl_reset_rules(ctx: *mut Struct_rte_acl_ctx) -> (); 4216 | pub fn rte_acl_build(ctx: *mut Struct_rte_acl_ctx, 4217 | cfg: *const Struct_rte_acl_config) -> ::libc::c_int; 4218 | pub fn rte_acl_reset(ctx: *mut Struct_rte_acl_ctx) -> (); 4219 | pub fn rte_acl_classify(ctx: *const Struct_rte_acl_ctx, 4220 | data: *mut *const u8, results: *mut u32, 4221 | num: u32, categories: u32) 4222 | -> ::libc::c_int; 4223 | pub fn rte_acl_classify_alg(ctx: *const Struct_rte_acl_ctx, 4224 | data: *mut *const u8, 4225 | results: *mut u32, num: u32, 4226 | categories: u32, 4227 | alg: Enum_rte_acl_classify_alg) 4228 | -> ::libc::c_int; 4229 | pub fn rte_acl_set_ctx_classify(ctx: *mut Struct_rte_acl_ctx, 4230 | alg: Enum_rte_acl_classify_alg) 4231 | -> ::libc::c_int; 4232 | pub fn rte_acl_dump(ctx: *const Struct_rte_acl_ctx) -> (); 4233 | pub fn rte_acl_list_dump() -> (); 4234 | pub fn rte_acl_ipv4vlan_add_rules(ctx: *mut Struct_rte_acl_ctx, 4235 | rules: 4236 | *const Struct_rte_acl_ipv4vlan_rule, 4237 | num: u32) -> ::libc::c_int; 4238 | pub fn rte_acl_ipv4vlan_build(ctx: *mut Struct_rte_acl_ctx, 4239 | layout: *mut u32, 4240 | num_categories: u32) -> ::libc::c_int; 4241 | pub fn rte_eal_alarm_set(us: u64, cb: rte_eal_alarm_callback, 4242 | cb_arg: *mut ::libc::c_void) -> ::libc::c_int; 4243 | pub fn rte_eal_alarm_cancel(cb_fn: rte_eal_alarm_callback, 4244 | cb_arg: *mut ::libc::c_void) -> ::libc::c_int; 4245 | pub fn rte_approx(alpha: ::libc::c_double, d: ::libc::c_double, 4246 | p: *mut u32, q: *mut u32) -> ::libc::c_int; 4247 | pub fn rte_cfgfile_load(filename: *const ::libc::c_char, 4248 | flags: ::libc::c_int) -> *mut Struct_rte_cfgfile; 4249 | pub fn rte_cfgfile_num_sections(cfg: *mut Struct_rte_cfgfile, 4250 | sec_name: *const ::libc::c_char, 4251 | length: ::libc::size_t) -> ::libc::c_int; 4252 | pub fn rte_cfgfile_sections(cfg: *mut Struct_rte_cfgfile, 4253 | sections: *mut *mut ::libc::c_char, 4254 | max_sections: ::libc::c_int) -> ::libc::c_int; 4255 | pub fn rte_cfgfile_has_section(cfg: *mut Struct_rte_cfgfile, 4256 | sectionname: *const ::libc::c_char) 4257 | -> ::libc::c_int; 4258 | pub fn rte_cfgfile_section_num_entries(cfg: *mut Struct_rte_cfgfile, 4259 | sectionname: *const ::libc::c_char) 4260 | -> ::libc::c_int; 4261 | pub fn rte_cfgfile_section_entries(cfg: *mut Struct_rte_cfgfile, 4262 | sectionname: *const ::libc::c_char, 4263 | entries: *mut Struct_rte_cfgfile_entry, 4264 | max_entries: ::libc::c_int) 4265 | -> ::libc::c_int; 4266 | pub fn rte_cfgfile_get_entry(cfg: *mut Struct_rte_cfgfile, 4267 | sectionname: *const ::libc::c_char, 4268 | entryname: *const ::libc::c_char) 4269 | -> *const ::libc::c_char; 4270 | pub fn rte_cfgfile_has_entry(cfg: *mut Struct_rte_cfgfile, 4271 | sectionname: *const ::libc::c_char, 4272 | entryname: *const ::libc::c_char) 4273 | -> ::libc::c_int; 4274 | pub fn rte_cfgfile_close(cfg: *mut Struct_rte_cfgfile) -> ::libc::c_int; 4275 | pub fn rte_get_tsc_hz() -> u64; 4276 | pub fn rte_delay_us(us: ::libc::c_uint) -> (); 4277 | pub fn rte_intr_callback_register(intr_handle: 4278 | *mut Struct_rte_intr_handle, 4279 | cb: rte_intr_callback_fn, 4280 | cb_arg: *mut ::libc::c_void) 4281 | -> ::libc::c_int; 4282 | pub fn rte_intr_callback_unregister(intr_handle: 4283 | *mut Struct_rte_intr_handle, 4284 | cb: rte_intr_callback_fn, 4285 | cb_arg: *mut ::libc::c_void) 4286 | -> ::libc::c_int; 4287 | pub fn rte_intr_enable(intr_handle: *mut Struct_rte_intr_handle) 4288 | -> ::libc::c_int; 4289 | pub fn rte_intr_disable(intr_handle: *mut Struct_rte_intr_handle) 4290 | -> ::libc::c_int; 4291 | pub fn rte_eal_pci_probe() -> ::libc::c_int; 4292 | pub fn rte_eal_pci_dump(f: *mut ::libc::FILE) -> (); 4293 | pub fn rte_eal_pci_register(driver: *mut Struct_rte_pci_driver) -> (); 4294 | pub fn rte_eal_pci_unregister(driver: *mut Struct_rte_pci_driver) -> (); 4295 | pub fn rte_eal_devargs_add(devtype: Enum_rte_devtype, 4296 | devargs_str: *const ::libc::c_char) 4297 | -> ::libc::c_int; 4298 | pub fn rte_eal_devargs_type_count(devtype: Enum_rte_devtype) 4299 | -> ::libc::c_uint; 4300 | pub fn rte_eal_devargs_dump(f: *mut ::libc::FILE) -> (); 4301 | pub fn rte_eal_driver_register(driver: *mut Struct_rte_driver) -> (); 4302 | pub fn rte_eal_driver_unregister(driver: *mut Struct_rte_driver) -> (); 4303 | pub fn rte_eal_dev_init() -> ::libc::c_int; 4304 | pub fn rte_ring_get_memsize(count: ::libc::c_uint) -> ::libc::ssize_t; 4305 | pub fn rte_ring_init(r: *mut Struct_rte_ring, name: *const ::libc::c_char, 4306 | count: ::libc::c_uint, flags: ::libc::c_uint) 4307 | -> ::libc::c_int; 4308 | pub fn rte_ring_create(name: *const ::libc::c_char, count: ::libc::c_uint, 4309 | socket_id: ::libc::c_int, flags: ::libc::c_uint) 4310 | -> *mut Struct_rte_ring; 4311 | pub fn rte_ring_set_water_mark(r: *mut Struct_rte_ring, 4312 | count: ::libc::c_uint) -> ::libc::c_int; 4313 | pub fn rte_ring_dump(f: *mut ::libc::FILE, r: *const Struct_rte_ring) -> (); 4314 | pub fn rte_ring_list_dump(f: *mut ::libc::FILE) -> (); 4315 | pub fn rte_ring_lookup(name: *const ::libc::c_char) 4316 | -> *mut Struct_rte_ring; 4317 | pub fn rte_mempool_obj_iter(vaddr: *mut ::libc::c_void, elt_num: u32, 4318 | elt_sz: ::libc::size_t, align: ::libc::size_t, 4319 | paddr: *const phys_addr_t, pg_num: u32, 4320 | pg_shift: u32, 4321 | obj_iter: rte_mempool_obj_iter_t, 4322 | obj_iter_arg: *mut ::libc::c_void) 4323 | -> u32; 4324 | pub fn rte_mempool_create(name: *const ::libc::c_char, n: ::libc::c_uint, 4325 | elt_size: ::libc::c_uint, 4326 | cache_size: ::libc::c_uint, 4327 | private_data_size: ::libc::c_uint, 4328 | mp_init: *mut rte_mempool_ctor_t, 4329 | mp_init_arg: *mut ::libc::c_void, 4330 | obj_init: *mut rte_mempool_obj_ctor_t, 4331 | obj_init_arg: *mut ::libc::c_void, 4332 | socket_id: ::libc::c_int, flags: ::libc::c_uint) 4333 | -> *mut Struct_rte_mempool; 4334 | pub fn rte_mempool_xmem_create(name: *const ::libc::c_char, 4335 | n: ::libc::c_uint, 4336 | elt_size: ::libc::c_uint, 4337 | cache_size: ::libc::c_uint, 4338 | private_data_size: ::libc::c_uint, 4339 | mp_init: *mut rte_mempool_ctor_t, 4340 | mp_init_arg: *mut ::libc::c_void, 4341 | obj_init: *mut rte_mempool_obj_ctor_t, 4342 | obj_init_arg: *mut ::libc::c_void, 4343 | socket_id: ::libc::c_int, 4344 | flags: ::libc::c_uint, 4345 | vaddr: *mut ::libc::c_void, 4346 | paddr: *const phys_addr_t, 4347 | pg_num: u32, pg_shift: u32) 4348 | -> *mut Struct_rte_mempool; 4349 | pub fn rte_mempool_dump(f: *mut ::libc::FILE, mp: *const Struct_rte_mempool) 4350 | -> (); 4351 | pub fn rte_mempool_count(mp: *const Struct_rte_mempool) -> ::libc::c_uint; 4352 | pub fn rte_mempool_audit(mp: *const Struct_rte_mempool) -> (); 4353 | pub fn rte_mempool_list_dump(f: *mut ::libc::FILE) -> (); 4354 | pub fn rte_mempool_lookup(name: *const ::libc::c_char) 4355 | -> *mut Struct_rte_mempool; 4356 | pub fn rte_mempool_calc_obj_size(elt_size: u32, flags: u32, 4357 | sz: *mut Struct_rte_mempool_objsz) 4358 | -> u32; 4359 | pub fn rte_mempool_xmem_size(elt_num: u32, elt_sz: ::libc::size_t, 4360 | pg_shift: u32) -> ::libc::size_t; 4361 | pub fn rte_mempool_xmem_usage(vaddr: *mut ::libc::c_void, 4362 | elt_num: u32, elt_sz: ::libc::size_t, 4363 | paddr: *const phys_addr_t, pg_num: u32, 4364 | pg_shift: u32) -> ::libc::ssize_t; 4365 | pub fn rte_mempool_walk(func: 4366 | ::std::option::Option ()>, 4372 | arg: *mut ::libc::c_void) -> (); 4373 | pub fn rte_get_rx_ol_flag_name(mask: u64) -> *const ::libc::c_char; 4374 | pub fn rte_get_tx_ol_flag_name(mask: u64) -> *const ::libc::c_char; 4375 | pub fn rte_mbuf_sanity_check(m: *const Struct_rte_mbuf, 4376 | is_header: ::libc::c_int) -> (); 4377 | pub fn rte_ctrlmbuf_init(mp: *mut Struct_rte_mempool, 4378 | opaque_arg: *mut ::libc::c_void, 4379 | m: *mut ::libc::c_void, i: ::libc::c_uint) -> (); 4380 | pub fn rte_pktmbuf_init(mp: *mut Struct_rte_mempool, 4381 | opaque_arg: *mut ::libc::c_void, 4382 | m: *mut ::libc::c_void, i: ::libc::c_uint) -> (); 4383 | pub fn rte_pktmbuf_pool_init(mp: *mut Struct_rte_mempool, 4384 | opaque_arg: *mut ::libc::c_void) -> (); 4385 | pub fn rte_pktmbuf_dump(f: *mut ::libc::FILE, m: *const Struct_rte_mbuf, 4386 | dump_len: ::libc::c_uint) -> (); 4387 | pub fn rte_distributor_create(name: *const ::libc::c_char, 4388 | socket_id: ::libc::c_uint, 4389 | num_workers: ::libc::c_uint) 4390 | -> *mut Struct_rte_distributor; 4391 | pub fn rte_distributor_process(d: *mut Struct_rte_distributor, 4392 | mbufs: *mut *mut Struct_rte_mbuf, 4393 | num_mbufs: ::libc::c_uint) 4394 | -> ::libc::c_int; 4395 | pub fn rte_distributor_returned_pkts(d: *mut Struct_rte_distributor, 4396 | mbufs: *mut *mut Struct_rte_mbuf, 4397 | max_mbufs: ::libc::c_uint) 4398 | -> ::libc::c_int; 4399 | pub fn rte_distributor_flush(d: *mut Struct_rte_distributor) 4400 | -> ::libc::c_int; 4401 | pub fn rte_distributor_clear_returns(d: *mut Struct_rte_distributor) 4402 | -> (); 4403 | pub fn rte_distributor_get_pkt(d: *mut Struct_rte_distributor, 4404 | worker_id: ::libc::c_uint, 4405 | oldpkt: *mut Struct_rte_mbuf) 4406 | -> *mut Struct_rte_mbuf; 4407 | pub fn rte_distributor_return_pkt(d: *mut Struct_rte_distributor, 4408 | worker_id: ::libc::c_uint, 4409 | mbuf: *mut Struct_rte_mbuf) 4410 | -> ::libc::c_int; 4411 | pub fn rte_distributor_request_pkt(d: *mut Struct_rte_distributor, 4412 | worker_id: ::libc::c_uint, 4413 | oldpkt: *mut Struct_rte_mbuf) -> (); 4414 | pub fn rte_distributor_poll_pkt(d: *mut Struct_rte_distributor, 4415 | worker_id: ::libc::c_uint) 4416 | -> *mut Struct_rte_mbuf; 4417 | pub fn rte_pmd_af_packet_devinit(name: *const ::libc::c_char, 4418 | params: *const ::libc::c_char) 4419 | -> ::libc::c_int; 4420 | pub fn rte_eth_bond_8023ad_conf_get(port_id: u8, 4421 | conf: 4422 | *mut Struct_rte_eth_bond_8023ad_conf) 4423 | -> ::libc::c_int; 4424 | pub fn rte_eth_bond_8023ad_setup(port_id: u8, 4425 | conf: 4426 | *mut Struct_rte_eth_bond_8023ad_conf) 4427 | -> ::libc::c_int; 4428 | pub fn rte_eth_bond_8023ad_slave_info(port_id: u8, slave_id: u8, 4429 | conf: 4430 | *mut Struct_rte_eth_bond_8023ad_slave_info) 4431 | -> ::libc::c_int; 4432 | pub fn rte_eth_bond_create(name: *const ::libc::c_char, mode: u8, 4433 | socket_id: u8) -> ::libc::c_int; 4434 | pub fn rte_eth_bond_slave_add(bonded_port_id: u8, 4435 | slave_port_id: u8) -> ::libc::c_int; 4436 | pub fn rte_eth_bond_slave_remove(bonded_port_id: u8, 4437 | slave_port_id: u8) -> ::libc::c_int; 4438 | pub fn rte_eth_bond_mode_set(bonded_port_id: u8, mode: u8) 4439 | -> ::libc::c_int; 4440 | pub fn rte_eth_bond_mode_get(bonded_port_id: u8) -> ::libc::c_int; 4441 | pub fn rte_eth_bond_primary_set(bonded_port_id: u8, 4442 | slave_port_id: u8) -> ::libc::c_int; 4443 | pub fn rte_eth_bond_primary_get(bonded_port_id: u8) -> ::libc::c_int; 4444 | pub fn rte_eth_bond_slaves_get(bonded_port_id: u8, 4445 | slaves: *mut u8, len: u8) 4446 | -> ::libc::c_int; 4447 | pub fn rte_eth_bond_active_slaves_get(bonded_port_id: u8, 4448 | slaves: *mut u8, len: u8) 4449 | -> ::libc::c_int; 4450 | pub fn rte_eth_bond_mac_address_set(bonded_port_id: u8, 4451 | mac_addr: *mut Struct_ether_addr) 4452 | -> ::libc::c_int; 4453 | pub fn rte_eth_bond_mac_address_reset(bonded_port_id: u8) 4454 | -> ::libc::c_int; 4455 | pub fn rte_eth_bond_xmit_policy_set(bonded_port_id: u8, 4456 | policy: u8) -> ::libc::c_int; 4457 | pub fn rte_eth_bond_xmit_policy_get(bonded_port_id: u8) 4458 | -> ::libc::c_int; 4459 | pub fn rte_eth_bond_link_monitoring_set(bonded_port_id: u8, 4460 | internal_ms: u32) 4461 | -> ::libc::c_int; 4462 | pub fn rte_eth_bond_link_monitoring_get(bonded_port_id: u8) 4463 | -> ::libc::c_int; 4464 | pub fn rte_eth_bond_link_down_prop_delay_set(bonded_port_id: u8, 4465 | delay_ms: u32) 4466 | -> ::libc::c_int; 4467 | pub fn rte_eth_bond_link_down_prop_delay_get(bonded_port_id: u8) 4468 | -> ::libc::c_int; 4469 | pub fn rte_eth_bond_link_up_prop_delay_set(bonded_port_id: u8, 4470 | delay_ms: u32) 4471 | -> ::libc::c_int; 4472 | pub fn rte_eth_bond_link_up_prop_delay_get(bonded_port_id: u8) 4473 | -> ::libc::c_int; 4474 | pub fn rte_eth_dev_count() -> u8; 4475 | pub fn rte_eth_dev_allocate(name: *const ::libc::c_char) 4476 | -> *mut Struct_rte_eth_dev; 4477 | pub fn rte_eth_driver_register(eth_drv: *mut Struct_eth_driver) -> (); 4478 | pub fn rte_eth_dev_configure(port_id: u8, nb_rx_queue: u16, 4479 | nb_tx_queue: u16, 4480 | eth_conf: *const Struct_rte_eth_conf) 4481 | -> ::libc::c_int; 4482 | pub fn rte_eth_rx_queue_setup(port_id: u8, rx_queue_id: u16, 4483 | nb_rx_desc: u16, 4484 | socket_id: ::libc::c_uint, 4485 | rx_conf: *const Struct_rte_eth_rxconf, 4486 | mb_pool: *mut Struct_rte_mempool) 4487 | -> ::libc::c_int; 4488 | pub fn rte_eth_tx_queue_setup(port_id: u8, tx_queue_id: u16, 4489 | nb_tx_desc: u16, 4490 | socket_id: ::libc::c_uint, 4491 | tx_conf: *const Struct_rte_eth_txconf) 4492 | -> ::libc::c_int; 4493 | pub fn rte_eth_dev_socket_id(port_id: u8) -> ::libc::c_int; 4494 | pub fn rte_eth_dev_rx_queue_start(port_id: u8, rx_queue_id: u16) 4495 | -> ::libc::c_int; 4496 | pub fn rte_eth_dev_rx_queue_stop(port_id: u8, rx_queue_id: u16) 4497 | -> ::libc::c_int; 4498 | pub fn rte_eth_dev_tx_queue_start(port_id: u8, tx_queue_id: u16) 4499 | -> ::libc::c_int; 4500 | pub fn rte_eth_dev_tx_queue_stop(port_id: u8, tx_queue_id: u16) 4501 | -> ::libc::c_int; 4502 | pub fn rte_eth_dev_start(port_id: u8) -> ::libc::c_int; 4503 | pub fn rte_eth_dev_stop(port_id: u8) -> (); 4504 | pub fn rte_eth_dev_set_link_up(port_id: u8) -> ::libc::c_int; 4505 | pub fn rte_eth_dev_set_link_down(port_id: u8) -> ::libc::c_int; 4506 | pub fn rte_eth_dev_close(port_id: u8) -> (); 4507 | pub fn rte_eth_promiscuous_enable(port_id: u8) -> (); 4508 | pub fn rte_eth_promiscuous_disable(port_id: u8) -> (); 4509 | pub fn rte_eth_promiscuous_get(port_id: u8) -> ::libc::c_int; 4510 | pub fn rte_eth_allmulticast_enable(port_id: u8) -> (); 4511 | pub fn rte_eth_allmulticast_disable(port_id: u8) -> (); 4512 | pub fn rte_eth_allmulticast_get(port_id: u8) -> ::libc::c_int; 4513 | pub fn rte_eth_link_get(port_id: u8, link: *mut Struct_rte_eth_link) 4514 | -> (); 4515 | pub fn rte_eth_link_get_nowait(port_id: u8, 4516 | link: *mut Struct_rte_eth_link) -> (); 4517 | pub fn rte_eth_stats_get(port_id: u8, 4518 | stats: *mut Struct_rte_eth_stats) -> (); 4519 | pub fn rte_eth_stats_reset(port_id: u8) -> (); 4520 | pub fn rte_eth_xstats_get(port_id: u8, 4521 | xstats: *mut Struct_rte_eth_xstats, 4522 | n: ::libc::c_uint) -> ::libc::c_int; 4523 | pub fn rte_eth_xstats_reset(port_id: u8) -> (); 4524 | pub fn rte_eth_dev_set_tx_queue_stats_mapping(port_id: u8, 4525 | tx_queue_id: u16, 4526 | stat_idx: u8) 4527 | -> ::libc::c_int; 4528 | pub fn rte_eth_dev_set_rx_queue_stats_mapping(port_id: u8, 4529 | rx_queue_id: u16, 4530 | stat_idx: u8) 4531 | -> ::libc::c_int; 4532 | pub fn rte_eth_macaddr_get(port_id: u8, 4533 | mac_addr: *mut Struct_ether_addr) -> (); 4534 | pub fn rte_eth_dev_info_get(port_id: u8, 4535 | dev_info: *mut Struct_rte_eth_dev_info) -> (); 4536 | pub fn rte_eth_dev_get_mtu(port_id: u8, mtu: *mut u16) 4537 | -> ::libc::c_int; 4538 | pub fn rte_eth_dev_set_mtu(port_id: u8, mtu: u16) 4539 | -> ::libc::c_int; 4540 | pub fn rte_eth_dev_vlan_filter(port_id: u8, vlan_id: u16, 4541 | on: ::libc::c_int) -> ::libc::c_int; 4542 | pub fn rte_eth_dev_set_vlan_strip_on_queue(port_id: u8, 4543 | rx_queue_id: u16, 4544 | on: ::libc::c_int) 4545 | -> ::libc::c_int; 4546 | pub fn rte_eth_dev_set_vlan_ether_type(port_id: u8, 4547 | tag_type: u16) 4548 | -> ::libc::c_int; 4549 | pub fn rte_eth_dev_set_vlan_offload(port_id: u8, 4550 | offload_mask: ::libc::c_int) 4551 | -> ::libc::c_int; 4552 | pub fn rte_eth_dev_get_vlan_offload(port_id: u8) -> ::libc::c_int; 4553 | pub fn rte_eth_dev_set_vlan_pvid(port_id: u8, pvid: u16, 4554 | on: ::libc::c_int) -> ::libc::c_int; 4555 | pub fn rte_eth_dev_fdir_add_signature_filter(port_id: u8, 4556 | fdir_filter: 4557 | *mut Struct_rte_fdir_filter, 4558 | rx_queue: u8) 4559 | -> ::libc::c_int; 4560 | pub fn rte_eth_dev_fdir_update_signature_filter(port_id: u8, 4561 | fdir_ftr: 4562 | *mut Struct_rte_fdir_filter, 4563 | rx_queue: u8) 4564 | -> ::libc::c_int; 4565 | pub fn rte_eth_dev_fdir_remove_signature_filter(port_id: u8, 4566 | fdir_ftr: 4567 | *mut Struct_rte_fdir_filter) 4568 | -> ::libc::c_int; 4569 | pub fn rte_eth_dev_fdir_get_infos(port_id: u8, 4570 | fdir: *mut Struct_rte_eth_fdir) 4571 | -> ::libc::c_int; 4572 | pub fn rte_eth_dev_fdir_add_perfect_filter(port_id: u8, 4573 | fdir_filter: 4574 | *mut Struct_rte_fdir_filter, 4575 | soft_id: u16, 4576 | rx_queue: u8, 4577 | drop: u8) 4578 | -> ::libc::c_int; 4579 | pub fn rte_eth_dev_fdir_update_perfect_filter(port_id: u8, 4580 | fdir_filter: 4581 | *mut Struct_rte_fdir_filter, 4582 | soft_id: u16, 4583 | rx_queue: u8, 4584 | drop: u8) 4585 | -> ::libc::c_int; 4586 | pub fn rte_eth_dev_fdir_remove_perfect_filter(port_id: u8, 4587 | fdir_filter: 4588 | *mut Struct_rte_fdir_filter, 4589 | soft_id: u16) 4590 | -> ::libc::c_int; 4591 | pub fn rte_eth_dev_fdir_set_masks(port_id: u8, 4592 | fdir_mask: *mut Struct_rte_fdir_masks) 4593 | -> ::libc::c_int; 4594 | pub fn rte_eth_dev_callback_register(port_id: u8, 4595 | event: Enum_rte_eth_event_type, 4596 | cb_fn: rte_eth_dev_cb_fn, 4597 | cb_arg: *mut ::libc::c_void) 4598 | -> ::libc::c_int; 4599 | pub fn rte_eth_dev_callback_unregister(port_id: u8, 4600 | event: Enum_rte_eth_event_type, 4601 | cb_fn: rte_eth_dev_cb_fn, 4602 | cb_arg: *mut ::libc::c_void) 4603 | -> ::libc::c_int; 4604 | pub fn _rte_eth_dev_callback_process(dev: *mut Struct_rte_eth_dev, 4605 | event: Enum_rte_eth_event_type) 4606 | -> (); 4607 | pub fn rte_eth_led_on(port_id: u8) -> ::libc::c_int; 4608 | pub fn rte_eth_led_off(port_id: u8) -> ::libc::c_int; 4609 | pub fn rte_eth_dev_flow_ctrl_get(port_id: u8, 4610 | fc_conf: *mut Struct_rte_eth_fc_conf) 4611 | -> ::libc::c_int; 4612 | pub fn rte_eth_dev_flow_ctrl_set(port_id: u8, 4613 | fc_conf: *mut Struct_rte_eth_fc_conf) 4614 | -> ::libc::c_int; 4615 | pub fn rte_eth_dev_priority_flow_ctrl_set(port_id: u8, 4616 | pfc_conf: 4617 | *mut Struct_rte_eth_pfc_conf) 4618 | -> ::libc::c_int; 4619 | pub fn rte_eth_dev_mac_addr_add(port: u8, 4620 | mac_addr: *mut Struct_ether_addr, 4621 | pool: u32) -> ::libc::c_int; 4622 | pub fn rte_eth_dev_mac_addr_remove(port: u8, 4623 | mac_addr: *mut Struct_ether_addr) 4624 | -> ::libc::c_int; 4625 | pub fn rte_eth_dev_rss_reta_update(port: u8, 4626 | reta_conf: 4627 | *mut Struct_rte_eth_rss_reta_entry64, 4628 | reta_size: u16) -> ::libc::c_int; 4629 | pub fn rte_eth_dev_rss_reta_query(port: u8, 4630 | reta_conf: 4631 | *mut Struct_rte_eth_rss_reta_entry64, 4632 | reta_size: u16) -> ::libc::c_int; 4633 | pub fn rte_eth_dev_uc_hash_table_set(port: u8, 4634 | addr: *mut Struct_ether_addr, 4635 | on: u8) -> ::libc::c_int; 4636 | pub fn rte_eth_dev_uc_all_hash_table_set(port: u8, on: u8) 4637 | -> ::libc::c_int; 4638 | pub fn rte_eth_dev_set_vf_rxmode(port: u8, vf: u16, 4639 | rx_mode: u16, on: u8) 4640 | -> ::libc::c_int; 4641 | pub fn rte_eth_dev_set_vf_tx(port: u8, vf: u16, on: u8) 4642 | -> ::libc::c_int; 4643 | pub fn rte_eth_dev_set_vf_rx(port: u8, vf: u16, on: u8) 4644 | -> ::libc::c_int; 4645 | pub fn rte_eth_dev_set_vf_vlan_filter(port: u8, vlan_id: u16, 4646 | vf_mask: u64, vlan_on: u8) 4647 | -> ::libc::c_int; 4648 | pub fn rte_eth_mirror_rule_set(port_id: u8, 4649 | mirror_conf: 4650 | *mut Struct_rte_eth_vmdq_mirror_conf, 4651 | rule_id: u8, on: u8) 4652 | -> ::libc::c_int; 4653 | pub fn rte_eth_mirror_rule_reset(port_id: u8, rule_id: u8) 4654 | -> ::libc::c_int; 4655 | pub fn rte_eth_set_queue_rate_limit(port_id: u8, queue_idx: u16, 4656 | tx_rate: u16) -> ::libc::c_int; 4657 | pub fn rte_eth_set_vf_rate_limit(port_id: u8, vf: u16, 4658 | tx_rate: u16, q_msk: u64) 4659 | -> ::libc::c_int; 4660 | pub fn rte_eth_dev_bypass_init(port: u8) -> ::libc::c_int; 4661 | pub fn rte_eth_dev_bypass_state_show(port: u8, state: *mut u32) 4662 | -> ::libc::c_int; 4663 | pub fn rte_eth_dev_bypass_state_set(port: u8, 4664 | new_state: *mut u32) 4665 | -> ::libc::c_int; 4666 | pub fn rte_eth_dev_bypass_event_show(port: u8, event: u32, 4667 | state: *mut u32) 4668 | -> ::libc::c_int; 4669 | pub fn rte_eth_dev_bypass_event_store(port: u8, event: u32, 4670 | state: u32) -> ::libc::c_int; 4671 | pub fn rte_eth_dev_wd_timeout_store(port: u8, timeout: u32) 4672 | -> ::libc::c_int; 4673 | pub fn rte_eth_dev_bypass_ver_show(port: u8, ver: *mut u32) 4674 | -> ::libc::c_int; 4675 | pub fn rte_eth_dev_bypass_wd_timeout_show(port: u8, 4676 | wd_timeout: *mut u32) 4677 | -> ::libc::c_int; 4678 | pub fn rte_eth_dev_bypass_wd_reset(port: u8) -> ::libc::c_int; 4679 | pub fn rte_eth_dev_rss_hash_update(port_id: u8, 4680 | rss_conf: *mut Struct_rte_eth_rss_conf) 4681 | -> ::libc::c_int; 4682 | pub fn rte_eth_dev_rss_hash_conf_get(port_id: u8, 4683 | rss_conf: 4684 | *mut Struct_rte_eth_rss_conf) 4685 | -> ::libc::c_int; 4686 | pub fn rte_eth_dev_udp_tunnel_add(port_id: u8, 4687 | tunnel_udp: 4688 | *mut Struct_rte_eth_udp_tunnel) 4689 | -> ::libc::c_int; 4690 | pub fn rte_eth_dev_udp_tunnel_delete(port_id: u8, 4691 | tunnel_udp: 4692 | *mut Struct_rte_eth_udp_tunnel) 4693 | -> ::libc::c_int; 4694 | pub fn rte_eth_dev_add_syn_filter(port_id: u8, 4695 | filter: *mut Struct_rte_syn_filter, 4696 | rx_queue: u16) -> ::libc::c_int; 4697 | pub fn rte_eth_dev_remove_syn_filter(port_id: u8) -> ::libc::c_int; 4698 | pub fn rte_eth_dev_get_syn_filter(port_id: u8, 4699 | filter: *mut Struct_rte_syn_filter, 4700 | rx_queue: *mut u16) 4701 | -> ::libc::c_int; 4702 | pub fn rte_eth_dev_add_ethertype_filter(port_id: u8, index: u16, 4703 | filter: 4704 | *mut Struct_rte_ethertype_filter, 4705 | rx_queue: u16) 4706 | -> ::libc::c_int; 4707 | pub fn rte_eth_dev_remove_ethertype_filter(port_id: u8, 4708 | index: u16) 4709 | -> ::libc::c_int; 4710 | pub fn rte_eth_dev_get_ethertype_filter(port_id: u8, index: u16, 4711 | filter: 4712 | *mut Struct_rte_ethertype_filter, 4713 | rx_queue: *mut u16) 4714 | -> ::libc::c_int; 4715 | pub fn rte_eth_dev_add_2tuple_filter(port_id: u8, index: u16, 4716 | filter: 4717 | *mut Struct_rte_2tuple_filter, 4718 | rx_queue: u16) -> ::libc::c_int; 4719 | pub fn rte_eth_dev_remove_2tuple_filter(port_id: u8, index: u16) 4720 | -> ::libc::c_int; 4721 | pub fn rte_eth_dev_get_2tuple_filter(port_id: u8, index: u16, 4722 | filter: 4723 | *mut Struct_rte_2tuple_filter, 4724 | rx_queue: *mut u16) 4725 | -> ::libc::c_int; 4726 | pub fn rte_eth_dev_add_5tuple_filter(port_id: u8, index: u16, 4727 | filter: 4728 | *mut Struct_rte_5tuple_filter, 4729 | rx_queue: u16) -> ::libc::c_int; 4730 | pub fn rte_eth_dev_remove_5tuple_filter(port_id: u8, index: u16) 4731 | -> ::libc::c_int; 4732 | pub fn rte_eth_dev_get_5tuple_filter(port_id: u8, index: u16, 4733 | filter: 4734 | *mut Struct_rte_5tuple_filter, 4735 | rx_queue: *mut u16) 4736 | -> ::libc::c_int; 4737 | pub fn rte_eth_dev_add_flex_filter(port_id: u8, index: u16, 4738 | filter: *mut Struct_rte_flex_filter, 4739 | rx_queue: u16) -> ::libc::c_int; 4740 | pub fn rte_eth_dev_remove_flex_filter(port_id: u8, index: u16) 4741 | -> ::libc::c_int; 4742 | pub fn rte_eth_dev_get_flex_filter(port_id: u8, index: u16, 4743 | filter: *mut Struct_rte_flex_filter, 4744 | rx_queue: *mut u16) 4745 | -> ::libc::c_int; 4746 | pub fn rte_eth_dev_filter_supported(port_id: u8, 4747 | filter_type: Enum_rte_filter_type) 4748 | -> ::libc::c_int; 4749 | pub fn rte_eth_dev_filter_ctrl(port_id: u8, 4750 | filter_type: Enum_rte_filter_type, 4751 | filter_op: Enum_rte_filter_op, 4752 | arg: *mut ::libc::c_void) -> ::libc::c_int; 4753 | pub fn rte_eth_from_rings(name: *const ::libc::c_char, 4754 | rx_queues: *const *mut Struct_rte_ring, 4755 | nb_rx_queues: ::libc::c_uint, 4756 | tx_queues: *const *mut Struct_rte_ring, 4757 | nb_tx_queues: ::libc::c_uint, 4758 | numa_node: ::libc::c_uint) -> ::libc::c_int; 4759 | pub fn rte_eth_ring_pair_create(name: *const ::libc::c_char, 4760 | numa_node: ::libc::c_uint) 4761 | -> ::libc::c_int; 4762 | pub fn rte_eth_ring_pair_attach(name: *const ::libc::c_char, 4763 | numa_node: ::libc::c_uint) 4764 | -> ::libc::c_int; 4765 | pub fn rte_pmd_ring_devinit(name: *const ::libc::c_char, 4766 | params: *const ::libc::c_char) 4767 | -> ::libc::c_int; 4768 | pub fn rte_fbk_hash_find_existing(name: *const ::libc::c_char) 4769 | -> *mut Struct_rte_fbk_hash_table; 4770 | pub fn rte_fbk_hash_create(params: *const Struct_rte_fbk_hash_params) 4771 | -> *mut Struct_rte_fbk_hash_table; 4772 | pub fn rte_fbk_hash_free(ht: *mut Struct_rte_fbk_hash_table) -> (); 4773 | pub fn rte_hash_create(params: *const Struct_rte_hash_parameters) 4774 | -> *mut Struct_rte_hash; 4775 | pub fn rte_hash_find_existing(name: *const ::libc::c_char) 4776 | -> *mut Struct_rte_hash; 4777 | pub fn rte_hash_free(h: *mut Struct_rte_hash) -> (); 4778 | pub fn rte_hash_add_key(h: *const Struct_rte_hash, 4779 | key: *const ::libc::c_void) -> i32; 4780 | pub fn rte_hash_add_key_with_hash(h: *const Struct_rte_hash, 4781 | key: *const ::libc::c_void, 4782 | sig: hash_sig_t) -> i32; 4783 | pub fn rte_hash_del_key(h: *const Struct_rte_hash, 4784 | key: *const ::libc::c_void) -> i32; 4785 | pub fn rte_hash_del_key_with_hash(h: *const Struct_rte_hash, 4786 | key: *const ::libc::c_void, 4787 | sig: hash_sig_t) -> i32; 4788 | pub fn rte_hash_lookup(h: *const Struct_rte_hash, 4789 | key: *const ::libc::c_void) -> i32; 4790 | pub fn rte_hash_lookup_with_hash(h: *const Struct_rte_hash, 4791 | key: *const ::libc::c_void, 4792 | sig: hash_sig_t) -> i32; 4793 | pub fn rte_hash_lookup_bulk(h: *const Struct_rte_hash, 4794 | keys: *mut *const ::libc::c_void, 4795 | num_keys: u32, positions: *mut i32) 4796 | -> ::libc::c_int; 4797 | pub fn rte_hexdump(f: *mut ::libc::FILE, title: *const ::libc::c_char, 4798 | buf: *const ::libc::c_void, len: ::libc::c_uint) -> (); 4799 | pub fn rte_memdump(f: *mut ::libc::FILE, title: *const ::libc::c_char, 4800 | buf: *const ::libc::c_void, len: ::libc::c_uint) -> (); 4801 | pub fn rte_ip_frag_table_create(bucket_num: u32, 4802 | bucket_entries: u32, 4803 | max_entries: u32, 4804 | max_cycles: u64, 4805 | socket_id: ::libc::c_int) 4806 | -> *mut Struct_rte_ip_frag_tbl; 4807 | pub fn rte_ipv6_fragment_packet(pkt_in: *mut Struct_rte_mbuf, 4808 | pkts_out: *mut *mut Struct_rte_mbuf, 4809 | nb_pkts_out: u16, mtu_size: u16, 4810 | pool_direct: *mut Struct_rte_mempool, 4811 | pool_indirect: *mut Struct_rte_mempool) 4812 | -> i32; 4813 | pub fn rte_ipv6_frag_reassemble_packet(tbl: *mut Struct_rte_ip_frag_tbl, 4814 | dr: 4815 | *mut Struct_rte_ip_frag_death_row, 4816 | mb: *mut Struct_rte_mbuf, 4817 | tms: u64, 4818 | ip_hdr: *mut Struct_ipv6_hdr, 4819 | frag_hdr: 4820 | *mut Struct_ipv6_extension_fragment) 4821 | -> *mut Struct_rte_mbuf; 4822 | pub fn rte_ipv4_fragment_packet(pkt_in: *mut Struct_rte_mbuf, 4823 | pkts_out: *mut *mut Struct_rte_mbuf, 4824 | nb_pkts_out: u16, mtu_size: u16, 4825 | pool_direct: *mut Struct_rte_mempool, 4826 | pool_indirect: *mut Struct_rte_mempool) 4827 | -> i32; 4828 | pub fn rte_ipv4_frag_reassemble_packet(tbl: *mut Struct_rte_ip_frag_tbl, 4829 | dr: 4830 | *mut Struct_rte_ip_frag_death_row, 4831 | mb: *mut Struct_rte_mbuf, 4832 | tms: u64, 4833 | ip_hdr: *mut Struct_ipv4_hdr) 4834 | -> *mut Struct_rte_mbuf; 4835 | pub fn rte_ip_frag_free_death_row(dr: *mut Struct_rte_ip_frag_death_row, 4836 | prefetch: u32) -> (); 4837 | pub fn rte_ip_frag_table_statistics_dump(f: *mut ::libc::FILE, 4838 | tbl: 4839 | *const Struct_rte_ip_frag_tbl) 4840 | -> (); 4841 | pub fn rte_kni_init(max_kni_ifaces: ::libc::c_uint) -> (); 4842 | pub fn rte_kni_alloc(pktmbuf_pool: *mut Struct_rte_mempool, 4843 | conf: *const Struct_rte_kni_conf, 4844 | ops: *mut Struct_rte_kni_ops) -> *mut Struct_rte_kni; 4845 | pub fn rte_kni_create(port_id: u8, mbuf_size: ::libc::c_uint, 4846 | pktmbuf_pool: *mut Struct_rte_mempool, 4847 | ops: *mut Struct_rte_kni_ops) 4848 | -> *mut Struct_rte_kni; 4849 | pub fn rte_kni_release(kni: *mut Struct_rte_kni) -> ::libc::c_int; 4850 | pub fn rte_kni_handle_request(kni: *mut Struct_rte_kni) -> ::libc::c_int; 4851 | pub fn rte_kni_rx_burst(kni: *mut Struct_rte_kni, 4852 | mbufs: *mut *mut Struct_rte_mbuf, 4853 | num: ::libc::c_uint) -> ::libc::c_uint; 4854 | pub fn rte_kni_tx_burst(kni: *mut Struct_rte_kni, 4855 | mbufs: *mut *mut Struct_rte_mbuf, 4856 | num: ::libc::c_uint) -> ::libc::c_uint; 4857 | pub fn rte_kni_get_port_id(kni: *mut Struct_rte_kni) -> u8; 4858 | pub fn rte_kni_get(name: *const ::libc::c_char) -> *mut Struct_rte_kni; 4859 | pub fn rte_kni_info_get(port_id: u8) -> *mut Struct_rte_kni; 4860 | pub fn rte_kni_register_handlers(kni: *mut Struct_rte_kni, 4861 | ops: *mut Struct_rte_kni_ops) 4862 | -> ::libc::c_int; 4863 | pub fn rte_kni_unregister_handlers(kni: *mut Struct_rte_kni) 4864 | -> ::libc::c_int; 4865 | pub fn rte_kni_close() -> (); 4866 | pub fn rte_kvargs_parse(args: *const ::libc::c_char, 4867 | valid_keys: *mut *const ::libc::c_char) 4868 | -> *mut Struct_rte_kvargs; 4869 | pub fn rte_kvargs_free(kvlist: *mut Struct_rte_kvargs) -> (); 4870 | pub fn rte_kvargs_process(kvlist: *const Struct_rte_kvargs, 4871 | key_match: *const ::libc::c_char, 4872 | handler: arg_handler_t, 4873 | opaque_arg: *mut ::libc::c_void) 4874 | -> ::libc::c_int; 4875 | pub fn rte_kvargs_count(kvlist: *const Struct_rte_kvargs, 4876 | key_match: *const ::libc::c_char) 4877 | -> ::libc::c_uint; 4878 | pub fn rte_lpm6_create(name: *const ::libc::c_char, 4879 | socket_id: ::libc::c_int, 4880 | config: *const Struct_rte_lpm6_config) 4881 | -> *mut Struct_rte_lpm6; 4882 | pub fn rte_lpm6_find_existing(name: *const ::libc::c_char) 4883 | -> *mut Struct_rte_lpm6; 4884 | pub fn rte_lpm6_free(lpm: *mut Struct_rte_lpm6) -> (); 4885 | pub fn rte_lpm6_add(lpm: *mut Struct_rte_lpm6, ip: *mut u8, 4886 | depth: u8, next_hop: u8) -> ::libc::c_int; 4887 | pub fn rte_lpm6_is_rule_present(lpm: *mut Struct_rte_lpm6, 4888 | ip: *mut u8, depth: u8, 4889 | next_hop: *mut u8) -> ::libc::c_int; 4890 | pub fn rte_lpm6_delete(lpm: *mut Struct_rte_lpm6, ip: *mut u8, 4891 | depth: u8) -> ::libc::c_int; 4892 | pub fn rte_lpm6_delete_bulk_func(lpm: *mut Struct_rte_lpm6, 4893 | ips: *mut [u8; 16us], 4894 | depths: *mut u8, n: ::libc::c_uint) 4895 | -> ::libc::c_int; 4896 | pub fn rte_lpm6_delete_all(lpm: *mut Struct_rte_lpm6) -> (); 4897 | pub fn rte_lpm6_lookup(lpm: *const Struct_rte_lpm6, ip: *mut u8, 4898 | next_hop: *mut u8) -> ::libc::c_int; 4899 | pub fn rte_lpm6_lookup_bulk_func(lpm: *const Struct_rte_lpm6, 4900 | ips: *mut [u8; 16us], 4901 | next_hops: *mut i16, 4902 | n: ::libc::c_uint) -> ::libc::c_int; 4903 | pub fn rte_lpm_create(name: *const ::libc::c_char, 4904 | socket_id: ::libc::c_int, max_rules: ::libc::c_int, 4905 | flags: ::libc::c_int) -> *mut Struct_rte_lpm; 4906 | pub fn rte_lpm_find_existing(name: *const ::libc::c_char) 4907 | -> *mut Struct_rte_lpm; 4908 | pub fn rte_lpm_free(lpm: *mut Struct_rte_lpm) -> (); 4909 | pub fn rte_lpm_add(lpm: *mut Struct_rte_lpm, ip: u32, depth: u8, 4910 | next_hop: u8) -> ::libc::c_int; 4911 | pub fn rte_lpm_is_rule_present(lpm: *mut Struct_rte_lpm, ip: u32, 4912 | depth: u8, next_hop: *mut u8) 4913 | -> ::libc::c_int; 4914 | pub fn rte_lpm_delete(lpm: *mut Struct_rte_lpm, ip: u32, 4915 | depth: u8) -> ::libc::c_int; 4916 | pub fn rte_lpm_delete_all(lpm: *mut Struct_rte_lpm) -> (); 4917 | pub fn rte_meter_srtcm_config(m: *mut Struct_rte_meter_srtcm, 4918 | params: *mut Struct_rte_meter_srtcm_params) 4919 | -> ::libc::c_int; 4920 | pub fn rte_meter_trtcm_config(m: *mut Struct_rte_meter_trtcm, 4921 | params: *mut Struct_rte_meter_trtcm_params) 4922 | -> ::libc::c_int; 4923 | pub fn rte_pipeline_create(params: *mut Struct_rte_pipeline_params) 4924 | -> *mut Struct_rte_pipeline; 4925 | pub fn rte_pipeline_free(p: *mut Struct_rte_pipeline) -> ::libc::c_int; 4926 | pub fn rte_pipeline_check(p: *mut Struct_rte_pipeline) -> ::libc::c_int; 4927 | pub fn rte_pipeline_run(p: *mut Struct_rte_pipeline) -> ::libc::c_int; 4928 | pub fn rte_pipeline_flush(p: *mut Struct_rte_pipeline) -> ::libc::c_int; 4929 | pub fn rte_pipeline_table_create(p: *mut Struct_rte_pipeline, 4930 | params: 4931 | *mut Struct_rte_pipeline_table_params, 4932 | table_id: *mut u32) 4933 | -> ::libc::c_int; 4934 | pub fn rte_pipeline_table_default_entry_add(p: *mut Struct_rte_pipeline, 4935 | table_id: u32, 4936 | default_entry: 4937 | *mut Struct_rte_pipeline_table_entry, 4938 | default_entry_ptr: 4939 | *mut *mut Struct_rte_pipeline_table_entry) 4940 | -> ::libc::c_int; 4941 | pub fn rte_pipeline_table_default_entry_delete(p: 4942 | *mut Struct_rte_pipeline, 4943 | table_id: u32, 4944 | entry: 4945 | *mut Struct_rte_pipeline_table_entry) 4946 | -> ::libc::c_int; 4947 | pub fn rte_pipeline_table_entry_add(p: *mut Struct_rte_pipeline, 4948 | table_id: u32, 4949 | key: *mut ::libc::c_void, 4950 | entry: 4951 | *mut Struct_rte_pipeline_table_entry, 4952 | key_found: *mut ::libc::c_int, 4953 | entry_ptr: 4954 | *mut *mut Struct_rte_pipeline_table_entry) 4955 | -> ::libc::c_int; 4956 | pub fn rte_pipeline_table_entry_delete(p: *mut Struct_rte_pipeline, 4957 | table_id: u32, 4958 | key: *mut ::libc::c_void, 4959 | key_found: *mut ::libc::c_int, 4960 | entry: 4961 | *mut Struct_rte_pipeline_table_entry) 4962 | -> ::libc::c_int; 4963 | pub fn rte_pipeline_port_in_create(p: *mut Struct_rte_pipeline, 4964 | params: 4965 | *mut Struct_rte_pipeline_port_in_params, 4966 | port_id: *mut u32) 4967 | -> ::libc::c_int; 4968 | pub fn rte_pipeline_port_in_connect_to_table(p: *mut Struct_rte_pipeline, 4969 | port_id: u32, 4970 | table_id: u32) 4971 | -> ::libc::c_int; 4972 | pub fn rte_pipeline_port_in_enable(p: *mut Struct_rte_pipeline, 4973 | port_id: u32) -> ::libc::c_int; 4974 | pub fn rte_pipeline_port_in_disable(p: *mut Struct_rte_pipeline, 4975 | port_id: u32) -> ::libc::c_int; 4976 | pub fn rte_pipeline_port_out_create(p: *mut Struct_rte_pipeline, 4977 | params: 4978 | *mut Struct_rte_pipeline_port_out_params, 4979 | port_id: *mut u32) 4980 | -> ::libc::c_int; 4981 | pub fn rte_pipeline_port_out_packet_insert(p: *mut Struct_rte_pipeline, 4982 | port_id: u32, 4983 | pkt: *mut Struct_rte_mbuf) 4984 | -> ::libc::c_int; 4985 | pub fn rte_sched_port_config(params: *mut Struct_rte_sched_port_params) 4986 | -> *mut Struct_rte_sched_port; 4987 | pub fn rte_sched_port_free(port: *mut Struct_rte_sched_port) -> (); 4988 | pub fn rte_sched_subport_config(port: *mut Struct_rte_sched_port, 4989 | subport_id: u32, 4990 | params: 4991 | *mut Struct_rte_sched_subport_params) 4992 | -> ::libc::c_int; 4993 | pub fn rte_sched_pipe_config(port: *mut Struct_rte_sched_port, 4994 | subport_id: u32, pipe_id: u32, 4995 | pipe_profile: i32) -> ::libc::c_int; 4996 | pub fn rte_sched_port_get_memory_footprint(params: 4997 | *mut Struct_rte_sched_port_params) 4998 | -> u32; 4999 | pub fn rte_sched_subport_read_stats(port: *mut Struct_rte_sched_port, 5000 | subport_id: u32, 5001 | stats: 5002 | *mut Struct_rte_sched_subport_stats, 5003 | tc_ov: *mut u32) 5004 | -> ::libc::c_int; 5005 | pub fn rte_sched_queue_read_stats(port: *mut Struct_rte_sched_port, 5006 | queue_id: u32, 5007 | stats: 5008 | *mut Struct_rte_sched_queue_stats, 5009 | qlen: *mut u16) -> ::libc::c_int; 5010 | pub fn rte_sched_port_enqueue(port: *mut Struct_rte_sched_port, 5011 | pkts: *mut *mut Struct_rte_mbuf, 5012 | n_pkts: u32) -> ::libc::c_int; 5013 | pub fn rte_sched_port_dequeue(port: *mut Struct_rte_sched_port, 5014 | pkts: *mut *mut Struct_rte_mbuf, 5015 | n_pkts: u32) -> ::libc::c_int; 5016 | pub fn rte_power_set_env(env: Enum_power_management_env) -> ::libc::c_int; 5017 | pub fn rte_power_unset_env() -> (); 5018 | pub fn rte_power_get_env() -> Enum_power_management_env; 5019 | pub fn rte_power_init(lcore_id: ::libc::c_uint) -> ::libc::c_int; 5020 | pub fn rte_power_exit(lcore_id: ::libc::c_uint) -> ::libc::c_int; 5021 | pub fn rte_red_rt_data_init(red: *mut Struct_rte_red) -> ::libc::c_int; 5022 | pub fn rte_red_config_init(red_cfg: *mut Struct_rte_red_config, 5023 | wq_log2: u16, min_th: u16, 5024 | max_th: u16, maxp_inv: u16) 5025 | -> ::libc::c_int; 5026 | pub fn rte_timer_subsystem_init() -> (); 5027 | pub fn rte_timer_init(tim: *mut Struct_rte_timer) -> (); 5028 | pub fn rte_timer_reset(tim: *mut Struct_rte_timer, ticks: u64, 5029 | _type: Enum_rte_timer_type, 5030 | tim_lcore: ::libc::c_uint, fct: rte_timer_cb_t, 5031 | arg: *mut ::libc::c_void) -> ::libc::c_int; 5032 | pub fn rte_timer_reset_sync(tim: *mut Struct_rte_timer, ticks: u64, 5033 | _type: Enum_rte_timer_type, 5034 | tim_lcore: ::libc::c_uint, 5035 | fct: rte_timer_cb_t, arg: *mut ::libc::c_void) 5036 | -> (); 5037 | pub fn rte_timer_stop(tim: *mut Struct_rte_timer) -> ::libc::c_int; 5038 | pub fn rte_timer_stop_sync(tim: *mut Struct_rte_timer) -> (); 5039 | pub fn rte_timer_pending(tim: *mut Struct_rte_timer) -> ::libc::c_int; 5040 | pub fn rte_timer_manage() -> (); 5041 | pub fn rte_timer_dump_stats(f: *mut ::libc::FILE) -> (); 5042 | } 5043 | -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- 1 | #![allow(bad_style, 2 | raw_pointer_derive, 3 | missing_copy_implementations, 4 | unstable)] 5 | extern crate libc; 6 | 7 | pub mod dpdk; 8 | --------------------------------------------------------------------------------