OpenNSL API Guide and Reference Manual
Data Structures | Macros | Typedefs | Enumerations | Functions
fieldX.h File Reference
#include <opennsl/types.h>
#include <opennsl/policer.h>
#include <opennsl/port.h>
#include <opennsl/rx.h>

Go to the source code of this file.

Data Structures

struct  opennsl_field_action_width_s
 Holds which action to set width for, and the size of width to set. More...
 
struct  opennsl_field_aset_s
 Used to specify the actions that can be taken by the entries in a group. More...
 
struct  opennsl_field_group_status_s
 Field Group Status structure. More...
 
struct  opennsl_field_presel_set_s
 Bitmap of all possible preselection specification IDs. More...
 
struct  opennsl_field_qset_s
 Field qset defines the set of fields used for lookup. More...
 

Macros

#define OPENNSL_FIELD_ASET_ADD(aset, q)   SHR_BITSET(((aset).w), (q))
 
#define OPENNSL_FIELD_ASET_INIT(aset)   memset(&(aset), 0, sizeof(opennsl_field_aset_t))
 
#define OPENNSL_FIELD_ASET_REMOVE(aset, q)   SHR_BITCLR(((aset).w), (q))
 
#define OPENNSL_FIELD_ASET_TEST(aset, q)   SHR_BITGET(((aset).w), (q))
 
#define OPENNSL_FIELD_COLOR_BLACK   4
 
#define OPENNSL_FIELD_COLOR_GREEN   1
 
#define OPENNSL_FIELD_COLOR_PRESERVE   0
 
#define OPENNSL_FIELD_COLOR_RED   3
 
#define OPENNSL_FIELD_COLOR_YELLOW   2
 
#define OPENNSL_FIELD_EXACT_MATCH_MASK   (~0)
 Mask parameter value.
 
#define OPENNSL_FIELD_GROUP_PRIO_ANY   -0x7fffffff
 
#define OPENNSL_FIELD_PKT_RES_CONTROL   0x1
 Ethernet control (8808).
 
#define OPENNSL_FIELD_PKT_RES_L2BC   0x3
 L2 broadcast.
 
#define OPENNSL_FIELD_PKT_RES_L2UC   0x4
 L2 unicast.
 
#define OPENNSL_FIELD_PKT_RES_L3MCKNOWN   0x7
 Known L3 multicast.
 
#define OPENNSL_FIELD_PKT_RES_L3MCUNKNOWN   0x6
 Unknown L3 multicast.
 
#define OPENNSL_FIELD_PKT_RES_L3UCKNOWN   0xa
 Known L3 unicast.
 
#define OPENNSL_FIELD_PKT_RES_L3UCUNKNOWN   0xb
 Unknown L3 unicast.
 
#define OPENNSL_FIELD_PKT_RES_UNKNOWN   0x0
 No resolution.
 
#define OPENNSL_FIELD_PRESEL_ADD(presel_set, presel_id)   SHR_BITSET(((presel_set).w), (presel_id))
 
#define OPENNSL_FIELD_PRESEL_INIT(presel_set)   memset(&(presel_set), 0, sizeof(opennsl_field_presel_set_t))
 
#define OPENNSL_FIELD_PRESEL_REMOVE(presel_set, presel_id)   SHR_BITCLR(((presel_set).w), (presel_id))
 
#define OPENNSL_FIELD_PRESEL_SEL_MAX   1024
 Maximum Preselection entries supported.
 
#define OPENNSL_FIELD_PRESEL_TEST(presel_set, presel_id)   SHR_BITGET(((presel_set).w), (presel_id))
 
#define OPENNSL_FIELD_QSET_ADD(qset, q)   SHR_BITSET(((qset).w), (q))
 
#define OPENNSL_FIELD_QSET_INIT(qset)   memset(&(qset), 0, sizeof(opennsl_field_qset_t))
 
#define OPENNSL_FIELD_QSET_REMOVE(qset, q)   SHR_BITCLR(((qset).w), (q))
 
#define OPENNSL_FIELD_QSET_TEST(qset, q)   SHR_BITGET(((qset).w), (q))
 
#define OPENNSL_FIELD_QUALIFY_MAX   (opennslFieldQualifyCount + OPENNSL_FIELD_USER_NUM_UDFS)
 Must be >= opennslFieldQualifyCount.
 
#define OPENNSL_FIELD_QUALIFY_PRESEL   0x40000000
 OR with ID when calling opennsl_field_qualify_* functions to indicate ID is a preselector instead of an entry.
 
#define OPENNSL_FIELD_RANGE_DSTPORT   0x00000002
 Check dest port range.
 
#define OPENNSL_FIELD_RANGE_INNER_VLAN   0x00000080
 Check inner VLAN ID range.
 
