decode-vxlan.c File Reference
#include "suricata-common.h"
#include "decode.h"
#include "decode-vxlan.h"
#include "decode-events.h"
#include "detect.h"
#include "detect-engine-port.h"
#include "flow.h"
#include "util-validate.h"
#include "util-unittest.h"
#include "util-debug.h"
Include dependency graph for decode-vxlan.c:

Go to the source code of this file.

Data Structures

struct  VXLANHeader_


#define VXLAN_HEADER_LEN   sizeof(VXLANHeader)
#define VXLAN_MAX_PORTS   4
#define VXLAN_UNSET_PORT   -1
#define VXLAN_DEFAULT_PORT   4789
#define VXLAN_DEFAULT_PORT_S   "4789"


typedef struct VXLANHeader_ VXLANHeader


bool DecodeVXLANEnabledForPort (const uint16_t sp, const uint16_t dp)
void DecodeVXLANConfig (void)
int DecodeVXLAN (ThreadVars *tv, DecodeThreadVars *dtv, Packet *p, const uint8_t *pkt, uint32_t len)
void DecodeVXLANRegisterTests (void)

Detailed Description

Henrik Kramshoej

VXLAN tunneling scheme decoder.

This implementation is based on the following specification doc:

Definition in file decode-vxlan.c.

Macro Definition Documentation


#define VXLAN_DEFAULT_PORT   4789

Definition at line 48 of file decode-vxlan.c.


#define VXLAN_DEFAULT_PORT_S   "4789"

Definition at line 49 of file decode-vxlan.c.


#define VXLAN_HEADER_LEN   sizeof(VXLANHeader)

Definition at line 44 of file decode-vxlan.c.


#define VXLAN_MAX_PORTS   4

Definition at line 46 of file decode-vxlan.c.


#define VXLAN_UNSET_PORT   -1

Definition at line 47 of file decode-vxlan.c.

Typedef Documentation

◆ VXLANHeader

typedef struct VXLANHeader_ VXLANHeader

Function Documentation

◆ DecodeVXLAN()

int DecodeVXLAN ( ThreadVars tv,
DecodeThreadVars dtv,
Packet p,
const uint8_t *  pkt,
uint32_t  len 
pktpayload data directly above UDP header
lenlength in bytes of pkt

Definition at line 122 of file decode-vxlan.c.

References DEBUG_VALIDATE_BUG_ON, and unlikely.

◆ DecodeVXLANConfig()

void DecodeVXLANConfig ( void  )

Definition at line 98 of file decode-vxlan.c.

References ConfGetBool().

Referenced by DecodeGlobalConfig().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ DecodeVXLANEnabledForPort()

bool DecodeVXLANEnabledForPort ( const uint16_t  sp,
const uint16_t  dp 

Definition at line 62 of file decode-vxlan.c.

References SCLogDebug.

◆ DecodeVXLANRegisterTests()

void DecodeVXLANRegisterTests ( void  )

Definition at line 270 of file decode-vxlan.c.

References UtRegisterTest().

Here is the call graph for this function: