diff --git a/src/decode-vlan.c b/src/decode-vlan.c index d9424c9f9a..979014bc9b 100644 --- a/src/decode-vlan.c +++ b/src/decode-vlan.c @@ -130,6 +130,11 @@ int DecodeVLAN(ThreadVars *tv, DecodeThreadVars *dtv, Packet *p, break; case ETHERNET_TYPE_ARP: break; + case ETHERNET_TYPE_MPLS_UNICAST: + case ETHERNET_TYPE_MPLS_MULTICAST: + DecodeMPLS(tv, dtv, p, pkt + VLAN_HEADER_LEN, + len - VLAN_HEADER_LEN, pq); + break; default: SCLogDebug("unknown VLAN type: %" PRIx32 "", proto); ENGINE_SET_INVALID_EVENT(p, VLAN_UNKNOWN_TYPE);