#define OPENNSL_FIELD_RANGE_INVERT   0x00000010
 Check for match outside specified port range.
 
#define OPENNSL_FIELD_RANGE_OUTER_VLAN   0x00000040
 Check outer VLAN ID range.
 
#define OPENNSL_FIELD_RANGE_PACKET_LENGTH   0x00000100
 Check packet length range.
 
#define OPENNSL_FIELD_RANGE_REPLACE   0x00000800
 Modify configurations of an existing range checker.
 
#define OPENNSL_FIELD_RANGE_SRCPORT   0x00000001
 Check source port range.
 
#define OPENNSL_FIELD_RANGE_TCP   0x00000004
 Check TCP port range.
 
#define OPENNSL_FIELD_RANGE_UDP   0x00000008
 Check UDP port range.
 
#define OPENNSL_FIELD_TCPCONTROL_ACK   0x10
 Ack field valid.
 
#define OPENNSL_FIELD_TCPCONTROL_FIN   0x01
 No more data.
 
#define OPENNSL_FIELD_TCPCONTROL_MASK   0x3f
 All non-reserved bits.
 
#define OPENNSL_FIELD_TCPCONTROL_PSH   0x08
 Push.
 
#define OPENNSL_FIELD_TCPCONTROL_R40   0x40
 Reserved.
 
#define OPENNSL_FIELD_TCPCONTROL_R80   0x80
 Reserved.
 
#define OPENNSL_FIELD_TCPCONTROL_RST   0x04
 Reset connection.
 
#define OPENNSL_FIELD_TCPCONTROL_SYN   0x02
 Sync seq numbers.
 
#define OPENNSL_FIELD_TCPCONTROL_URG   0x20
 Urgent field valid.
 
#define OPENNSL_FIELD_USER_NUM_UDFS   277
 

Typedefs

typedef enum opennsl_field_action_e opennsl_field_action_t
 opennsl_field_action_e
 
typedef struct
opennsl_field_action_width_s 
opennsl_field_action_width_t
 Holds which action to set width for, and the size of width to set.
 
typedef struct opennsl_field_aset_s opennsl_field_aset_t
 Used to specify the actions that can be taken by the entries in a group.
 
typedef int opennsl_field_entry_t
 Opaque handle to a field entry.
 
typedef enum
opennsl_field_group_mode_e 
opennsl_field_group_mode_t
 Group Modes (single, double or triple wide).
 
typedef struct
opennsl_field_group_status_s 
opennsl_field_group_status_t
 Field Group Status structure.
 
typedef int opennsl_field_group_t
 Opaque handle to a field group.
 
typedef int(* opennsl_field_group_traverse_cb )(int unit, opennsl_field_group_t group, void *user_data)
 
typedef enum opennsl_field_IpFrag_e opennsl_field_IpFrag_t
 Field Qualifier IpFrag (for opennsl_field_qualify_IpFrag).
 
typedef enum
opennsl_field_IpProtocolCommon_e 
opennsl_field_IpProtocolCommon_t
 Field Qualifier IpProtocolCommon (for opennsl_field_qualify_IpProtocolCommon).
 
typedef enum opennsl_field_IpType_e opennsl_field_IpType_t
 Field Qualifier IpType (for opennsl_field_qualify_IpType).
 
typedef struct
opennsl_field_presel_set_s 
opennsl_field_presel_set_t
 Bitmap of all possible preselection specification IDs.
 
typedef int opennsl_field_presel_t
 Opaque handle to a field presel.
 
typedef struct opennsl_field_qset_s opennsl_field_qset_t
 Field qset defines the set of fields used for lookup.
 
typedef enum
opennsl_field_qualify_e 
opennsl_field_qualify_t
 Field Qualifiers.
 
typedef uint32 opennsl_field_range_t
 Opaque handle to a field range.
 
typedef enum opennsl_field_stage_e opennsl_field_stage_t
 Field Stage Type.
 

Enumerations

