Add "Modern" STUN to the preference.
svn path=/trunk/; revision=48806
This commit is contained in:
parent
4ab6240b4e
commit
b85877977a
|
@ -133,7 +133,9 @@ static const fragment_items rtp_fragment_items = {
|
||||||
|
|
||||||
static dissector_handle_t rtp_handle;
|
static dissector_handle_t rtp_handle;
|
||||||
static dissector_handle_t classicstun_handle;
|
static dissector_handle_t classicstun_handle;
|
||||||
|
static dissector_handle_t stun_handle;
|
||||||
static dissector_handle_t classicstun_heur_handle;
|
static dissector_handle_t classicstun_heur_handle;
|
||||||
|
static dissector_handle_t stun_heur_handle;
|
||||||
static dissector_handle_t t38_handle;
|
static dissector_handle_t t38_handle;
|
||||||
static dissector_handle_t zrtp_handle;
|
static dissector_handle_t zrtp_handle;
|
||||||
|
|
||||||
|
@ -246,12 +248,14 @@ static int hf_rtp_ext_rfc5285_appbits = -1;
|
||||||
static int hf_rtp_ext_rfc5285_data = -1;
|
static int hf_rtp_ext_rfc5285_data = -1;
|
||||||
|
|
||||||
#define RTP0_INVALID 0
|
#define RTP0_INVALID 0
|
||||||
#define RTP0_CLASSICSTUN 1
|
#define RTP0_STUN 1
|
||||||
#define RTP0_T38 2
|
#define RTP0_CLASSICSTUN 2
|
||||||
#define RTP0_SPRT 3
|
#define RTP0_T38 3
|
||||||
|
#define RTP0_SPRT 4
|
||||||
|
|
||||||
static const enum_val_t rtp_version0_types[] = {
|
static const enum_val_t rtp_version0_types[] = {
|
||||||
{ "invalid", "Invalid or ZRTP packets", RTP0_INVALID },
|
{ "invalid", "Invalid or ZRTP packets", RTP0_INVALID },
|
||||||
|
{ "stun", "STUN packets", RTP0_STUN },
|
||||||
{ "classicstun", "CLASSIC-STUN packets", RTP0_CLASSICSTUN },
|
{ "classicstun", "CLASSIC-STUN packets", RTP0_CLASSICSTUN },
|
||||||
{ "t38", "T.38 packets", RTP0_T38 },
|
{ "t38", "T.38 packets", RTP0_T38 },
|
||||||
{ "sprt", "SPRT packets", RTP0_SPRT },
|
{ "sprt", "SPRT packets", RTP0_SPRT },
|
||||||
|
@ -920,6 +924,8 @@ dissect_rtp_heur_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gbo
|
||||||
return TRUE;
|
return TRUE;
|
||||||
} else {
|
} else {
|
||||||
switch (global_rtp_version0_type) {
|
switch (global_rtp_version0_type) {
|
||||||
|
case RTP0_STUN:
|
||||||
|
return call_dissector_only(stun_heur_handle, tvb, pinfo, tree, NULL);
|
||||||
case RTP0_CLASSICSTUN:
|
case RTP0_CLASSICSTUN:
|
||||||
return call_dissector_only(classicstun_heur_handle, tvb, pinfo, tree, NULL);
|
return call_dissector_only(classicstun_heur_handle, tvb, pinfo, tree, NULL);
|
||||||
|
|
||||||
|
@ -1498,6 +1504,9 @@ dissect_rtp( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
|
||||||
|
|
||||||
if (version == 0) {
|
if (version == 0) {
|
||||||
switch (global_rtp_version0_type) {
|
switch (global_rtp_version0_type) {
|
||||||
|
case RTP0_STUN:
|
||||||
|
call_dissector(stun_handle, tvb, pinfo, tree);
|
||||||
|
return;
|
||||||
case RTP0_CLASSICSTUN:
|
case RTP0_CLASSICSTUN:
|
||||||
call_dissector(classicstun_handle, tvb, pinfo, tree);
|
call_dissector(classicstun_handle, tvb, pinfo, tree);
|
||||||
return;
|
return;
|
||||||
|
@ -3099,8 +3108,10 @@ proto_reg_handoff_rtp(void)
|
||||||
dissector_add_uint("rtp.hdr_ext", RTP_ED137A_SIG, rtp_hdr_ext_ed137a_handle);
|
dissector_add_uint("rtp.hdr_ext", RTP_ED137A_SIG, rtp_hdr_ext_ed137a_handle);
|
||||||
|
|
||||||
data_handle = find_dissector("data");
|
data_handle = find_dissector("data");
|
||||||
|
stun_handle = find_dissector("stun-udp");
|
||||||
classicstun_handle = find_dissector("classicstun");
|
classicstun_handle = find_dissector("classicstun");
|
||||||
classicstun_heur_handle = find_dissector("classicstun-heur");
|
classicstun_heur_handle = find_dissector("classicstun-heur");
|
||||||
|
stun_heur_handle = find_dissector("stun-heur");
|
||||||
t38_handle = find_dissector("t38");
|
t38_handle = find_dissector("t38");
|
||||||
zrtp_handle = find_dissector("zrtp");
|
zrtp_handle = find_dissector("zrtp");
|
||||||
|
|
||||||
|
|
|
@ -1324,6 +1324,9 @@ proto_register_stun(void)
|
||||||
|
|
||||||
/* heuristic subdissectors (used for the DATA field) */
|
/* heuristic subdissectors (used for the DATA field) */
|
||||||
register_heur_dissector_list("stun", &heur_subdissector_list);
|
register_heur_dissector_list("stun", &heur_subdissector_list);
|
||||||
|
|
||||||
|
new_register_dissector("stun-udp", dissect_stun_udp, proto_stun);
|
||||||
|
new_register_dissector("stun-heur", dissect_stun_heur, proto_stun);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
Loading…
Reference in New Issue