Azinix

Evl_L4LookupTable_t Struct Reference

A lookup table for finding potentially applicable rules for a packet based on L4 header information. More...

#include <evl.h>


Data Fields

int * tree
int numClasses
var_set_t ** ruleSets
util_int_array_t ** ruleArrays
int * ruleArrayMin
int * ruleArrayMax


Detailed Description

A lookup table for finding potentially applicable rules for a packet based on L4 header information.

A lookup table struct - walk the tree using dest port, src port, dest ip, src ip bits, 8 at a time from MSB, and the terminal will be an index that can be used to get into an array of var_set_t * that is the set of corresponding rules - not L4 rules, the actual rules, or an array of util_int_array_t * that is the same set.

The logic for this is that in some cases we may want the set representation, in others the array representation. specifically, if we are traversing an automaton to see what strings are present, then the set representation is superior. Conversely, for rules with no strings, where we have to traverse the entire set of rules associated with a class derived from the lookup-table, we might as well do it with an array representation.

Definition at line 66 of file evl.h.


Field Documentation

int* Evl_L4LookupTable_t::tree

Definition at line 68 of file evl.h.

int Evl_L4LookupTable_t::numClasses

Definition at line 69 of file evl.h.

var_set_t** Evl_L4LookupTable_t::ruleSets

Definition at line 71 of file evl.h.

util_int_array_t** Evl_L4LookupTable_t::ruleArrays

Definition at line 72 of file evl.h.

int* Evl_L4LookupTable_t::ruleArrayMin

Definition at line 76 of file evl.h.

int* Evl_L4LookupTable_t::ruleArrayMax

Definition at line 77 of file evl.h.