enum  opennsl_field_action_e {
  opennslFieldActionCosQNew = 0,
  opennslFieldActionCosQCpuNew = 1,
  opennslFieldActionPrioIntNew = 14,
  opennslFieldActionDscpNew = 20,
  opennslFieldActionDscpCancel = 21,
  opennslFieldActionCopyToCpu = 23,
  opennslFieldActionCopyToCpuCancel = 24,
  opennslFieldActionRedirectPort = 29,
  opennslFieldActionRedirectTrunk = 30,
  opennslFieldActionDrop = 39,
  opennslFieldActionDropCancel = 40,
  opennslFieldActionMirrorOverride = 41,
  opennslFieldActionMirrorIngress = 42,
  opennslFieldActionMirrorEgress = 43,
  opennslFieldActionL3Switch = 48,
  opennslFieldActionRpDrop = 52,
  opennslFieldActionRpDropCancel = 53,
  opennslFieldActionRpCopyToCpu = 55,
  opennslFieldActionRpCopyToCpuCancel = 56,
  opennslFieldActionRpDscpNew = 61,
  opennslFieldActionRpDscpCancel = 62,
  opennslFieldActionRpCosQNew = 72,
  opennslFieldActionYpDrop = 84,
  opennslFieldActionYpDropCancel = 85,
  opennslFieldActionYpCopyToCpu = 87,
  opennslFieldActionYpCopyToCpuCancel = 88,
  opennslFieldActionYpDscpNew = 93,
  opennslFieldActionYpDscpCancel = 94,
  opennslFieldActionYpCosQNew = 104,
  opennslFieldActionClassDestSet = 119,
  opennslFieldActionClassSet = opennslFieldActionClassDestSet,
  opennslFieldActionClassSourceSet = 120,
  opennslFieldActionGpDrop = 136,
  opennslFieldActionGpDropCancel = 137,
  opennslFieldActionGpCopyToCpu = 139,
  opennslFieldActionGpCopyToCpuCancel = 140,
  opennslFieldActionGpDscpNew = 145,
  opennslFieldActionGpDscpCancel = 146,
  opennslFieldActionGpCosQNew = 158,
  opennslFieldActionNewClassId = 178,
  opennslFieldActionRpRedirectPort = 184,
  opennslFieldActionRpMirrorIngress = 185,
  opennslFieldActionGpRedirectPort = 204,
  opennslFieldActionGpMirrorIngress = 205,
  opennslFieldActionEgressClassSelect = 235,
  opennslFieldActionStat0 = 243,
  opennslFieldActionStat = opennslFieldActionStat0,
  opennslFieldActionPolicerLevel0 = 244,
  opennslFieldActionUsePolicerResult = 252,
  opennslFieldActionSnoop = 255,
  opennslFieldActionYpMirrorIngress = 295,
  opennslFieldActionYpRedirectPort = 296,
  opennslFieldActionIngSampleEnable = 315,
  opennslFieldActionEgrSampleEnable = 316,
  opennslFieldActionCount = 515
}
 opennsl_field_action_e More...
 
enum  opennsl_field_group_mode_e {
  opennslFieldGroupModeSingle = 0,
  opennslFieldGroupModeDouble = 1,
  opennslFieldGroupModeAuto = 4
}
 Group Modes (single, double or triple wide). More...
 
enum  opennsl_field_IpFrag_e {
  opennslFieldIpFragNon = 0,
  opennslFieldIpFragFirst = 1,
  opennslFieldIpFragNonOrFirst = 2,
  opennslFieldIpFragNotFirst = 3,
  opennslFieldIpFragAny = 4,
  opennslFieldIpFragCount = 5
}
 Field Qualifier IpFrag (for opennsl_field_qualify_IpFrag). More...
 
enum  opennsl_field_IpProtocolCommon_e {
  opennslFieldIpProtocolCommonTcp = 0,
  opennslFieldIpProtocolCommonUdp = 1,
  opennslFieldIpProtocolCommonIgmp = 2,
  opennslFieldIpProtocolCommonIcmp = 3
}
 Field Qualifier IpProtocolCommon (for opennsl_field_qualify_IpProtocolCommon). More...
 
enum  opennsl_field_IpType_e {
  opennslFieldIpTypeAny = 0,
  opennslFieldIpTypeNonIp = 1,
  opennslFieldIpTypeIpv4Not = 2,
  opennslFieldIpTypeIpv4NoOpts = 3,
  opennslFieldIpTypeIpv4WithOpts = 4,
  opennslFieldIpTypeIpv4Any = 5,
  opennslFieldIpTypeIpv6Not = 6,
  opennslFieldIpTypeIpv6NoExtHdr = 7,
  opennslFieldIpTypeIpv6OneExtHdr = 8,
  opennslFieldIpTypeIpv6TwoExtHdr = 9,
  opennslFieldIpTypeIpv6 = 10,
  opennslFieldIpTypeIp = 11,
  opennslFieldIpTypeArp = 12,
  opennslFieldIpTypeArpRequest = 13,
  opennslFieldIpTypeArpReply = 14
}
 Field Qualifier IpType (for opennsl_field_qualify_IpType). More...
 
