API Reference Manual  1.45.0
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. More...
 
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.
 
      const void *   val_end
 End value of the range.
 
   }   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. More...
 

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

◆ 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.

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.

Definition at line 297 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: