API Reference Manual  1.49.0
api/spec/packet_io_types.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright (c) 2013-2018 Linaro Limited
3  * Copyright (c) 2020-2025 Nokia
4  */
5 
12 #ifndef ODP_API_SPEC_PACKET_IO_TYPES_H_
13 #define ODP_API_SPEC_PACKET_IO_TYPES_H_
14 #include <odp/visibility_begin.h>
15 
16 #include <odp/api/packet_types.h>
18 #include <odp/api/pool_types.h>
19 #include <odp/api/queue_types.h>
20 #include <odp/api/reassembly.h>
21 #include <odp/api/std_types.h>
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
93 typedef enum odp_pktin_mode_t {
103 
107 typedef enum odp_pktout_mode_t {
117 
124 typedef union odp_pktin_hash_proto_t {
126  struct {
128  uint32_t ipv4_udp : 1;
130  uint32_t ipv4_tcp : 1;
132  uint32_t ipv4 : 1;
134  uint32_t ipv6_udp : 1;
136  uint32_t ipv6_tcp : 1;
138  uint32_t ipv6 : 1;
139  } proto;
140 
145  uint32_t all_bits;
147 
151 typedef enum odp_pktio_op_mode_t {
158 
166 
168 
179 
193 
200 
208  uint64_t max_tmo_ns;
209 
222  uint32_t max_size;
223 
225 
229 typedef struct odp_pktin_queue_param_t {
236 
246 
255 
261 
269  uint32_t num_queues;
270 
280 
295 
308 
317 
319 
326 typedef struct odp_pktout_queue_param_t {
333 
336  uint32_t num_queues;
337 
347 
349 
356 typedef struct odp_pktio_param_t {
361 
366 
368 
399 typedef union odp_pktin_config_opt_t {
401  struct {
403  uint64_t ts_all : 1;
404 
407  uint64_t ts_ptp : 1;
408 
410  uint64_t ipv4_chksum : 1;
411 
413  uint64_t udp_chksum : 1;
414 
416  uint64_t tcp_chksum : 1;
417 
419  uint64_t sctp_chksum : 1;
420 
422  uint64_t drop_ipv4_err : 1;
423 
425  uint64_t drop_ipv6_err : 1;
426 
428  uint64_t drop_udp_err : 1;
429 
431  uint64_t drop_tcp_err : 1;
432 
434  uint64_t drop_sctp_err : 1;
435 
436  } bit;
437 
442  uint64_t all_bits;
444 
489 typedef union odp_pktout_config_opt_t {
491  struct {
493  uint64_t ts_ena : 1;
494 
496  uint64_t ipv4_chksum_ena : 1;
497 
499  uint64_t udp_chksum_ena : 1;
500 
502  uint64_t tcp_chksum_ena : 1;
503 
505  uint64_t sctp_chksum_ena : 1;
506 
508  uint64_t ipv4_chksum : 1;
509 
511  uint64_t udp_chksum : 1;
512 
514  uint64_t tcp_chksum : 1;
515 
517  uint64_t sctp_chksum : 1;
518 
531  uint64_t no_packet_refs : 1;
532 
538  uint64_t aging_ena : 1;
539 
541  uint64_t proto_stats_ena : 1;
542 
543  } bit;
544 
549  uint64_t all_bits;
551 
566 
568 
579 
581 
589 typedef struct odp_pktio_config_t {
594 
599 
602 
613 
629 
646 
661 
664 
666  struct {
682 
703 
705 
709  struct {
720  uint32_t mode_event : 1;
721 
732  uint32_t mode_poll : 1;
733 
741  uint32_t max_compl_id;
742 
744 
746 
752 typedef union odp_pktio_set_op_t {
754  struct {
756  uint32_t promisc_mode : 1;
758  uint32_t mac_addr : 1;
760  uint32_t skip_offset : 1;
762  uint32_t maxlen : 1;
763  } op;
767  uint32_t all_bits;
769 
771 #define ODP_LSO_MAX_CUSTOM 8
772 
774 typedef enum odp_lso_modify_t {
777 
780 
783 
786 
788 
793 typedef enum odp_lso_protocol_t {
796 
803 
822 
845 
878 
900 
903 
906 
908 
910 typedef struct odp_lso_capability_t {
912  uint32_t max_profiles;
913 
917 
921 
925  uint32_t max_segments;
926 
929  uint32_t max_payload_len;
930 
934 
936  struct {
938  uint16_t add_segment_num:1;
939 
941  uint16_t add_payload_len:1;
942 
944  uint16_t add_payload_offset:1;
945 
947  uint16_t write_bits:1;
948 
950 
953  uint8_t max_num_custom;
954 
956  struct {
958  uint32_t custom:1;
959 
961  uint32_t ipv4:1;
962 
964  uint32_t ipv6:1;
965 
967  uint32_t tcp_ipv4:1;
968 
970  uint32_t tcp_ipv6:1;
971 
973  uint32_t sctp_ipv4:1;
974 
976  uint32_t sctp_ipv6:1;
977 
978  } proto;
979 
981 
988 
994  uint32_t max_size;
995 
998  uint32_t min_size;
999 
1005  uint64_t max_tmo_ns;
1006 
1009  uint64_t min_tmo_ns;
1010 
1012 
1020 typedef struct odp_pktio_capability_t {
1025 
1030 
1035 
1040 
1045 
1050 
1053 
1059 
1062 
1065 
1069  struct {
1076  uint32_t min_input;
1078  uint32_t max_input;
1080  uint32_t min_output;
1082  uint32_t max_output;
1084 
1093 
1095  struct {
1107 
1119 
1121  uint32_t mode_event : 1;
1122 
1124  uint32_t mode_poll : 1;
1125 
1127  uint32_t max_compl_id;
1128 
1130 
1132  struct {
1137  uint32_t dont_free : 1;
1138 
1140 
1143 
1146 
1148  struct {
1150  uint32_t pause_rx: 1;
1151 
1153  uint32_t pfc_rx: 1;
1154 
1156  uint32_t pause_tx: 1;
1157 
1159  uint32_t pfc_tx: 1;
1160 
1162 
1164 
1166 typedef struct odp_lso_write_bits_t {
1168  uint8_t mask[1];
1169 
1173  uint8_t value[1];
1174 
1176 
1180 typedef struct odp_lso_profile_param_t {
1192 
1205  struct {
1207  struct {
1212 
1214  uint32_t offset;
1215 
1219  uint8_t size;
1220 
1222  union {
1224  struct {
1232  };
1234 
1236  uint8_t num_custom;
1237 
1239 
1241 
1250 
1252 
1256 typedef struct odp_pktio_info_t {
1258  const char *name;
1259 
1261  const char *drv_name;
1262 
1265 
1268 
1270 
1278 #define ODP_PKTIO_LINK_SPEED_UNKNOWN 0
1280 #define ODP_PKTIO_LINK_SPEED_10M 10
1282 #define ODP_PKTIO_LINK_SPEED_100M 100
1284 #define ODP_PKTIO_LINK_SPEED_1G 1000
1286 #define ODP_PKTIO_LINK_SPEED_2_5G 2500
1288 #define ODP_PKTIO_LINK_SPEED_5G 5000
1290 #define ODP_PKTIO_LINK_SPEED_10G 10000
1292 #define ODP_PKTIO_LINK_SPEED_20G 20000
1294 #define ODP_PKTIO_LINK_SPEED_25G 25000
1296 #define ODP_PKTIO_LINK_SPEED_40G 40000
1298 #define ODP_PKTIO_LINK_SPEED_50G 50000
1300 #define ODP_PKTIO_LINK_SPEED_56G 56000
1302 #define ODP_PKTIO_LINK_SPEED_100G 100000
1304 #define ODP_PKTIO_LINK_SPEED_200G 200000
1306 #define ODP_PKTIO_LINK_SPEED_400G 400000
1307 
1318 
1320 
1329 
1331 
1335 typedef struct odp_pktio_link_info_t {
1345  const char *media;
1355  uint32_t speed;
1359 
1364 #ifdef __cplusplus
1365 }
1366 #endif
1367 
1368 #include <odp/visibility_end.h>
1369 #endif
ODP packet.
ODP pool.
ODP queue.
Standard C language types and definitions for ODP.
struct odp_pktio_capability_t odp_pktio_capability_t
Packet IO capabilities.
odp_lso_protocol_t
LSO protocol options.
struct odp_lso_write_bits_t odp_lso_write_bits_t
Parameters for ODP_LSO_WRITE_BITS custom operation.
#define ODP_PKTOUT_MAX_QUEUES
Maximum number of packet output queues supported by the API.
struct odp_pktio_param_t odp_pktio_param_t
Packet IO parameters.
struct odp_pktout_queue_param_t odp_pktout_queue_param_t
Packet output queue parameters.
struct odp_lso_profile_param_t odp_lso_profile_param_t
LSO profile parameters.
struct odp_pktin_vector_capability_t odp_pktin_vector_capability_t
Packet input vector capabilities.
struct odp_pktio_link_info_t odp_pktio_link_info_t
Packet IO link information.
#define ODP_LSO_MAX_CUSTOM
Maximum number of custom LSO fields supported by ODP API.
odp_pktout_mode_t
Packet output mode.
union odp_pktout_config_opt_t odp_pktout_config_opt_t
Packet output configuration options bit field.
struct odp_pktio_info_t odp_pktio_info_t
Packet IO information.
odp_pktio_link_duplex_t
Duplex mode.
struct odp_pktin_queue_param_t odp_pktin_queue_param_t
Packet input queue parameters.
odp_pktio_link_autoneg_t
Autonegotiation mode.
odp_lso_modify_t
LSO custom modification options.
struct odp_pktio_config_t odp_pktio_config_t
Packet IO configuration options.
struct odp_lso_capability_t odp_lso_capability_t
Large Send Offload (LSO) capabilities.
#define ODP_PKTIN_MAX_QUEUES
Maximum number of packet input queues supported by the API.
union odp_pktin_config_opt_t odp_pktin_config_opt_t
Packet input configuration options bit field.
union odp_pktin_hash_proto_t odp_pktin_hash_proto_t
Packet input hash protocols.
struct odp_pktio_parser_config_t odp_pktio_parser_config_t
Parser configuration.
odp_pktio_op_mode_t
Packet IO operation mode.
union odp_pktio_set_op_t odp_pktio_set_op_t
Packet IO set operations.
odp_pktio_link_pause_t
Ethernet flow control modes.
struct odp_pktin_queue_param_ovr_t odp_pktin_queue_param_ovr_t
Packet input queue parameters override.
odp_pktin_mode_t
Packet input mode.
struct odp_pktin_vector_config_t odp_pktin_vector_config_t
Packet input vector configuration.
odp_pktio_link_status_t
Link status.
@ ODP_LSO_PROTO_IPV4
LSO performs IPv4 fragmentation.
@ ODP_LSO_PROTO_NONE
Protocol not selected.
@ ODP_LSO_PROTO_IPV6
LSO performs IPv6 fragmentation.
@ ODP_LSO_PROTO_TCP_IPV4
LSO performs TCP segmentation on top of IPv4.
@ ODP_LSO_PROTO_CUSTOM
Custom protocol.
@ ODP_LSO_PROTO_SCTP_IPV4
LSO performs SCTP segmentation on top of IPv4.
@ ODP_LSO_PROTO_TCP_IPV6
LSO performs TCP segmentation on top of IPv6.
@ ODP_LSO_PROTO_SCTP_IPV6
LSO performs SCTP segmentation on top of IPv6.
@ ODP_PKTOUT_MODE_DIRECT
Direct packet output on the interface.
@ ODP_PKTOUT_MODE_TM
Packet output through traffic manager API.
@ ODP_PKTOUT_MODE_QUEUE
Packet output through event queues.
@ ODP_PKTOUT_MODE_DISABLED
Application will never send to this interface.
@ ODP_PKTIO_LINK_DUPLEX_HALF
Half duplex mode.
@ ODP_PKTIO_LINK_DUPLEX_FULL
Full duplex mode.
@ ODP_PKTIO_LINK_DUPLEX_UNKNOWN
Link duplex mode is unknown.
@ ODP_PKTIO_LINK_AUTONEG_UNKNOWN
Autonegotiation state unknown.
@ ODP_PKTIO_LINK_AUTONEG_OFF
Autonegotiation disabled.
@ ODP_PKTIO_LINK_AUTONEG_ON
Autonegotiation enabled.
@ ODP_LSO_ADD_SEGMENT_NUM
Add current segment number.
@ ODP_LSO_WRITE_BITS
Write bits in the first, middle and last segment.
@ ODP_LSO_ADD_PAYLOAD_OFFSET
Add number of payload bytes in all previous segments.
@ ODP_LSO_ADD_PAYLOAD_LEN
Add number of payload bytes in the segment.
@ ODP_PKTIO_OP_MT_UNSAFE
Not multithread safe operation.
@ ODP_PKTIO_OP_MT
Multithread safe operation.
@ ODP_PKTIO_LINK_PFC_ON
Priority-based Flow Control (PFC) enabled.
@ ODP_PKTIO_LINK_PAUSE_UNKNOWN
Flow control mode is unknown.
@ ODP_PKTIO_LINK_PAUSE_OFF
No flow control.
@ ODP_PKTIO_LINK_PAUSE_ON
Pause frame flow control enabled.
@ ODP_PKTIN_MODE_DIRECT
Direct packet input from the interface.
@ ODP_PKTIN_MODE_QUEUE
Packet input through plain event queues.
@ ODP_PKTIN_MODE_DISABLED
Application will never receive from this interface.
@ ODP_PKTIN_MODE_SCHED
Packet input through scheduler and scheduled event queues.
@ ODP_PKTIO_LINK_STATUS_DOWN
Link status is down.
@ ODP_PKTIO_LINK_STATUS_UP
Link status is up.
@ ODP_PKTIO_LINK_STATUS_UNKNOWN
Link status is unknown.
odp_proto_layer_t
Protocol layer.
int odp_schedule_group_t
Scheduler thread group.
bool odp_bool_t
Boolean type.
odp_support_t
ODP support.
ODP packet IO stats.
ODP REASSEMBLY API - platform specific header.
Large Send Offload (LSO) capabilities.
uint32_t max_payload_len
Maximum payload length per an LSO generated packet (in bytes).
uint32_t max_packet_segments
Maximum number of segments in an input packet.
uint32_t max_segments
Maximum number of segments an LSO operation may create.
uint32_t max_profiles
Maximum number of LSO profiles.
uint32_t sctp_ipv4
ODP_LSO_PROTO_SCTP_IPV4 support.
struct odp_lso_capability_t::@112 mod_op
Supported LSO custom modification options.
uint32_t max_profiles_per_pktio
Maximum number of LSO profiles per packet IO interface.
uint16_t add_payload_len
ODP_LSO_ADD_PAYLOAD_LEN support.
uint8_t max_num_custom
Maximum number of custom fields supported per LSO profile.
uint16_t write_bits
ODP_LSO_WRITE_BITS support.
uint32_t tcp_ipv4
ODP_LSO_PROTO_TCP_IPV4 support.
uint16_t add_segment_num
ODP_LSO_ADD_SEGMENT_NUM support.
uint32_t ipv4
ODP_LSO_PROTO_IPV4 support.
uint32_t max_payload_offset
Maximum supported offset to the packet payload (in bytes).
uint32_t tcp_ipv6
ODP_LSO_PROTO_TCP_IPV6 support.
uint32_t custom
ODP_LSO_PROTO_CUSTOM support.
struct odp_lso_capability_t::@113 proto
Supported LSO protocol options.
uint32_t sctp_ipv6
ODP_LSO_PROTO_SCTP_IPV6 support.
uint32_t ipv6
ODP_LSO_PROTO_IPV6 support.
uint16_t add_payload_offset
ODP_LSO_ADD_PAYLOAD_OFFSET support.
uint8_t num_custom
Number of custom fields specified.
odp_lso_protocol_t lso_proto
Segmentation protocol.
struct odp_lso_profile_param_t::@118::@119::@120::@122 write_bits
Parameters for ODP_LSO_WRITE_BITS operation.
uint32_t offset
Field offset in bytes from packet start.
struct odp_lso_profile_param_t::@118::@119 field[ODP_LSO_MAX_CUSTOM]
Custom field to be modified by LSO.
odp_lso_write_bits_t middle_seg
bits to write in middle segments
odp_lso_write_bits_t first_seg
bits to write in the first segment
odp_lso_write_bits_t last_seg
bits to write in the last segment
struct odp_lso_profile_param_t::@118 custom
Custom fields.
odp_lso_modify_t mod_op
Field modify operation.
uint8_t size
Field size in bytes.
Parameters for ODP_LSO_WRITE_BITS custom operation.
uint8_t value[1]
Value to be written using the mask: new_value[n] = (old_value[n] & ~mask[n]) | (value[n] & mask[n])
uint8_t mask[1]
Bitmask to select which bits to write.
Packet input queue parameters override.
odp_schedule_group_t group
Override for schedule group in odp_schedule_param_t.
Packet input queue parameters.
uint32_t num_queues
Number of input queues to be created.
odp_pktio_op_mode_t op_mode
Operation mode.
odp_queue_param_t queue_param
Queue parameters.
odp_pktin_queue_param_ovr_t * queue_param_ovr
Queue parameters override.
odp_pktin_hash_proto_t hash_proto
Protocol field selection for hashing.
uint32_t queue_size[ODP_PKTIN_MAX_QUEUES]
Input queue size array.
odp_bool_t hash_enable
Enable flow hashing.
odp_bool_t classifier_enable
Enable classifier.
odp_pktin_vector_config_t vector
Packet input vector configuration.
Packet input vector capabilities.
uint64_t max_tmo_ns
Maximum timeout in nanoseconds for the producer to wait for the vector of packets.
uint64_t min_tmo_ns
Minimum value allowed to be configured to odp_pktin_vector_config_t::max_tmo_ns.
uint32_t min_size
Minimum value allowed to be configured to odp_pktin_vector_config_t::max_size.
uint32_t max_size
Maximum number of packets that can be accumulated into a packet vector by a producer.
odp_support_t supported
Packet input vector availability.
Packet input vector configuration.
odp_bool_t enable
Enable packet input vector.
uint32_t max_size
Maximum number of packets in a vector.
uint64_t max_tmo_ns
Maximum time to wait for packets.
odp_bool_t queue_type_sched
Scheduled queue support.
odp_bool_t equal
Equal maximum frame length for both packet input and output.
uint32_t mode_poll
Packet transmit completion mode ODP_PACKET_TX_COMPL_POLL support.
struct odp_pktio_capability_t::@114 maxlen
Supported frame lengths for odp_pktio_maxlen_set()
odp_pktio_set_op_t set_op
Supported set operations.
uint32_t pfc_tx
Generation of PFC frames.
uint32_t max_output
Maximum valid value for 'maxlen_output'.
uint32_t pfc_rx
Reception of PFC frames.
odp_pktin_vector_capability_t vector
Packet input vector capability.
uint32_t max_input_queues
Maximum number of input queues.
uint32_t max_input
Maximum valid value for 'maxlen_input'.
struct odp_pktio_capability_t::@117 flow_control
Supported flow control modes.
odp_pktio_config_t config
Supported pktio configuration options.
uint32_t min_output
Minimum valid value for 'maxlen_output'.
uint32_t max_output_queue_size
Maximum output queue size.
uint32_t max_output_queues
Maximum number of output queues.
uint32_t max_compl_id
Maximum supported completion ID value.
uint32_t min_output_queue_size
Minimum output queue size.
uint64_t max_tx_aging_tmo_ns
Max Tx aging timeout in nano seconds supported when packet aging feature is supported.
uint32_t dont_free
Packet free control option ODP_PACKET_FREE_CTRL_DONT_FREE support with odp_packet_free_ctrl_set().
uint32_t min_input
Minimum valid value for 'maxlen_input'.
odp_pktio_stats_capability_t stats
Statistics counters capabilities.
struct odp_pktio_capability_t::@115 tx_compl
Supported packet Tx completion options.
odp_lso_capability_t lso
LSO capabilities.
uint32_t mode_event
Packet transmit completion mode ODP_PACKET_TX_COMPL_EVENT support.
uint32_t max_input_queue_size
Maximum input queue size.
struct odp_pktio_capability_t::@116 free_ctrl
Supported packet free control options.
odp_bool_t queue_type_plain
Plain queue support.
uint32_t pause_tx
Generation of traditional Ethernet pause frames.
uint32_t pause_rx
Reception of traditional Ethernet pause frames.
uint32_t min_input_queue_size
Minimum input queue size.
odp_reass_capability_t reassembly
Packet input reassembly capability.
Packet IO configuration options.
struct odp_pktio_config_t::@109 flow_control
Link flow control configuration.
uint32_t max_compl_id
Maximum completion index.
uint32_t mode_event
Enable packet transmit completion events.
odp_pktio_link_pause_t pause_tx
Transmission of flow control frames.
struct odp_pktio_config_t::@110 tx_compl
Packet transmit completion configuration.
odp_reass_config_t reassembly
Packet input reassembly configuration.
odp_pktout_config_opt_t pktout
Packet output configuration options bit field.
odp_bool_t enable_loop
Interface loopback mode.
uint32_t mode_poll
Enable packet transmit completion check through polling.
odp_pktio_link_pause_t pause_rx
Reception of flow control frames.
odp_bool_t enable_lso
Enable Large Send Offload (LSO)
odp_pktio_parser_config_t parser
Packet input parser configuration.
odp_bool_t outbound_ipsec
Outbound IPSEC inlined with packet output.
odp_pktin_config_opt_t pktin
Packet input configuration options bit field.
odp_bool_t inbound_ipsec
Inbound IPSEC inlined with packet input.
Packet IO information.
const char * drv_name
Packet IO driver name (implementation specific)
odp_pktio_param_t param
Packet IO parameters.
odp_pool_t pool
Packet pool.
const char * name
Packet IO device name.
Packet IO parameters.
odp_pktin_mode_t in_mode
Packet input mode.
odp_pktout_mode_t out_mode
Packet output mode.
odp_proto_layer_t layer
Protocol parsing level in packet input.
Packet IO statistics capabilities.
Packet output queue parameters.
odp_pktio_op_mode_t op_mode
Operation mode.
uint32_t queue_size[ODP_PKTOUT_MAX_QUEUES]
Output queue size array.
uint32_t num_queues
Number of output queues to be created.
ODP Queue parameters.
Reassembly capabilities.
Fragment reassembly configuration.
Packet input configuration options bit field.
uint64_t ts_all
Timestamp all packets on packet input.
uint64_t ts_ptp
Timestamp (at least) IEEE1588 / PTP packets on packet input.
struct odp_pktin_config_opt_t::@107 bit
Option flags.
uint64_t ipv4_chksum
Check IPv4 header checksum on packet input.
uint64_t all_bits
All bits of the bit field structure.
uint64_t drop_sctp_err
Drop packets with a SCTP error on packet input.
uint64_t drop_udp_err
Drop packets with a UDP error on packet input.
uint64_t udp_chksum
Check UDP checksum on packet input.
uint64_t drop_ipv4_err
Drop packets with an IPv4 error on packet input.
uint64_t tcp_chksum
Check TCP checksum on packet input.
uint64_t sctp_chksum
Check SCTP checksum on packet input.
uint64_t drop_ipv6_err
Drop packets with an IPv6 error on packet input.
uint64_t drop_tcp_err
Drop packets with a TCP error on packet input.
Packet input hash protocols.
uint32_t all_bits
All bits of the bit field structure.
struct odp_pktin_hash_proto_t::@106 proto
Protocol header fields for hashing.
uint32_t ipv4_tcp
IPv4 addresses and TCP port numbers.
uint32_t ipv6_tcp
IPv6 addresses and TCP port numbers.
uint32_t ipv4_udp
IPv4 addresses and UDP port numbers.
uint32_t ipv6
IPv6 addresses.
uint32_t ipv6_udp
IPv6 addresses and UDP port numbers.
uint32_t ipv4
IPv4 addresses.
Packet IO set operations.
uint32_t maxlen
Maximum frame length.
struct odp_pktio_set_op_t::@111 op
Operation flags.
uint32_t all_bits
All bits of the bit field structure.
uint32_t skip_offset
Per port header offset(skip)set.
uint32_t promisc_mode
Promiscuous mode.
uint32_t mac_addr
MAC address
Packet output configuration options bit field.
struct odp_pktout_config_opt_t::@108 bit
Option flags for packet output.
uint64_t aging_ena
Enable packet aging and drop.
uint64_t sctp_chksum_ena
Enable SCTP checksum insertion.
uint64_t tcp_chksum
Insert TCP checksum on packet by default.
uint64_t proto_stats_ena
Enable packet protocol stats update.
uint64_t no_packet_refs
Packet references not used on packet output.
uint64_t sctp_chksum
Insert SCTP checksum on packet by default.
uint64_t all_bits
All bits of the bit field structure.
uint64_t ts_ena
Enable Tx timestamp capture.
uint64_t ipv4_chksum
Insert IPv4 header checksum by default.
uint64_t ipv4_chksum_ena
Enable IPv4 header checksum insertion.
uint64_t tcp_chksum_ena
Enable TCP checksum insertion.
uint64_t udp_chksum
Insert UDP checksum on packet by default.
uint64_t udp_chksum_ena
Enable UDP checksum insertion.