suricata
decode-igmp.c File Reference
#include "suricata-common.h"
#include "decode.h"
#include "util-debug.h"
Include dependency graph for decode-igmp.c:

Go to the source code of this file.

Data Structures

struct  IGMPv3MemberQueryHdr_
 
struct  IGMPv3MemberReportGroupRecord_
 
struct  IGMPv3MemberReportHdr_
 

Macros

#define IGMP_TYPE_MEMBERSHIP_QUERY   0x11
 
#define IGMP_TYPE_MEMBERSHIP_REPORT_V1   0x12
 
#define IGMP_TYPE_MEMBERSHIP_REPORT_V2   0x16
 
#define IGMP_TYPE_LEAVE_GROUP_V2   0x17
 
#define IGMP_TYPE_MEMBERSHIP_REPORT_V3   0x22
 
#define IGMP_V3_MAX_N_SOURCES   (65535 - 24 - 12) / 4
 
#define RGMP_DEST_ADDRESS   0xe0000019
 

Typedefs

typedef struct IGMPv3MemberQueryHdr_ IGMPv3MemberQueryHdr
 
typedef struct IGMPv3MemberReportGroupRecord_ IGMPv3MemberReportGroupRecord
 
typedef struct IGMPv3MemberReportHdr_ IGMPv3MemberReportHdr
 

Functions

int DecodeIGMP (ThreadVars *tv, DecodeThreadVars *dtv, Packet *p, const uint8_t *pkt, uint32_t len)
 

Macro Definition Documentation

◆ IGMP_TYPE_LEAVE_GROUP_V2

#define IGMP_TYPE_LEAVE_GROUP_V2   0x17

Definition at line 30 of file decode-igmp.c.

◆ IGMP_TYPE_MEMBERSHIP_QUERY

#define IGMP_TYPE_MEMBERSHIP_QUERY   0x11

Definition at line 27 of file decode-igmp.c.

◆ IGMP_TYPE_MEMBERSHIP_REPORT_V1

#define IGMP_TYPE_MEMBERSHIP_REPORT_V1   0x12

Definition at line 28 of file decode-igmp.c.

◆ IGMP_TYPE_MEMBERSHIP_REPORT_V2

#define IGMP_TYPE_MEMBERSHIP_REPORT_V2   0x16

Definition at line 29 of file decode-igmp.c.

◆ IGMP_TYPE_MEMBERSHIP_REPORT_V3

#define IGMP_TYPE_MEMBERSHIP_REPORT_V3   0x22

Definition at line 31 of file decode-igmp.c.

◆ IGMP_V3_MAX_N_SOURCES

#define IGMP_V3_MAX_N_SOURCES   (65535 - 24 - 12) / 4

Definition at line 36 of file decode-igmp.c.

◆ RGMP_DEST_ADDRESS

#define RGMP_DEST_ADDRESS   0xe0000019

Definition at line 39 of file decode-igmp.c.

Typedef Documentation

◆ IGMPv3MemberQueryHdr

◆ IGMPv3MemberReportGroupRecord

◆ IGMPv3MemberReportHdr

Function Documentation

◆ DecodeIGMP()

int DecodeIGMP ( ThreadVars tv,
DecodeThreadVars dtv,
Packet p,
const uint8_t *  pkt,
uint32_t  len 
)

Definition at line 70 of file decode-igmp.c.

References DecodeThreadVars_::counter_igmp, dtv, ENGINE_SET_INVALID_EVENT, IGMP_PKT_TOO_SMALL, len, ThreadVars_::stats, StatsCounterIncr(), TM_ECODE_FAILED, and tv.

Here is the call graph for this function: