API Reference Manual 1.51.0
Loading...
Searching...
No Matches
odp_pmr_param_t Struct Reference

Packet Matching Rule parameter structure. More...

#include <classification.h>

Data Fields

odp_cls_pmr_term_t term
 Packet Matching Rule term.
 
odp_bool_t range_term
 True if the value is range and false if match.
 
union { 
 
   struct { 
 
      const void *   value 
 Points to the value to be matched. More...
 
      const void *   mask 
 Mask of the bits to be matched. More...
 
   }   match 
 Parameters for single-valued matches.
 
   struct { 
 
      const void *   val_start 
 Start value of the range. More...
 
      const void *   val_end 
 End value of the range. More...
 
   }   range 
 Parameter for range value matches.
 
};  
 Variant mappings for types of matches.
 
uint32_t val_sz
 Size of the value to be matched.
 
uint32_t offset
 Offset to the value.
 

Detailed Description

Packet Matching Rule parameter structure.

Match value/mask size and endianness are defined in PMR term documentation (see odp_cls_pmr_term_t). Most values and masks are passed in big endian format without data alignment requirement. ODP_PMR_LEN is an exception to this (uint32_t in CPU endian).

Examples
odp_bench_pktio_sp.c, and odp_classifier.c.

Definition at line 278 of file api/spec/classification.h.

Field Documentation

◆ term

odp_cls_pmr_term_t odp_pmr_param_t::term

Packet Matching Rule term.

Examples
odp_bench_pktio_sp.c, and odp_classifier.c.

Definition at line 280 of file api/spec/classification.h.

◆ range_term

odp_bool_t odp_pmr_param_t::range_term

True if the value is range and false if match.

Default is false.

Definition at line 283 of file api/spec/classification.h.

◆ value

const void* odp_pmr_param_t::value

Points to the value to be matched.

Value size and endianness are defined by the term used. Values of protocol fields are defined in big endian format.

Examples
odp_bench_pktio_sp.c, and odp_classifier.c.

Definition at line 293 of file api/spec/classification.h.

◆ mask

const void* odp_pmr_param_t::mask

Mask of the bits to be matched.

The same size and endianness is used than with the value.

Examples
odp_bench_pktio_sp.c, and odp_classifier.c.

Definition at line 297 of file api/spec/classification.h.

◆ val_start

const void* odp_pmr_param_t::val_start

Start value of the range.

Definition at line 303 of file api/spec/classification.h.

◆ val_end

const void* odp_pmr_param_t::val_end

End value of the range.

Definition at line 306 of file api/spec/classification.h.

◆ val_sz

uint32_t odp_pmr_param_t::val_sz

Size of the value to be matched.

Examples
odp_bench_pktio_sp.c, and odp_classifier.c.

Definition at line 311 of file api/spec/classification.h.

◆ offset

uint32_t odp_pmr_param_t::offset

Offset to the value.

Byte offset to the value to be matched in a packet. PMR term defines starting point for the offset. Used only with custom PMR terms, ignored with other terms.

Examples
odp_classifier.c.

Definition at line 319 of file api/spec/classification.h.


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