mbgtools-lx  4.2.8
Tainted config

Data Structures

struct  MBG_TAINTED_CFG
 

Macros

#define MBG_TAINTED_CFG_BYTES   256
 
#define MBG_TAINTED_CFG_FLAG_BYTES   (MBG_TAINTED_CFG_BYTES >> 3)
 
#define _mbg_swab_tainted_cfg(_p)   do {} while ( 0 )
 
#define _mbg_tainted_cfg_increase(c, cfg)
 
#define _set_supp_tainted_cfg_bit(_cfg_bit, _tainted_cfg)   _set_array_bit( _cfg_bit, (_tainted_cfg)->supp_cfgs, MBG_TAINTED_CFG_FLAG_BYTES )
 Set a supported tainted config bit in a MBG_TAINTED_CFG::supp_cfgs. More...
 
#define _clear_supp_tainted_cfg_bit(_cfg_bit, _tainted_cfg)   _clear_array_bit( _cfg_bit, (_tainted_cfg)->supp_cfgs, MBG_TAINTED_CFG_FLAG_BYTES )
 Clear a supported tainted config bit in a MBG_TAINTED_CFG::supp_cfgs. More...
 
#define _check_supp_tainted_cfg_bit(_cfg_bit, _tainted_cfg)   check_feat_supp_byte_array( _cfg_bit, (_tainted_cfg)->supp_cfgs, MBG_TAINTED_CFG_FLAG_BYTES )
 Check for a supported tainted config bit in a MBG_TAINTED_CFG::supp_cfgs. More...
 

Enumerations

enum  MBG_TAINTED_CFGS {
  MBG_TAINTED_CFG_INV = -1, MBG_TAINTED_CFG_SNMP, MBG_TAINTED_CFG_EMAIL, MBG_TAINTED_CFG_SYSLOG,
  MBG_TAINTED_CFG_EVENTS, MBG_TAINTED_CFG_IOPORTS, MBG_TAINTED_CFG_NTP, MBG_TAINTED_CFG_XBP,
  MBG_TAINTED_CFG_NETWORK, MBG_TAINTED_CFG_USERS, MBG_TAINTED_CFG_FIRMWARE, MBG_TAINTED_CFG_XMR,
  MBG_TAINTED_CFG_TIMECODE_RX, MBG_TAINTED_CFG_TIMECODE_TX, MBG_TAINTED_CFG_HAVEQUICK, MBG_TAINTED_CFG_GPIO,
  MBG_TAINTED_CFG_UART, MBG_TAINTED_CFG_PROG_OUT, MBG_TAINTED_CFG_VAR_SYNTH, MBG_TAINTED_CFG_TIMESCALE,
  MBG_TAINTED_CFG_IGNLOCK, MBG_TAINTED_CFG_GNSSMODE, MBG_TAINTED_CFG_EF, MBG_TAINTED_CFG_TZDL,
  MBG_TAINTED_CFG_CABLE_LENGTH, MBG_TAINTED_CFG_DATABASE, N_MBG_TAINTED_CFGS
}
 Array positions in MBG_TAINTED_CFG::tainted_cfgs. More...
 

Detailed Description

Note
This structure and its definitions are only supported by a device if MBG_XFEATURE_TAINTED_CFG is set in the extended device features. Feature has a list of configuration counters for several sub-features. Each time a sub-feature's config changes, its counter in this structure is increased to indicate a config change. Thus, software can read this structure and request the changed config. Also use it for push notifications.

TODO: Add proper Doxygen documentation

Macro Definition Documentation

◆ _check_supp_tainted_cfg_bit

#define _check_supp_tainted_cfg_bit (   _cfg_bit,
  _tainted_cfg 
)    check_feat_supp_byte_array( _cfg_bit, (_tainted_cfg)->supp_cfgs, MBG_TAINTED_CFG_FLAG_BYTES )

Check for a supported tainted config bit in a MBG_TAINTED_CFG::supp_cfgs.

Parameters
[in]_cfg_bitOne of the MBG_TAINTED_CFGS
[in]_tainted_cfgPointer to MBG_TAINTED_CFG

Definition at line 22354 of file gpsdefs.h.

◆ _clear_supp_tainted_cfg_bit