enum  opennsl_field_qualify_e {
  opennslFieldQualifySrcIp6 = 0,
  opennslFieldQualifyDstIp6 = 1,
  opennslFieldQualifySrcMac = 6,
  opennslFieldQualifyDstMac = 7,
  opennslFieldQualifySrcIp = 9,
  opennslFieldQualifyDstIp = 10,
  opennslFieldQualifyInPort = 12,
  opennslFieldQualifyInPorts = 13,
  opennslFieldQualifyOuterVlan = 17,
  opennslFieldQualifyOuterVlanId = 18,
  opennslFieldQualifyInnerVlanId = 22,
  opennslFieldQualifyRangeCheck = 26,
  opennslFieldQualifyL4SrcPort = 27,
  opennslFieldQualifyL4DstPort = 28,
  opennslFieldQualifyEtherType = 29,
  opennslFieldQualifyIpProtocol = 30,
  opennslFieldQualifyIp6NextHeader = opennslFieldQualifyIpProtocol,
  opennslFieldQualifyDSCP = 31,
  opennslFieldQualifyTtl = 32,
  opennslFieldQualifyIp6HopLimit = opennslFieldQualifyTtl,
  opennslFieldQualifySrcPort = 35,
  opennslFieldQualifyDstPort = 40,
  opennslFieldQualifyDstTrunk = 41,
  opennslFieldQualifyTcpControl = 42,
  opennslFieldQualifyPacketRes = 43,
  opennslFieldQualifySrcClassField = 47,
  opennslFieldQualifyDstClassField = 50,
  opennslFieldQualifyIpProtocolCommon = 52,
  opennslFieldQualifyIpType = 61,
  opennslFieldQualifyStage = 67,
  opennslFieldQualifyStageIngress = 68,
  opennslFieldQualifyStageLookup = 71,
  opennslFieldQualifyStageEgress = 72,
  opennslFieldQualifyInterfaceClassPort = 81,
  opennslFieldQualifyL3Routable = 82,
  opennslFieldQualifyIpFrag = 83,
  opennslFieldQualifyL3Ingress = 85,
  opennslFieldQualifyOutPort = 86,
  opennslFieldQualifyIp4 = 87,
  opennslFieldQualifyIp6 = 88,
  opennslFieldQualifyIcmpTypeCode = 125,
  opennslFieldQualifyDstL3Egress = 131,
  opennslFieldQualifyColor = 141,
  opennslFieldQualifyMyStationHit = 153,
  opennslFieldQualifyDstIpLocal = 171,
  opennslFieldQualifyCpuQueue = 194,
  opennslFieldQualifyInterfaceClassProcessingPort = 213,
  opennslFieldQualifyIngressClassField = 269,
  opennslFieldQualifyCount = 759
}
 Field Qualifiers. More...
 
enum  opennsl_field_stage_e {
  opennslFieldStageFirst = 0,
  opennslFieldStageIngressEarly = 1,
  opennslFieldStageIngressLate = 2,
  opennslFieldStageDefault = 3,
  opennslFieldStageLast = 4,
  opennslFieldStageIngress = 5,
  opennslFieldStageEgress = 6,
  opennslFieldStageExternal = 7,
  opennslFieldStageHash = 8,
  opennslFieldStageIngressExactMatch = 9,
  opennslFieldStageIngressFlowtracker = 10,
  opennslFieldStageIngressPMF1 = 11,
  opennslFieldStageIngressPMF2 = 12,
  opennslFieldStageIngressPMF3 = 13,
  opennslFieldStageCount = 14
}
 Field Stage Type. More...
 

Functions

int opennsl_field_action_add (int unit, opennsl_field_entry_t entry, opennsl_field_action_t action, uint32 param0, uint32 param1) LIB_DLL_EXPORTED
 Add an action to a field entry.
 
int opennsl_field_action_delete (int unit, opennsl_field_entry_t entry, opennsl_field_action_t action, uint32 param0, uint32 param1) LIB_DLL_EXPORTED
 Delete an action from a field entry.
 
int opennsl_field_action_get (int unit, opennsl_field_entry_t entry, opennsl_field_action_t action, uint32 *param0, uint32 *param1) LIB_DLL_EXPORTED
 Retrieve the parameters for an action previously added to a field entry.
 
int opennsl_field_action_mac_add (int unit, opennsl_field_entry_t entry, opennsl_field_action_t action, opennsl_mac_t mac) LIB_DLL_EXPORTED
 Add an action to a field entry.
 
int opennsl_field_action_mac_get (int unit, opennsl_field_entry_t entry, opennsl_field_action_t action, opennsl_mac_t *mac) LIB_DLL_EXPORTED
 Retrieve the parameters for an action previously added to a field entry.
 
int opennsl_field_action_ports_add (int unit, opennsl_field_entry_t entry, opennsl_field_action_t action, opennsl_pbmp_t pbmp) LIB_DLL_EXPORTED
 Add an action to a field entry.
 
