OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
mld_proto.h File Reference

Go to the source code of this file.

Classes

struct  mld_hdr_
 
struct  mld_v1_pkt_
 
struct  mld_v2_query_
 
struct  mld_v2_rpt_rcrd_
 
struct  mld_v2_report_
 
struct  mld_naked_header_
 
union  mld_packet_
 

Macros

#define MLD_TYPE_QUERY   130 /* Query (all versions) */
 
#define MLD_TYPE_V1_REPORT   131 /* Version 1 Report */
 
#define MLD_TYPE_V1_LEAVE   132 /* Version 1 Leave */
 
#define MLD_TYPE_V2_REPORT   143 /* Version 2 Report */
 
#define MLD_SUPP_RTR_PROC_MASK   0x8 /* "S" bit in s_qrv field */
 
#define MLD_QRV_MASK   0x7 /* QRV value in s_qrv field */
 
#define MLD_MAXRSP_FIXFLOAT_FLAG   0x8000 /* Set if floating point */
 
#define MLD_MAXRSP_EXP_MASK   0x7000 /* Floating point exponent mask */
 
#define MLD_MAXRSP_EXP_SHIFT   12 /* Shift count for exponent */
 
#define MLD_MAXRSP_MANT_MASK   0x0FFF /* Floating point mantissa mask */
 
#define MLD_MAXRSP_MANT_HIGHBIT   0x1000 /* High bit of mantissa */
 
#define MLD_MAXRSP_MAX_MANT   0x1FFF /* Max mantissa portion */
 
#define MLD_MAXRSP_MANT_SHIFT   0 /* Shift count for mantissa */
 
#define MLD_MAXRSP_EXP_OFFSET   3 /* Offset bits to add */
 
#define MLD_MAXRSP_MAX_EXP   0x07 /* Maximum exponent value */
 
#define MLD_MAX_MAXRSP_ENCODABLE
 
#define MLD_QQIC_FIXFLOAT_FLAG   0x80 /* Set if floating point */
 
#define MLD_QQIC_EXP_MASK   0x70 /* Floating point exponent mask */
 
#define MLD_QQIC_EXP_SHIFT   4 /* Shift count for exponent */
 
#define MLD_QQIC_MANT_MASK   0x0F /* Floating point mantissa mask */
 
#define MLD_QQIC_MANT_HIGHBIT   0x10 /* High bit of mantissa */
 
#define MLD_QQIC_MAX_MANT   0x1F /* Max mantissa portion */
 
#define MLD_QQIC_MANT_SHIFT   0 /* Shift count for mantissa */
 
#define MLD_QQIC_EXP_OFFSET   3 /* Offset bits to add */
 
#define MLD_QQIC_MAX_EXP   0x07 /* Maximum exponent value */
 
#define MLD_MAX_QQIC_ENCODABLE
 
#define MLD_MAX_RESP_MSEC   1 /* Max Resp is in units of msec */
 
#define MLD_MAX_RESP_DEFAULT   10000 /* Default Max Resp val msec) */
 
#define MLD_V1_MAX_MAX_RESP   0xFFFF /* Maximum Max Resp value for V1 */
 

Typedefs

typedef struct mld_hdr_ mld_hdr
 
typedef struct mld_v1_pkt_ mld_v1_pkt
 
typedef struct mld_v2_query_ mld_v2_query
 
typedef struct mld_v2_rpt_rcrd_ mld_v2_rpt_rcrd
 
typedef struct mld_v2_report_ mld_v2_report
 
typedef struct mld_naked_header_ mld_naked_header
 
typedef union mld_packet_ mld_packet
 

Functions

static uint8_t * get_mld_v2_rpt_source (mld_v2_rpt_rcrd *ptr)
 

Macro Definition Documentation

#define MLD_MAX_MAXRSP_ENCODABLE
Value:
#define MLD_MAXRSP_EXP_OFFSET
Definition: mld_proto.h:128
#define MLD_MAXRSP_MAX_EXP
Definition: mld_proto.h:129
#define MLD_MAXRSP_MANT_HIGHBIT
Definition: mld_proto.h:125
#define MLD_MAXRSP_MANT_MASK
Definition: mld_proto.h:124

Definition at line 130 of file mld_proto.h.

#define MLD_MAX_QQIC_ENCODABLE
Value:
#define MLD_QQIC_EXP_OFFSET
Definition: mld_proto.h:147
#define MLD_QQIC_MANT_MASK
Definition: mld_proto.h:143
#define MLD_QQIC_MANT_HIGHBIT
Definition: mld_proto.h:144
#define MLD_QQIC_MAX_EXP
Definition: mld_proto.h:148

Definition at line 149 of file mld_proto.h.

#define MLD_MAX_RESP_DEFAULT   10000 /* Default Max Resp val msec) */

Definition at line 156 of file mld_proto.h.

#define MLD_MAX_RESP_MSEC   1 /* Max Resp is in units of msec */

Definition at line 155 of file mld_proto.h.

#define MLD_MAXRSP_EXP_MASK   0x7000 /* Floating point exponent mask */

Definition at line 122 of file mld_proto.h.

#define MLD_MAXRSP_EXP_OFFSET   3 /* Offset bits to add */

Definition at line 128 of file mld_proto.h.

#define MLD_MAXRSP_EXP_SHIFT   12 /* Shift count for exponent */

Definition at line 123 of file mld_proto.h.

#define MLD_MAXRSP_FIXFLOAT_FLAG   0x8000 /* Set if floating point */

Definition at line 121 of file mld_proto.h.

#define MLD_MAXRSP_MANT_HIGHBIT   0x1000 /* High bit of mantissa */

Definition at line 125 of file mld_proto.h.

#define MLD_MAXRSP_MANT_MASK   0x0FFF /* Floating point mantissa mask */

Definition at line 124 of file mld_proto.h.

#define MLD_MAXRSP_MANT_SHIFT   0 /* Shift count for mantissa */

Definition at line 127 of file mld_proto.h.

#define MLD_MAXRSP_MAX_EXP   0x07 /* Maximum exponent value */

Definition at line 129 of file mld_proto.h.

#define MLD_MAXRSP_MAX_MANT   0x1FFF /* Max mantissa portion */

Definition at line 126 of file mld_proto.h.

#define MLD_QQIC_EXP_MASK   0x70 /* Floating point exponent mask */

Definition at line 141 of file mld_proto.h.

#define MLD_QQIC_EXP_OFFSET   3 /* Offset bits to add */

Definition at line 147 of file mld_proto.h.

#define MLD_QQIC_EXP_SHIFT   4 /* Shift count for exponent */

Definition at line 142 of file mld_proto.h.

#define MLD_QQIC_FIXFLOAT_FLAG   0x80 /* Set if floating point */

Definition at line 140 of file mld_proto.h.

#define MLD_QQIC_MANT_HIGHBIT   0x10 /* High bit of mantissa */

Definition at line 144 of file mld_proto.h.

#define MLD_QQIC_MANT_MASK   0x0F /* Floating point mantissa mask */

Definition at line 143 of file mld_proto.h.

#define MLD_QQIC_MANT_SHIFT   0 /* Shift count for mantissa */

Definition at line 146 of file mld_proto.h.

#define MLD_QQIC_MAX_EXP   0x07 /* Maximum exponent value */

Definition at line 148 of file mld_proto.h.

#define MLD_QQIC_MAX_MANT   0x1F /* Max mantissa portion */

Definition at line 145 of file mld_proto.h.

#define MLD_QRV_MASK   0x7 /* QRV value in s_qrv field */

Definition at line 64 of file mld_proto.h.

#define MLD_SUPP_RTR_PROC_MASK   0x8 /* "S" bit in s_qrv field */

Definition at line 63 of file mld_proto.h.

#define MLD_TYPE_QUERY   130 /* Query (all versions) */

Definition at line 31 of file mld_proto.h.

#define MLD_TYPE_V1_LEAVE   132 /* Version 1 Leave */

Definition at line 33 of file mld_proto.h.

#define MLD_TYPE_V1_REPORT   131 /* Version 1 Report */

Definition at line 32 of file mld_proto.h.

#define MLD_TYPE_V2_REPORT   143 /* Version 2 Report */

Definition at line 34 of file mld_proto.h.

#define MLD_V1_MAX_MAX_RESP   0xFFFF /* Maximum Max Resp value for V1 */

Definition at line 157 of file mld_proto.h.

Typedef Documentation

typedef struct mld_hdr_ mld_hdr
typedef union mld_packet_ mld_packet
typedef struct mld_v1_pkt_ mld_v1_pkt
typedef struct mld_v2_query_ mld_v2_query
typedef struct mld_v2_report_ mld_v2_report

Function Documentation

static uint8_t* get_mld_v2_rpt_source ( mld_v2_rpt_rcrd ptr)
inlinestatic

Definition at line 80 of file mld_proto.h.