#define _clear_supp_tainted_cfg_bit (   _cfg_bit,
  _tainted_cfg 
)    _clear_array_bit( _cfg_bit, (_tainted_cfg)->supp_cfgs, MBG_TAINTED_CFG_FLAG_BYTES )

Clear a supported tainted config bit in a MBG_TAINTED_CFG::supp_cfgs.

Should be used by the firmware only to clear one of the supported N_MBG_TAINTED_CFGS bits in :MBG_TAINTED_CFG::supp_cfgs.

Parameters
[in]_cfg_bitOne of the MBG_TAINTED_CFGS
[in]_tainted_cfgPointer to MBG_TAINTED_CFG

Definition at line 22345 of file gpsdefs.h.

◆ _mbg_swab_tainted_cfg

#define _mbg_swab_tainted_cfg (   _p)    do {} while ( 0 )

Definition at line 22312 of file gpsdefs.h.

Referenced by mbgextio_get_tainted_cfg().

◆ _mbg_tainted_cfg_increase

#define _mbg_tainted_cfg_increase (   c,
  cfg 
)
Value:
do \
{ \
if ( ( c >= MBG_TAINTED_CFG_BYTES ) || ( c >= N_MBG_TAINTED_CFGS ) ) \
break; \
\
++(cfg)->tainted_cfgs[ c ]; \
\
} while ( 0 );
#define MBG_TAINTED_CFG_BYTES
Definition: gpsdefs.h:22266

Definition at line 22314 of file gpsdefs.h.

◆ _set_supp_tainted_cfg_bit

#define _set_supp_tainted_cfg_bit (   _cfg_bit,
  _tainted_cfg 
)    _set_array_bit( _cfg_bit, (_tainted_cfg)->supp_cfgs, MBG_TAINTED_CFG_FLAG_BYTES )

Set a supported tainted config bit in a MBG_TAINTED_CFG::supp_cfgs.

Should be used by the firmware only to set one of the supported N_MBG_TAINTED_CFGS bits in :MBG_TAINTED_CFG::supp_cfgs.

Parameters
[in]_cfg_bitOne of the MBG_TAINTED_CFGS
[in]_tainted_cfgPointer to MBG_TAINTED_CFG

Definition at line 22333 of file gpsdefs.h.

◆ MBG_TAINTED_CFG_BYTES

#define MBG_TAINTED_CFG_BYTES   256

Definition at line 22266 of file gpsdefs.h.

◆ MBG_TAINTED_CFG_FLAG_BYTES

#define MBG_TAINTED_CFG_FLAG_BYTES   (MBG_TAINTED_CFG_BYTES >> 3)

Definition at line 22267 of file gpsdefs.h.

Enumeration Type Documentation

◆ MBG_TAINTED_CFGS

Array positions in MBG_TAINTED_CFG::tainted_cfgs.

Enumerator
MBG_TAINTED_CFG_INV 
MBG_TAINTED_CFG_SNMP 
MBG_TAINTED_CFG_EMAIL 
MBG_TAINTED_CFG_SYSLOG 
MBG_TAINTED_CFG_EVENTS 
MBG_TAINTED_CFG_IOPORTS 
MBG_TAINTED_CFG_NTP 
MBG_TAINTED_CFG_XBP 
MBG_TAINTED_CFG_NETWORK 
MBG_TAINTED_CFG_USERS 
MBG_TAINTED_CFG_FIRMWARE 
MBG_TAINTED_CFG_XMR 
MBG_TAINTED_CFG_TIMECODE_RX 
MBG_TAINTED_CFG_TIMECODE_TX 
MBG_TAINTED_CFG_HAVEQUICK 
MBG_TAINTED_CFG_GPIO 
MBG_TAINTED_CFG_UART 
MBG_TAINTED_CFG_PROG_OUT 
MBG_TAINTED_CFG_VAR_SYNTH 
MBG_TAINTED_CFG_TIMESCALE 
MBG_TAINTED_CFG_IGNLOCK 
MBG_TAINTED_CFG_GNSSMODE 
MBG_TAINTED_CFG_EF 
MBG_TAINTED_CFG_TZDL 
MBG_TAINTED_CFG_CABLE_LENGTH 
MBG_TAINTED_CFG_DATABASE 
N_MBG_TAINTED_CFGS 

Definition at line 22273 of file gpsdefs.h.