aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-l2tp.c
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/packet-l2tp.c')
-rw-r--r--epan/dissectors/packet-l2tp.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/epan/dissectors/packet-l2tp.c b/epan/dissectors/packet-l2tp.c
index 1a64e6e42b..355d141140 100644
--- a/epan/dissectors/packet-l2tp.c
+++ b/epan/dissectors/packet-l2tp.c
@@ -148,6 +148,7 @@ static enum_val_t l2tpv3_cookies[] = {
#define L2TPv3_PROTOCOL_AAL5 6
#define L2TPv3_PROTOCOL_LAPD 7
#define L2TPv3_PROTOCOL_DOCSIS_DMPT 8
+#define L2TPv3_PROTOCOL_ERICSSON 9
static enum_val_t l2tpv3_protocols[] = {
{"eth", "Ethernet", L2TPv3_PROTOCOL_ETH},
@@ -159,6 +160,7 @@ static enum_val_t l2tpv3_protocols[] = {
{"aal5", "AAL5", L2TPv3_PROTOCOL_AAL5},
{"lapd", "LAPD", L2TPv3_PROTOCOL_LAPD},
{"docsis-dmpt", "DOCSIS-DMPT", L2TPv3_PROTOCOL_DOCSIS_DMPT},
+ {"ehdlc", "Ericsson HDLC", L2TPv3_PROTOCOL_ERICSSON},
{NULL, NULL, 0}
};
@@ -583,6 +585,7 @@ static dissector_handle_t atm_oam_handle;
static dissector_handle_t llc_handle;
static dissector_handle_t lapd_handle;
static dissector_handle_t mp2t_handle;
+static dissector_handle_t ehdlc_handle;
static dissector_handle_t data_handle;
/*
@@ -1495,6 +1498,9 @@ process_l2tpv3_data(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
case L2TPv3_PROTOCOL_LAPD:
call_dissector(lapd_handle, next_tvb, pinfo, tree);
break;
+ case L2TPv3_PROTOCOL_ERICSSON:
+ call_dissector(ehdlc_handle, next_tvb, pinfo, tree);
+ break;
default:
call_dissector(data_handle, next_tvb, pinfo, tree);
break;
@@ -2167,5 +2173,6 @@ proto_reg_handoff_l2tp(void)
llc_handle = find_dissector("llc");
lapd_handle = find_dissector("lapd");
mp2t_handle = find_dissector("mp2t");
+ ehdlc_handle = find_dissector("ehdlc");
data_handle = find_dissector("data");
}