axa  2.2.0
Farsight Security Advanced Exchange Access (AXA)
axa_nmsg_field Struct Reference

An NMSG message understood by AXA. More...

Data Fields

struct axa_nmsg_fieldnext
 next interesting field More...
 
char vname [AXA_FIELD_NM_LEN]
 NMSG module vendor name. More...
 
char mname [AXA_FIELD_NM_LEN]
 NMSG type such as "dnsqr". More...
 
char name [AXA_FIELD_NM_LEN]
 NMSG field name such as "qname". More...
 
axa_nmsg_sf_tsf
 optional list of sub-fields More...
 
axa_nmsg_idx_t idx
 NMSG field index. More...
 
axa_nmsg_help_t class
 optional NMSG index of DNS class More...
 
axa_nmsg_help_t rtype
 optional NMSG index of DNS rtype More...
 
axa_nmsg_help_t owner
 optional index rdata owner More...
 
axa_nmsg_help_t enm
 NMSG index of nmsg 'enum' field. More...
 
uint enm_val
 target NMSG enum field value More...
 
axa_fc_t fc
 NMSG field content type. More...
 
vm_entry_tvm
 parent NMSG vid & msgtype More...
 
uint line_num
 line number in config file More...
 

Detailed Description

An NMSG message understood by AXA.

Every interesting field in an interesting NMSG message is defined by a line in the fields file. Each line is compiled into a list of these structures, one for each interesting nmsg field. Some NMSG fields need the contents of other NMSG fields for proper decoding, such as DNS class and rtype for DNS rdata. Some NMSG fields have varying types, such as JSON or other values. When .enm is not AXA_NMSG_IDX_NONE, then one of these applies only to messages where contents of the NMSG field with the index in .enm is equal to .enm_val

Field Documentation

◆ next

struct axa_nmsg_field* axa_nmsg_field::next

next interesting field

◆ vname

char axa_nmsg_field::vname[AXA_FIELD_NM_LEN]

NMSG module vendor name.

◆ mname

char axa_nmsg_field::mname[AXA_FIELD_NM_LEN]

NMSG type such as "dnsqr".

◆ name

char axa_nmsg_field::name[AXA_FIELD_NM_LEN]

NMSG field name such as "qname".

◆ sf

axa_nmsg_sf_t* axa_nmsg_field::sf

optional list of sub-fields

◆ idx

axa_nmsg_idx_t axa_nmsg_field::idx

NMSG field index.

◆ class

axa_nmsg_help_t axa_nmsg_field::class

optional NMSG index of DNS class

◆ rtype

axa_nmsg_help_t axa_nmsg_field::rtype

optional NMSG index of DNS rtype

◆ owner

axa_nmsg_help_t axa_nmsg_field::owner

optional index rdata owner

◆ enm

axa_nmsg_help_t axa_nmsg_field::enm

NMSG index of nmsg 'enum' field.

◆ enm_val

uint axa_nmsg_field::enm_val

target NMSG enum field value

◆ fc

axa_fc_t axa_nmsg_field::fc

NMSG field content type.

◆ vm

vm_entry_t* axa_nmsg_field::vm

parent NMSG vid & msgtype

◆ line_num

uint axa_nmsg_field::line_num

line number in config file