int opennsl_field_action_ports_get (int unit, opennsl_field_entry_t entry, opennsl_field_action_t action, opennsl_pbmp_t *pbmp) LIB_DLL_EXPORTED
 Retrieve the parameters for an action previously added to a field entry.
 
int opennsl_field_action_remove (int unit, opennsl_field_entry_t entry, opennsl_field_action_t action) LIB_DLL_EXPORTED
 Remove an action from a field entry.
 
int opennsl_field_action_remove_all (int unit, opennsl_field_entry_t entry) LIB_DLL_EXPORTED
 Remove all actions from a field entry.
 
int opennsl_field_detach (int unit) LIB_DLL_EXPORTED
 De-initialize field software subsystem.
 
int opennsl_field_entry_copy (int unit, opennsl_field_entry_t src_entry, opennsl_field_entry_t *dst_entry) LIB_DLL_EXPORTED
 Create a copy of an existing field entry.
 
int opennsl_field_entry_create (int unit, opennsl_field_group_t group, opennsl_field_entry_t *entry) LIB_DLL_EXPORTED
 Create a blank field entry.
 
int opennsl_field_entry_create_id (int unit, opennsl_field_group_t group, opennsl_field_entry_t entry) LIB_DLL_EXPORTED
 Create a blank field entry.
 
int opennsl_field_entry_destroy (int unit, opennsl_field_entry_t entry) LIB_DLL_EXPORTED
 Destroy a field entry.
 
int opennsl_field_entry_destroy_all (int unit) LIB_DLL_EXPORTED
 Destroy all field entries.
 
int opennsl_field_entry_install (int unit, opennsl_field_entry_t entry) LIB_DLL_EXPORTED
 Install a field entry into the hardware tables.
 
int opennsl_field_entry_multi_get (int unit, opennsl_field_group_t group, int entry_size, opennsl_field_entry_t *entry_array, int *entry_count) LIB_DLL_EXPORTED
 Get an array of entry IDs in use in a group.
 
int opennsl_field_entry_policer_attach (int unit, opennsl_field_entry_t entry_id, int level, opennsl_policer_t policer_id) LIB_DLL_EXPORTED
 Attach a policer to a field entry.
 
int opennsl_field_entry_policer_detach (int unit, opennsl_field_entry_t entry_id, int level) LIB_DLL_EXPORTED
 Detach a policer from a field entry.
 
int opennsl_field_entry_policer_get (int unit, opennsl_field_entry_t entry_id, int level, opennsl_policer_t *policer_id) LIB_DLL_EXPORTED
 Get the policer(s) attached to a field entry.
 
int opennsl_field_entry_prio_get (int unit, opennsl_field_entry_t entry, int *prio) LIB_DLL_EXPORTED
 Get/Set the priority for an entry within a group.
 
int opennsl_field_entry_prio_set (int unit, opennsl_field_entry_t entry, int prio) LIB_DLL_EXPORTED
 Get/Set the priority for an entry within a group.
 
int opennsl_field_entry_reinstall (int unit, opennsl_field_entry_t entry) LIB_DLL_EXPORTED
 Re-install a field entry into the hardware tables.
 
int opennsl_field_entry_remove (int unit, opennsl_field_entry_t entry) LIB_DLL_EXPORTED
 Remove a field entry from the hardware tables.
 
int opennsl_field_entry_stat_attach (int unit, opennsl_field_entry_t entry, int stat_id) LIB_DLL_EXPORTED
 Attach statistics entity to Field Processor entry.
 
int opennsl_field_entry_stat_detach (int unit, opennsl_field_entry_t entry, int stat_id) LIB_DLL_EXPORTED
 Detach statistics entity from Field Processor entry.
 
int opennsl_field_entry_stat_get (int unit, opennsl_field_entry_t entry, int *stat_id) LIB_DLL_EXPORTED
 Get statistics entity attached to Field Processor entry.
 
int opennsl_field_group_action_get (int unit, opennsl_field_group_t group, opennsl_field_aset_t *aset) LIB_DLL_EXPORTED
 Change or retrieve the actions for a field group.
 
int opennsl_field_group_action_set (int unit, opennsl_field_group_t group, opennsl_field_aset_t aset) LIB_DLL_EXPORTED
 Change or retrieve the actions for a field group.
 
int opennsl_field_group_create (int unit, opennsl_field_qset_t qset, int pri, opennsl_field_group_t *group) LIB_DLL_EXPORTED
 Create a field group.
 
int opennsl_field_group_create_id (int unit, opennsl_field_qset_t qset, int pri, opennsl_field_group_t group) LIB_DLL_EXPORTED
 Create a field group.
 
int opennsl_field_group_create_mode (int unit, opennsl_field_qset_t qset, int pri, opennsl_field_group_mode_t mode, opennsl_field_group_t *group) LIB_DLL_EXPORTED
 Create a field group.
 
