OpenSDN source code
|
Go to the source code of this file.
Classes | |
struct | igmp_hdr_ |
struct | igmp_v1v2_pkt_ |
struct | igmp_v3_query_ |
struct | igmp_v3_rpt_rcrd_ |
struct | igmp_v3_report_ |
struct | igmp_naked_header_ |
union | igmp_packet_ |
Macros | |
#define | IGMP_TYPE_QUERY 0x11 /* Query (all versions) */ |
#define | IGMP_TYPE_V1_REPORT 0x12 /* Version 1 Report */ |
#define | IGMP_TYPE_V2_REPORT 0x16 /* Version 2 Report */ |
#define | IGMP_TYPE_V2_LEAVE 0x17 /* Version 2 Leave */ |
#define | IGMP_TYPE_V3_REPORT 0x22 /* Version 3 Report */ |
#define | IGMP_SUPP_RTR_PROC_MASK 0x8 /* "S" bit in s_qrv field */ |
#define | IGMP_QRV_MASK 0x7 /* QRV value in s_qrv field */ |
#define | IGMP_FIXFLOAT_FLAG 0x80 /* Set if floating point */ |
#define | IGMP_FLOAT_EXP_MASK 0x70 /* Floating point exponent mask */ |
#define | IGMP_FLOAT_EXP_SHIFT 4 /* Shift count for exponent */ |
#define | IGMP_FLOAT_MANT_MASK 0x0F /* Floating point mantissa mask */ |
#define | IGMP_FLOAT_MANT_HIGHBIT 0x10 /* High bit of mantissa */ |
#define | IGMP_FLOAT_MAX_MANT 0x1F /* Max mantissa portion */ |
#define | IGMP_FLOAT_MANT_SHIFT 0 /* Shift count for mantissa */ |
#define | IGMP_FLOAT_EXP_OFFSET 3 /* Offset bits to add */ |
#define | IGMP_FLOAT_MAX_EXP 0x07 /* Maximum exponent value */ |
#define | IGMP_MAX_FLOAT_ENCODABLE |
#define | IGMP_MAX_RESP_MSEC 100 /* Max Resp is in units of 100 msec */ |
#define | IGMP_MAX_RESP_DEFAULT 100 /* Default Max Resp val (* 100 msec) */ |
#define | IGMP_V2_MAX_MAX_RESP 0xFF /* Maximum Max Resp value for V2 */ |
Typedefs | |
typedef struct igmp_hdr_ | igmp_hdr |
typedef struct igmp_v1v2_pkt_ | igmp_v1v2_pkt |
typedef struct igmp_v3_query_ | igmp_v3_query |
typedef struct igmp_v3_rpt_rcrd_ | igmp_v3_rpt_rcrd |
typedef struct igmp_v3_report_ | igmp_v3_report |
typedef struct igmp_naked_header_ | igmp_naked_header |
typedef union igmp_packet_ | igmp_packet |
Functions | |
static uint8_t * | get_igmp_v3_rpt_source (igmp_v3_rpt_rcrd *ptr) |
static boolean | igmp_addr_is_mcast (const uint8_t *addr) |
#define IGMP_FIXFLOAT_FLAG 0x80 /* Set if floating point */ |
Definition at line 117 of file igmp_protocol.h.
#define IGMP_FLOAT_EXP_MASK 0x70 /* Floating point exponent mask */ |
Definition at line 118 of file igmp_protocol.h.
#define IGMP_FLOAT_EXP_OFFSET 3 /* Offset bits to add */ |
Definition at line 124 of file igmp_protocol.h.
#define IGMP_FLOAT_EXP_SHIFT 4 /* Shift count for exponent */ |
Definition at line 119 of file igmp_protocol.h.
#define IGMP_FLOAT_MANT_HIGHBIT 0x10 /* High bit of mantissa */ |
Definition at line 121 of file igmp_protocol.h.
#define IGMP_FLOAT_MANT_MASK 0x0F /* Floating point mantissa mask */ |
Definition at line 120 of file igmp_protocol.h.
#define IGMP_FLOAT_MANT_SHIFT 0 /* Shift count for mantissa */ |
Definition at line 123 of file igmp_protocol.h.
#define IGMP_FLOAT_MAX_EXP 0x07 /* Maximum exponent value */ |
Definition at line 125 of file igmp_protocol.h.
#define IGMP_FLOAT_MAX_MANT 0x1F /* Max mantissa portion */ |
Definition at line 122 of file igmp_protocol.h.
#define IGMP_MAX_FLOAT_ENCODABLE |
Definition at line 126 of file igmp_protocol.h.
#define IGMP_MAX_RESP_DEFAULT 100 /* Default Max Resp val (* 100 msec) */ |
Definition at line 133 of file igmp_protocol.h.
#define IGMP_MAX_RESP_MSEC 100 /* Max Resp is in units of 100 msec */ |
Definition at line 132 of file igmp_protocol.h.
#define IGMP_QRV_MASK 0x7 /* QRV value in s_qrv field */ |
Definition at line 61 of file igmp_protocol.h.
#define IGMP_SUPP_RTR_PROC_MASK 0x8 /* "S" bit in s_qrv field */ |
Definition at line 60 of file igmp_protocol.h.
#define IGMP_TYPE_QUERY 0x11 /* Query (all versions) */ |
Definition at line 31 of file igmp_protocol.h.
#define IGMP_TYPE_V1_REPORT 0x12 /* Version 1 Report */ |
Definition at line 32 of file igmp_protocol.h.
#define IGMP_TYPE_V2_LEAVE 0x17 /* Version 2 Leave */ |
Definition at line 34 of file igmp_protocol.h.
#define IGMP_TYPE_V2_REPORT 0x16 /* Version 2 Report */ |
Definition at line 33 of file igmp_protocol.h.
#define IGMP_TYPE_V3_REPORT 0x22 /* Version 3 Report */ |
Definition at line 35 of file igmp_protocol.h.
#define IGMP_V2_MAX_MAX_RESP 0xFF /* Maximum Max Resp value for V2 */ |
Definition at line 134 of file igmp_protocol.h.
typedef struct igmp_naked_header_ igmp_naked_header |
typedef union igmp_packet_ igmp_packet |
typedef struct igmp_v1v2_pkt_ igmp_v1v2_pkt |
typedef struct igmp_v3_query_ igmp_v3_query |
typedef struct igmp_v3_report_ igmp_v3_report |
typedef struct igmp_v3_rpt_rcrd_ igmp_v3_rpt_rcrd |
|
inlinestatic |
Definition at line 77 of file igmp_protocol.h.
|
inlinestatic |
Definition at line 143 of file igmp_protocol.h.