|
API Reference Manual
1.48.0
|
ODP packet descriptor. More...
#include <odp/visibility_begin.h>#include <odp/api/event_types.h>#include <odp/api/packet_types.h>#include <odp/api/packet_io_types.h>#include <odp/api/pool_types.h>#include <odp/api/proto_stats_types.h>#include <odp/api/std_types.h>#include <odp/api/time_types.h>#include <odp/visibility_end.h>Go to the source code of this file.
Functions | |
| odp_event_subtype_t | odp_packet_subtype (odp_packet_t packet) |
| Event subtype of a packet. More... | |
| odp_packet_t | odp_packet_alloc (odp_pool_t pool, uint32_t len) |
| Allocate a packet from a packet pool. More... | |
| int | odp_packet_alloc_multi (odp_pool_t pool, uint32_t len, odp_packet_t pkt[], int num) |
| Allocate multiple packets from a packet pool. More... | |
| void | odp_packet_free (odp_packet_t pkt) |
| Free packet. More... | |
| void | odp_packet_free_multi (const odp_packet_t pkt[], int num) |
| Free multiple packets. More... | |
| void | odp_packet_free_sp (const odp_packet_t pkt[], int num) |
| Free multiple packets to the same pool. More... | |
| int | odp_packet_reset (odp_packet_t pkt, uint32_t len) |
| Reset packet. More... | |
| uint32_t | odp_packet_reset_max_len (odp_packet_t pkt) |
| Maximum packet data reset length. More... | |
| void | odp_packet_reset_meta (odp_packet_t pkt) |
| Reset packet metadata. More... | |
| odp_packet_t | odp_packet_from_event (odp_event_t ev) |
| Get packet handle from event. More... | |
| void | odp_packet_from_event_multi (odp_packet_t pkt[], const odp_event_t ev[], int num) |
| Convert multiple packet events to packet handles. More... | |
| odp_event_t | odp_packet_to_event (odp_packet_t pkt) |
| Convert packet handle to event. More... | |
| void | odp_packet_to_event_multi (const odp_packet_t pkt[], odp_event_t ev[], int num) |
| Convert multiple packet handles to events. More... | |
| int | odp_packet_reass_info (odp_packet_t pkt, odp_packet_reass_info_t *info) |
| Get information about successful reassembly offload that has happened. More... | |
| int | odp_packet_reass_partial_state (odp_packet_t pkt, odp_packet_t frags[], odp_packet_reass_partial_state_t *res) |
| Get partial reassembly state from a packet. More... | |
| void * | odp_packet_head (odp_packet_t pkt) |
| Packet head address. More... | |
| uint32_t | odp_packet_buf_len (odp_packet_t pkt) |
| Total packet buffer length. More... | |
| void * | odp_packet_data (odp_packet_t pkt) |
| Packet data pointer. More... | |
| uint32_t | odp_packet_seg_len (odp_packet_t pkt) |
| Packet data length following the data pointer. More... | |
| void * | odp_packet_data_seg_len (odp_packet_t pkt, uint32_t *seg_len) |
| Packet data pointer with segment length. More... | |
| uint32_t | odp_packet_len (odp_packet_t pkt) |
| Packet data length. More... | |
| uint32_t | odp_packet_headroom (odp_packet_t pkt) |
| Packet headroom length. More... | |
| uint32_t | odp_packet_tailroom (odp_packet_t pkt) |
| Packet tailroom length. More... | |
| void * | odp_packet_tail (odp_packet_t pkt) |
| Packet tailroom pointer. More... | |
| void * | odp_packet_offset (odp_packet_t pkt, uint32_t offset, uint32_t *len, odp_packet_seg_t *seg) |
| Packet offset pointer. More... | |
| void | odp_packet_prefetch (odp_packet_t pkt, uint32_t offset, uint32_t len) |
| Packet data prefetch. More... | |
| void * | odp_packet_push_head (odp_packet_t pkt, uint32_t len) |
| Push out packet head. More... | |
| void * | odp_packet_pull_head (odp_packet_t pkt, uint32_t len) |
| Pull in packet head. More... | |
| void * | odp_packet_push_tail (odp_packet_t pkt, uint32_t len) |
| Push out packet tail. More... | |
| void * | odp_packet_pull_tail (odp_packet_t pkt, uint32_t len) |
| Pull in packet tail. More... | |
| int | odp_packet_extend_head (odp_packet_t *pkt, uint32_t len, void **data_ptr, uint32_t *seg_len) |
| Extend packet head. More... | |
| int | odp_packet_trunc_head (odp_packet_t *pkt, uint32_t len, void **data_ptr, uint32_t *seg_len) |
| Truncate packet head. More... | |
| int | odp_packet_extend_tail (odp_packet_t *pkt, uint32_t len, void **data_ptr, uint32_t *seg_len) |
| Extend packet tail. More... | |
| int | odp_packet_trunc_tail (odp_packet_t *pkt, uint32_t len, void **tail_ptr, uint32_t *tailroom) |
| Truncate packet tail. More... | |
| int | odp_packet_add_data (odp_packet_t *pkt, uint32_t offset, uint32_t len) |
| Add data into an offset. More... | |
| int | odp_packet_rem_data (odp_packet_t *pkt, uint32_t offset, uint32_t len) |
| Remove data from an offset. More... | |
| int | odp_packet_align (odp_packet_t *pkt, uint32_t offset, uint32_t len, uint32_t align) |
| Align packet data. More... | |
| int | odp_packet_is_segmented (odp_packet_t pkt) |
| Tests if packet is segmented. More... | |
| int | odp_packet_num_segs (odp_packet_t pkt) |
| Number of segments. More... | |
| odp_packet_seg_t | odp_packet_first_seg (odp_packet_t pkt) |
| First segment in packet. More... | |
| odp_packet_seg_t | odp_packet_last_seg (odp_packet_t pkt) |
| Last segment in packet. More... | |
| odp_packet_seg_t | odp_packet_next_seg (odp_packet_t pkt, odp_packet_seg_t seg) |
| Next segment in packet. More... | |
| void * | odp_packet_seg_data (odp_packet_t pkt, odp_packet_seg_t seg) |
| Segment data pointer. More... | |
| uint32_t | odp_packet_seg_data_len (odp_packet_t pkt, odp_packet_seg_t seg) |
| Segment data length. More... | |
| int | odp_packet_concat (odp_packet_t *dst, odp_packet_t src) |
| Concatenate two packets. More... | |
| int | odp_packet_split (odp_packet_t *pkt, uint32_t len, odp_packet_t *tail) |
| Split packet into two packets. More... | |
| void * | odp_packet_buf_head (odp_packet_buf_t pkt_buf) |
| Packet buffer head pointer. More... | |
| uint32_t | odp_packet_buf_size (odp_packet_buf_t pkt_buf) |
| Packet buffer size in bytes. More... | |
| uint32_t | odp_packet_buf_data_offset (odp_packet_buf_t pkt_buf) |
| Packet buffer data offset. More... | |
| uint32_t | odp_packet_buf_data_len (odp_packet_buf_t pkt_buf) |
| Packet buffer data length in bytes. More... | |
| void | odp_packet_buf_data_set (odp_packet_buf_t pkt_buf, uint32_t data_offset, uint32_t data_len) |
| Packet buffer data set. More... | |
| odp_packet_buf_t | odp_packet_buf_from_head (odp_pool_t pool, void *head) |
| Convert packet buffer head pointer to handle. More... | |
| uint32_t | odp_packet_disassemble (odp_packet_t pkt, odp_packet_buf_t pkt_buf[], uint32_t num) |
| Disassemble packet into packet buffers. More... | |
| odp_packet_t | odp_packet_reassemble (odp_pool_t pool, odp_packet_buf_t pkt_buf[], uint32_t num) |
| Reassemble packet from packet buffers. More... | |
| odp_packet_t | odp_packet_ref_static (odp_packet_t pkt) |
| Create a static reference to a packet. More... | |
| odp_packet_t | odp_packet_ref (odp_packet_t pkt, uint32_t offset) |
| Create a reference to a packet. More... | |
| odp_packet_t | odp_packet_ref_pkt (odp_packet_t pkt, uint32_t offset, odp_packet_t hdr) |
| Create a reference to a packet with a header packet. More... | |
| int | odp_packet_has_ref (odp_packet_t pkt) |
| Test if packet has multiple references. More... | |
| odp_packet_t | odp_packet_copy (odp_packet_t pkt, odp_pool_t pool) |
| Full copy of a packet. More... | |
| odp_packet_t | odp_packet_copy_part (odp_packet_t pkt, uint32_t offset, uint32_t len, odp_pool_t pool) |
| Partial copy of a packet. More... | |
| int | odp_packet_copy_to_mem (odp_packet_t pkt, uint32_t offset, uint32_t len, void *dst) |
| Copy data from packet to memory. More... | |
| int | odp_packet_copy_from_mem (odp_packet_t pkt, uint32_t offset, uint32_t len, const void *src) |
| Copy data from memory to packet. More... | |
| int | odp_packet_copy_from_pkt (odp_packet_t dst, uint32_t dst_offset, odp_packet_t src, uint32_t src_offset, uint32_t len) |
| Copy data from another packet. More... | |
| int | odp_packet_copy_data (odp_packet_t pkt, uint32_t dst_offset, uint32_t src_offset, uint32_t len) |
| Copy data within packet. More... | |
| int | odp_packet_move_data (odp_packet_t pkt, uint32_t dst_offset, uint32_t src_offset, uint32_t len) |
| Move data within packet. More... | |
| int | odp_packet_parse (odp_packet_t pkt, uint32_t offset, const odp_packet_parse_param_t *param) |
| Parse packet. More... | |
| int | odp_packet_parse_multi (const odp_packet_t pkt[], const uint32_t offset[], int num, const odp_packet_parse_param_t *param) |
| Parse multiple packets. More... | |
| void | odp_packet_parse_result (odp_packet_t pkt, odp_packet_parse_result_t *result) |
| Read parse results. More... | |
| void | odp_packet_parse_result_multi (const odp_packet_t pkt[], odp_packet_parse_result_t *result[], int num) |
| Read parse results from multiple packets. More... | |
| odp_pool_t | odp_packet_pool (odp_packet_t pkt) |
| Packet pool. More... | |
| odp_pktio_t | odp_packet_input (odp_packet_t pkt) |
| Packet input interface. More... | |
| void | odp_packet_input_set (odp_packet_t pkt, odp_pktio_t pktio) |
| Set packet input interface. More... | |
| int | odp_packet_input_index (odp_packet_t pkt) |
| Packet input interface index. More... | |
| void * | odp_packet_user_ptr (odp_packet_t pkt) |
| User context pointer. More... | |
| void | odp_packet_user_ptr_set (odp_packet_t pkt, const void *user_ptr) |
| Set user context pointer. More... | |
| void * | odp_packet_user_area (odp_packet_t pkt) |
| User area address. More... | |
| uint32_t | odp_packet_user_area_size (odp_packet_t pkt) |
| User area size. More... | |
| int | odp_packet_user_flag (odp_packet_t pkt) |
| Check user flag. More... | |
| void | odp_packet_user_flag_set (odp_packet_t pkt, int val) |
| Set user flag. More... | |
| void * | odp_packet_l2_ptr (odp_packet_t pkt, uint32_t *len) |
| Layer 2 start pointer. More... | |
| uint32_t | odp_packet_l2_offset (odp_packet_t pkt) |
| Layer 2 start offset. More... | |
| int | odp_packet_l2_offset_set (odp_packet_t pkt, uint32_t offset) |
| Set layer 2 start offset. More... | |
| void * | odp_packet_l3_ptr (odp_packet_t pkt, uint32_t *len) |
| Layer 3 start pointer. More... | |
| uint32_t | odp_packet_l3_offset (odp_packet_t pkt) |
| Layer 3 start offset. More... | |
| int | odp_packet_l3_offset_set (odp_packet_t pkt, uint32_t offset) |
| Set layer 3 start offset. More... | |
| void * | odp_packet_l4_ptr (odp_packet_t pkt, uint32_t *len) |
| Layer 4 start pointer. More... | |
| uint32_t | odp_packet_l4_offset (odp_packet_t pkt) |
| Layer 4 start offset. More... | |
| int | odp_packet_l4_offset_set (odp_packet_t pkt, uint32_t offset) |
| Set layer 4 start offset. More... | |
| odp_proto_l2_type_t | odp_packet_l2_type (odp_packet_t pkt) |
| Layer 2 protocol type. More... | |
| odp_proto_l3_type_t | odp_packet_l3_type (odp_packet_t pkt) |
| Layer 3 protocol type. More... | |
| odp_proto_l4_type_t | odp_packet_l4_type (odp_packet_t pkt) |
| Layer 4 protocol type. More... | |
| odp_packet_chksum_status_t | odp_packet_l3_chksum_status (odp_packet_t pkt) |
| Layer 3 checksum check status. More... | |
| odp_packet_chksum_status_t | odp_packet_l4_chksum_status (odp_packet_t pkt) |
| Layer 4 checksum check status. More... | |
| void | odp_packet_l3_chksum_insert (odp_packet_t pkt, int insert) |
| Layer 3 checksum insertion override. More... | |
| void | odp_packet_l4_chksum_insert (odp_packet_t pkt, int insert) |
| Layer 4 checksum insertion override. More... | |
| uint16_t | odp_packet_ones_comp (odp_packet_t pkt, odp_packet_data_range_t *range) |
| Ones' complement sum of packet data. More... | |
| uint32_t | odp_packet_flow_hash (odp_packet_t pkt) |
| Packet flow hash value. More... | |
| void | odp_packet_flow_hash_set (odp_packet_t pkt, uint32_t flow_hash) |
| Set packet flow hash value. More... | |
| odp_time_t | odp_packet_ts (odp_packet_t pkt) |
| Packet timestamp. More... | |
| void | odp_packet_ts_set (odp_packet_t pkt, odp_time_t timestamp) |
| Set packet timestamp. More... | |
| void | odp_packet_ts_request (odp_packet_t pkt, int enable) |
| Request Tx timestamp capture. More... | |
| odp_packet_color_t | odp_packet_color (odp_packet_t pkt) |
| Get packet color. More... | |
| void | odp_packet_color_set (odp_packet_t pkt, odp_packet_color_t color) |
| Set packet color. More... | |
| odp_bool_t | odp_packet_drop_eligible (odp_packet_t pkt) |
| Get drop eligible status. More... | |
| void | odp_packet_drop_eligible_set (odp_packet_t pkt, odp_bool_t status) |
| Set drop eligible status. More... | |
| int8_t | odp_packet_shaper_len_adjust (odp_packet_t pkt) |
| Get shaper length adjustment. More... | |
| void | odp_packet_shaper_len_adjust_set (odp_packet_t pkt, int8_t adj) |
| Set shaper length adjustment. More... | |
| uint64_t | odp_packet_cls_mark (odp_packet_t pkt) |
| Classification mark value. More... | |
| int | odp_packet_lso_request (odp_packet_t pkt, const odp_packet_lso_opt_t *lso_opt) |
| Request Large Send Offload (LSO) for a packet. More... | |
| void | odp_packet_lso_request_clr (odp_packet_t pkt) |
| Clear LSO request from a packet. More... | |
| int | odp_packet_has_lso_request (odp_packet_t pkt) |
| Check if LSO is requested for the packet. More... | |
| uint32_t | odp_packet_payload_offset (odp_packet_t pkt) |
| Payload data offset. More... | |
| int | odp_packet_payload_offset_set (odp_packet_t pkt, uint32_t offset) |
| Set payload data start offset. More... | |
| void | odp_packet_aging_tmo_set (odp_packet_t pkt, uint64_t tmo_ns) |
| Enable or disable Tx packet aging. More... | |
| uint64_t | odp_packet_aging_tmo (odp_packet_t pkt) |
| Check if packet has Tx aging drop enabled. More... | |
| int | odp_packet_tx_compl_request (odp_packet_t pkt, const odp_packet_tx_compl_opt_t *opt) |
| Request packet transmit completion. More... | |
| int | odp_packet_has_tx_compl_request (odp_packet_t pkt) |
| Check if packet transmit completion is requested. More... | |
| void | odp_packet_free_ctrl_set (odp_packet_t pkt, odp_packet_free_ctrl_t ctrl) |
| Set packet free control option. More... | |
| odp_packet_free_ctrl_t | odp_packet_free_ctrl (odp_packet_t pkt) |
| Returns packet free control option value. More... | |
| void | odp_packet_proto_stats_request (odp_packet_t pkt, odp_packet_proto_stats_opt_t *opt) |
| Request packet proto stats. More... | |
| odp_proto_stats_t | odp_packet_proto_stats (odp_packet_t pkt) |
| Get proto stats object. More... | |
| odp_packet_vector_t | odp_packet_vector_from_event (odp_event_t ev) |
| Get packet vector handle from event. More... | |
| odp_event_t | odp_packet_vector_to_event (odp_packet_vector_t pktv) |
| Convert packet vector handle to event. More... | |
| odp_packet_vector_t | odp_packet_vector_alloc (odp_pool_t pool) |
| Allocate a packet vector from a packet vector pool. More... | |
| void | odp_packet_vector_free (odp_packet_vector_t pktv) |
| Free packet vector. More... | |
| uint32_t | odp_packet_vector_tbl (odp_packet_vector_t pktv, odp_packet_t **pkt_tbl) |
| Get packet vector table. More... | |
| uint32_t | odp_packet_vector_size (odp_packet_vector_t pktv) |
| Number of packets in a vector. More... | |
| void | odp_packet_vector_size_set (odp_packet_vector_t pktv, uint32_t size) |
| Set the number of packets stored in a vector. More... | |
| void * | odp_packet_vector_user_area (odp_packet_vector_t pktv) |
| Packet vector user area. More... | |
| int | odp_packet_vector_user_flag (odp_packet_vector_t pktv) |
| Check user flag. More... | |
| void | odp_packet_vector_user_flag_set (odp_packet_vector_t pktv, int val) |
| Set user flag. More... | |
| int | odp_packet_vector_valid (odp_packet_vector_t pktv) |
| Check that packet vector is valid. More... | |
| odp_pool_t | odp_packet_vector_pool (odp_packet_vector_t pktv) |
| Packet vector pool. More... | |
| void | odp_packet_vector_print (odp_packet_vector_t pktv) |
| Print packet vector debug information. More... | |
| uint64_t | odp_packet_vector_to_u64 (odp_packet_vector_t pktv) |
| Get printable value for packet vector handle. More... | |
| odp_packet_reass_status_t | odp_packet_reass_status (odp_packet_t pkt) |
| Check reassembly status of the packet. More... | |
| odp_packet_tx_compl_t | odp_packet_tx_compl_from_event (odp_event_t ev) |
| Get packet Tx completion handle from event. More... | |
| odp_event_t | odp_packet_tx_compl_to_event (odp_packet_tx_compl_t tx_compl) |
| Convert packet Tx completion to event. More... | |
| void | odp_packet_tx_compl_free (odp_packet_tx_compl_t tx_compl) |
| Free packet Tx completion. More... | |
| void * | odp_packet_tx_compl_user_ptr (odp_packet_tx_compl_t tx_compl) |
| User context pointer. More... | |
| int | odp_packet_tx_compl_done (odp_pktio_t pktio, uint32_t compl_id) |
| Check packet transmit completion. More... | |
| void | odp_packet_print (odp_packet_t pkt) |
| Print packet debug information. More... | |
| void | odp_packet_print_data (odp_packet_t pkt, uint32_t offset, uint32_t len) |
| Print packet data. More... | |
| int | odp_packet_is_valid (odp_packet_t pkt) |
| Check that packet is valid. More... | |
| uint64_t | odp_packet_to_u64 (odp_packet_t pkt) |
| Get printable value for packet handle. More... | |
| uint64_t | odp_packet_seg_to_u64 (odp_packet_seg_t seg) |
| Get printable value for packet segment handle. More... | |
| uint64_t | odp_packet_tx_compl_to_u64 (odp_packet_tx_compl_t tx_compl) |
| Get printable value for packet Tx completion handle. More... | |
ODP packet descriptor.
Definition in file api/spec/packet.h.