int opennsl_field_group_create_mode_id (int unit, opennsl_field_qset_t qset, int pri, opennsl_field_group_mode_t mode, opennsl_field_group_t group) LIB_DLL_EXPORTED
 Create a field group.
 
int opennsl_field_group_destroy (int unit, opennsl_field_group_t group) LIB_DLL_EXPORTED
 Deallocates a field group.
 
int opennsl_field_group_enable_get (int unit, opennsl_field_group_t group, int *enable) LIB_DLL_EXPORTED
 Get or set the group enable state.
 
int opennsl_field_group_enable_set (int unit, opennsl_field_group_t group, int enable) LIB_DLL_EXPORTED
 Get or set the group enable state.
 
int opennsl_field_group_get (int unit, opennsl_field_group_t group, opennsl_field_qset_t *qset) LIB_DLL_EXPORTED
 Change or retrieve the qualifiers for a field group.
 
int opennsl_field_group_install (int unit, opennsl_field_group_t group) LIB_DLL_EXPORTED
 Install all entries of a field group into the hardware tables.
 
int opennsl_field_group_presel_get (int unit, opennsl_field_group_t group, opennsl_field_presel_set_t *presel) LIB_DLL_EXPORTED
 Get the set of preselectors associated with a Field group.
 
int opennsl_field_group_presel_set (int unit, opennsl_field_group_t group, opennsl_field_presel_set_t *presel) LIB_DLL_EXPORTED
 Associate a set of preselectors with a Field group.
 
int opennsl_field_group_priority_get (int unit, opennsl_field_group_t group, int *priority) LIB_DLL_EXPORTED
 Extract priority for a group.
 
int opennsl_field_group_priority_set (int unit, opennsl_field_group_t group, int priority) LIB_DLL_EXPORTED
 Assign relative priority to a group.
 
int opennsl_field_group_set (int unit, opennsl_field_group_t group, opennsl_field_qset_t qset) LIB_DLL_EXPORTED
 Change or retrieve the qualifiers for a field group.
 
int opennsl_field_group_status_get (int unit, opennsl_field_group_t group, opennsl_field_group_status_t *status) LIB_DLL_EXPORTED
 Retrieve status of a specified field group.
 
int opennsl_field_group_traverse (int unit, opennsl_field_group_traverse_cb callback, void *user_data) LIB_DLL_EXPORTED
 Traverse all the fp groups on the device, calling a specified callback for each valid group.
 
int opennsl_field_init (int unit) LIB_DLL_EXPORTED
 Initialize field software subsystem.
 
int opennsl_field_presel_create (int unit, opennsl_field_presel_t *presel_id) LIB_DLL_EXPORTED
 Create a preselection specification.
 
int opennsl_field_presel_create_id (int unit, opennsl_field_presel_t presel_id) LIB_DLL_EXPORTED
 Create a preselection specification using a specific ID.
 
int opennsl_field_presel_destroy (int unit, opennsl_field_presel_t presel_id) LIB_DLL_EXPORTED
 Destroy a preselection specification.
 
int opennsl_field_qualifier_delete (int unit, opennsl_field_entry_t entry, opennsl_field_qualify_t qual_id) LIB_DLL_EXPORTED
 Remove match criteria from field entry.
 
int opennsl_field_qualify_Color (int unit, opennsl_field_entry_t entry, uint8 color) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_Color_get (int unit, opennsl_field_entry_t entry, uint8 *color) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_CpuQueue (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_CpuQueue_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DSCP (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DSCP_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstClassField (int unit, opennsl_field_entry_t entry, uint32 data, uint32 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstClassField_get (int unit, opennsl_field_entry_t entry, uint32 *data, uint32 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstIp (int unit, opennsl_field_entry_t entry, opennsl_ip_t data, opennsl_ip_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstIp6 (int unit, opennsl_field_entry_t entry, opennsl_ip6_t data, opennsl_ip6_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstIp6_get (int unit, opennsl_field_entry_t entry, opennsl_ip6_t *data, opennsl_ip6_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstIp_get (int unit, opennsl_field_entry_t entry, opennsl_ip_t *data, opennsl_ip_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstIpLocal (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstIpLocal_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstL3Egress (int unit, opennsl_field_entry_t entry, opennsl_if_t if_id) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstL3Egress_get (int unit, opennsl_field_entry_t entry, opennsl_if_t *if_id) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstMac (int unit, opennsl_field_entry_t entry, opennsl_mac_t data, opennsl_mac_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstMac_get (int unit, opennsl_field_entry_t entry, opennsl_mac_t *data, opennsl_mac_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstPort (int unit, opennsl_field_entry_t entry, opennsl_module_t data_modid, opennsl_module_t mask_modid, opennsl_port_t data_port, opennsl_port_t mask_port) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstPort_get (int unit, opennsl_field_entry_t entry, opennsl_module_t *data_modid, opennsl_module_t *mask_modid, opennsl_port_t *data_port, opennsl_port_t *mask_port) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstTrunk (int unit, opennsl_field_entry_t entry, opennsl_trunk_t data, opennsl_trunk_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_DstTrunk_get (int unit, opennsl_field_entry_t entry, opennsl_trunk_t *data, opennsl_trunk_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_EtherType (int unit, opennsl_field_entry_t entry, uint16 data, uint16 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_EtherType_get (int unit, opennsl_field_entry_t entry, uint16 *data, uint16 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IcmpTypeCode (int unit, opennsl_field_entry_t entry, uint16 data, uint16 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IcmpTypeCode_get (int unit, opennsl_field_entry_t entry, uint16 *data, uint16 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IngressClassField (int unit, opennsl_field_entry_t entry, uint32 data, uint32 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IngressClassField_get (int unit, opennsl_field_entry_t entry, uint32 *data, uint32 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_InnerVlanId (int unit, opennsl_field_entry_t entry, opennsl_vlan_t data, opennsl_vlan_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_InPort (int unit, opennsl_field_entry_t entry, opennsl_port_t data, opennsl_port_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_InPort_get (int unit, opennsl_field_entry_t entry, opennsl_port_t *data, opennsl_port_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_InPorts (int unit, opennsl_field_entry_t entry, opennsl_pbmp_t data, opennsl_pbmp_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_InPorts_get (int unit, opennsl_field_entry_t entry, opennsl_pbmp_t *data, opennsl_pbmp_t *mask) LIB_DLL_EXPORTED
 Get InPorts qualification match criteria from a field entry.
 
int opennsl_field_qualify_InterfaceClassPort (int unit, opennsl_field_entry_t entry, uint32 data, uint32 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_InterfaceClassPort_get (int unit, opennsl_field_entry_t entry, uint32 *data, uint32 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_InterfaceClassProcessingPort (int unit, opennsl_field_entry_t entry, uint64 data, uint64 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_InterfaceClassProcessingPort_get (int unit, opennsl_field_entry_t entry, uint64 *data, uint64 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_Ip6HopLimit (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_Ip6HopLimit_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_Ip6NextHeader (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_Ip6NextHeader_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IpFrag (int unit, opennsl_field_entry_t entry, opennsl_field_IpFrag_t frag_info) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IpFrag_get (int unit, opennsl_field_entry_t entry, opennsl_field_IpFrag_t *frag_info) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IpProtocol (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IpProtocol_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IpProtocolCommon (int unit, opennsl_field_entry_t entry, opennsl_field_IpProtocolCommon_t protocol) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IpProtocolCommon_get (int unit, opennsl_field_entry_t entry, opennsl_field_IpProtocolCommon_t *protocol) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IpType (int unit, opennsl_field_entry_t entry, opennsl_field_IpType_t type) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_IpType_get (int unit, opennsl_field_entry_t entry, opennsl_field_IpType_t *type) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_L3Ingress (int unit, opennsl_field_entry_t entry, uint32 intf_id, uint32 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_L3Ingress_get (int unit, opennsl_field_entry_t entry, uint32 *data, uint32 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_L3Routable (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_L3Routable_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_L4DstPort (int unit, opennsl_field_entry_t entry, opennsl_l4_port_t data, opennsl_l4_port_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_L4DstPort_get (int unit, opennsl_field_entry_t entry, opennsl_l4_port_t *data, opennsl_l4_port_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_L4SrcPort (int unit, opennsl_field_entry_t entry, opennsl_l4_port_t data, opennsl_l4_port_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_L4SrcPort_get (int unit, opennsl_field_entry_t entry, opennsl_l4_port_t *data, opennsl_l4_port_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_MyStationHit (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_MyStationHit_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_OuterVlan (int unit, opennsl_field_entry_t entry, opennsl_vlan_t data, opennsl_vlan_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_OuterVlan_get (int unit, opennsl_field_entry_t entry, opennsl_vlan_t *data, opennsl_vlan_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_OuterVlanId (int unit, opennsl_field_entry_t entry, opennsl_vlan_t data, opennsl_vlan_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_OuterVlanId_get (int unit, opennsl_field_entry_t entry, opennsl_vlan_t *data, opennsl_vlan_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_OutPort (int unit, opennsl_field_entry_t entry, opennsl_port_t data, opennsl_port_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_OutPort_get (int unit, opennsl_field_entry_t entry, opennsl_port_t *data, opennsl_port_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_PacketRes (int unit, opennsl_field_entry_t entry, uint32 data, uint32 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_PacketRes_get (int unit, opennsl_field_entry_t entry, uint32 *data, uint32 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_RangeCheck (int unit, opennsl_field_entry_t entry, opennsl_field_range_t range, int invert) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_RangeCheck_get (int unit, opennsl_field_entry_t entry, int max_count, opennsl_field_range_t *range, int *invert, int *count) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcClassField (int unit, opennsl_field_entry_t entry, uint32 data, uint32 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcClassField_get (int unit, opennsl_field_entry_t entry, uint32 *data, uint32 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcIp (int unit, opennsl_field_entry_t entry, opennsl_ip_t data, opennsl_ip_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcIp6 (int unit, opennsl_field_entry_t entry, opennsl_ip6_t data, opennsl_ip6_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcIp6_get (int unit, opennsl_field_entry_t entry, opennsl_ip6_t *data, opennsl_ip6_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcIp_get (int unit, opennsl_field_entry_t entry, opennsl_ip_t *data, opennsl_ip_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcMac (int unit, opennsl_field_entry_t entry, opennsl_mac_t data, opennsl_mac_t mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcMac_get (int unit, opennsl_field_entry_t entry, opennsl_mac_t *data, opennsl_mac_t *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcPort (int unit, opennsl_field_entry_t entry, opennsl_module_t data_modid, opennsl_module_t mask_modid, opennsl_port_t data_port, opennsl_port_t mask_port) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_SrcPort_get (int unit, opennsl_field_entry_t entry, opennsl_module_t *data_modid, opennsl_module_t *mask_modid, opennsl_port_t *data_port, opennsl_port_t *mask_port) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_Stage (int unit, opennsl_field_entry_t entry, opennsl_field_stage_t data) LIB_DLL_EXPORTED
 Set qualification on a particular stage.
 
int opennsl_field_qualify_Stage_get (int unit, opennsl_field_entry_t entry, opennsl_field_stage_t *data) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_TcpControl (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_TcpControl_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_Ttl (int unit, opennsl_field_entry_t entry, uint8 data, uint8 mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_Ttl_get (int unit, opennsl_field_entry_t entry, uint8 *data, uint8 *mask) LIB_DLL_EXPORTED
 
int opennsl_field_qualify_Vrf (int unit, opennsl_field_entry_t entry, uint32 data, uint32 mask) LIB_DLL_EXPORTED
 
int opennsl_field_range_create (int unit, opennsl_field_range_t *range, uint32 flags, opennsl_l4_port_t min, opennsl_l4_port_t max) LIB_DLL_EXPORTED
 Allocate a range checker with specified configuration.
 
int opennsl_field_range_destroy (int unit, opennsl_field_range_t range) LIB_DLL_EXPORTED
 Destroy a virtual range checker.
 
int opennsl_field_range_get (int unit, opennsl_field_range_t range, uint32 *flags, opennsl_l4_port_t *min, opennsl_l4_port_t *max) LIB_DLL_EXPORTED
 Retrieve parameters associated with an existing range checker.
 
int opennsl_field_stat_all_set (int unit, int stat_id, uint64 value) LIB_DLL_EXPORTED
 Set 64-bit counter value to all counters.
 
int opennsl_field_stat_create (int unit, opennsl_field_group_t group, int nstat, opennsl_field_stat_t *stat_arr, int *stat_id) LIB_DLL_EXPORTED
 Create stat collection entity.
 
int opennsl_field_stat_create_id (int unit, opennsl_field_group_t group, int nstat, opennsl_field_stat_t *stat_arr, int stat_id) LIB_DLL_EXPORTED
 Create stat collection entity with specified Statistics entity ID value.
 
int opennsl_field_stat_destroy (int unit, int stat_id) LIB_DLL_EXPORTED
 Destroy stat collection entity.
 
int opennsl_field_stat_detach (int unit, uint32 stat_id) LIB_DLL_EXPORTED
 Detach counters entries to a field group.
 
int opennsl_field_stat_get (int unit, int stat_id, opennsl_field_stat_t stat, uint64 *value) LIB_DLL_EXPORTED
 Get 64-bit counter value for specific statistic type.
 
int opennsl_field_stat_id_get (int unit, opennsl_field_group_t group, uint32 stat_id, uint32 *stat_counter_id) LIB_DLL_EXPORTED
 Get flex stat counter ID associated with given field group and its associated stats ID.
 
int opennsl_field_stat_set (int unit, int stat_id, opennsl_field_stat_t stat, uint64 value) LIB_DLL_EXPORTED
 Set 64-bit counter value for specific statistic type.
 
int opennsl_field_stat_size (int unit, int stat_id, int *stat_size) LIB_DLL_EXPORTED
 Get number of counters associated with statistics entity.