API Reference Manual 1.51.0
Loading...
Searching...
No Matches
odp_pktin_config_opt_t Union Reference

Packet input configuration options bit field. More...

#include <packet_io_types.h>

Data Fields

struct { 
 
   uint64_t   ts_all: 1 
 Timestamp all packets on packet input. More...
 
   uint64_t   ts_ptp: 1 
 Timestamp (at least) IEEE1588 / PTP packets on packet input. More...
 
   uint64_t   ipv4_chksum: 1 
 Check IPv4 header checksum on packet input. More...
 
   uint64_t   udp_chksum: 1 
 Check UDP checksum on packet input. More...
 
   uint64_t   tcp_chksum: 1 
 Check TCP checksum on packet input. More...
 
   uint64_t   sctp_chksum: 1 
 Check SCTP checksum on packet input. More...
 
   uint64_t   drop_ipv4_err: 1 
 Drop packets with an IPv4 error on packet input. More...
 
   uint64_t   drop_ipv6_err: 1 
 Drop packets with an IPv6 error on packet input. More...
 
   uint64_t   drop_udp_err: 1 
 Drop packets with a UDP error on packet input. More...
 
   uint64_t   drop_tcp_err: 1 
 Drop packets with a TCP error on packet input. More...
 
   uint64_t   drop_sctp_err: 1 
 Drop packets with a SCTP error on packet input. More...
 
bit 
 Option flags.
 
uint64_t all_bits
 All bits of the bit field structure.
 

Detailed Description

Packet input configuration options bit field.

Packet input configuration options listed in a bit field structure. Packet input timestamping may be enabled for all packets or at least for those that belong to time synchronization protocol (PTP).

Packet input checksum checking may be enabled or disabled. When it is enabled, implementation will attempt to verify checksum correctness on incoming packets and depending on drop configuration either deliver erroneous packets with appropriate flags set (e.g. odp_packet_has_l3_error(), odp_packet_l3_chksum_status()) or drop those. When packet dropping is enabled, application will never receive a packet with the specified error and may avoid to check the error flag.

If checksum checking is enabled, IPv4 header checksum checking is always done for packets that do not have IP options and L4 checksum checking is done for unfragmented packets that do not have IPv4 options or IPv6 extension headers. In other cases checksum checking may or may not be done. For example, L4 checksum of fragmented packets is typically not checked.

IPv4 checksum checking may be enabled only when parsing level is ODP_PROTO_LAYER_L3 or higher. Similarly, L4 level checksum checking may be enabled only with parsing level ODP_PROTO_LAYER_L4 or higher.

Whether checksum checking was done and whether a checksum was correct can be queried for each received packet with odp_packet_l3_chksum_status() and odp_packet_l4_chksum_status().

Definition at line 399 of file api/spec/packet_io_types.h.

Field Documentation

◆ ts_all

uint64_t odp_pktin_config_opt_t::ts_all

Timestamp all packets on packet input.

Examples
odp_l2fwd.c, odp_packet_dump.c, and odp_ping.c.

Definition at line 403 of file api/spec/packet_io_types.h.

◆ ts_ptp

uint64_t odp_pktin_config_opt_t::ts_ptp

Timestamp (at least) IEEE1588 / PTP packets on packet input.

Definition at line 407 of file api/spec/packet_io_types.h.

◆ ipv4_chksum

uint64_t odp_pktin_config_opt_t::ipv4_chksum

Check IPv4 header checksum on packet input.

Definition at line 410 of file api/spec/packet_io_types.h.

◆ udp_chksum

uint64_t odp_pktin_config_opt_t::udp_chksum

Check UDP checksum on packet input.

Examples
odp_packet_gen.c.

Definition at line 413 of file api/spec/packet_io_types.h.

◆ tcp_chksum

uint64_t odp_pktin_config_opt_t::tcp_chksum

Check TCP checksum on packet input.

Examples
odp_packet_gen.c.

Definition at line 416 of file api/spec/packet_io_types.h.

◆ sctp_chksum

uint64_t odp_pktin_config_opt_t::sctp_chksum

Check SCTP checksum on packet input.

Definition at line 419 of file api/spec/packet_io_types.h.

◆ drop_ipv4_err

uint64_t odp_pktin_config_opt_t::drop_ipv4_err

Drop packets with an IPv4 error on packet input.

Definition at line 422 of file api/spec/packet_io_types.h.

◆ drop_ipv6_err

uint64_t odp_pktin_config_opt_t::drop_ipv6_err

Drop packets with an IPv6 error on packet input.

Definition at line 425 of file api/spec/packet_io_types.h.

◆ drop_udp_err

uint64_t odp_pktin_config_opt_t::drop_udp_err

Drop packets with a UDP error on packet input.

Examples
odp_packet_gen.c.

Definition at line 428 of file api/spec/packet_io_types.h.

◆ drop_tcp_err

uint64_t odp_pktin_config_opt_t::drop_tcp_err

Drop packets with a TCP error on packet input.

Examples
odp_packet_gen.c.

Definition at line 431 of file api/spec/packet_io_types.h.

◆ drop_sctp_err

uint64_t odp_pktin_config_opt_t::drop_sctp_err

Drop packets with a SCTP error on packet input.

Definition at line 434 of file api/spec/packet_io_types.h.

◆ all_bits

uint64_t odp_pktin_config_opt_t::all_bits

All bits of the bit field structure.

This field can be used to set/clear all flags, or bitwise operations over the entire structure.

Examples
odp_sysinfo.c.

Definition at line 442 of file api/spec/packet_io_types.h.


The documentation for this union was generated from the following file: