[Diameter 3GPP] Add subdissection of AVP 1679 AIR-Flags
Change-Id: I783385b85cfb67d3b0d4affc82a6071e4de51062 Reviewed-on: https://code.wireshark.org/review/21824 Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
This commit is contained in:
parent
9b24ffcd6f
commit
1902204f96
|
@ -323,6 +323,9 @@ static int hf_diameter_3gpp_sar_flags = -1;
|
|||
static int hf_diameter_3gpp_sar_flags_flags_bit0 = -1;
|
||||
static int hf_diameter_3gpp_emergency_services_flags = -1;
|
||||
static int hf_diameter_3gpp_emergency_services_flags_bit0 = -1;
|
||||
static int hf_diameter_3gpp_air_flags = -1;
|
||||
static int hf_diameter_3gpp_air_flags_spare_bits = -1;
|
||||
static int hf_diameter_3gpp_air_flags_bit0 = -1;
|
||||
|
||||
static int hf_diameter_3gpp_uar_flags_flags_spare_bits = -1;
|
||||
static int hf_diameter_3gpp_feature_list1_sh_flags_spare_bits = -1;
|
||||
|
@ -383,6 +386,7 @@ static gint diameter_3gpp_tmgi_allocation_result_ett = -1;
|
|||
static gint diameter_3gpp_tmgi_deallocation_result_ett = -1;
|
||||
static gint diameter_3gpp_sar_flags_ett = -1;
|
||||
static gint diameter_3gpp_emergency_services_flags_ett = -1;
|
||||
static gint diameter_3gpp_air_flags_ett = -1;
|
||||
|
||||
static int hf_diameter_3gpp_feature_list1_rx_flags_bit0 = -1;
|
||||
static int hf_diameter_3gpp_feature_list1_rx_flags_bit1 = -1;
|
||||
|
@ -1913,6 +1917,23 @@ dissect_diameter_3gpp_emergency_services(tvbuff_t *tvb, packet_info *pinfo _U_,
|
|||
|
||||
}
|
||||
|
||||
/* 3GPP TS 29.272
|
||||
* 7.3.201 AIR-Flags
|
||||
* AVP Code: 1679 AIR-Flags
|
||||
*/
|
||||
static int
|
||||
dissect_diameter_3gpp_air_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
|
||||
{
|
||||
static const int *flags[] = {
|
||||
&hf_diameter_3gpp_air_flags_spare_bits,
|
||||
&hf_diameter_3gpp_air_flags_bit0,
|
||||
NULL
|
||||
};
|
||||
|
||||
proto_tree_add_bitmask_with_flags(tree, tvb, 0, hf_diameter_3gpp_air_flags, diameter_3gpp_air_flags_ett, flags, ENC_BIG_ENDIAN, BMT_NO_APPEND);
|
||||
return 4;
|
||||
}
|
||||
|
||||
/* AVP Code: 2516 EUTRAN-Positioning-Data */
|
||||
static int
|
||||
dissect_diameter_3gpp_eutran_positioning_data(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
|
||||
|
@ -2243,6 +2264,9 @@ proto_reg_handoff_diameter_3gpp(void)
|
|||
/* AVP Code: 1538 Emergency-Services */
|
||||
dissector_add_uint("diameter.3gpp", 1538, create_dissector_handle(dissect_diameter_3gpp_emergency_services, proto_diameter_3gpp));
|
||||
|
||||
/* AVP Code: 1679 AIR-Flags */
|
||||
dissector_add_uint("diameter.3gpp", 1679, create_dissector_handle(dissect_diameter_3gpp_air_flags, proto_diameter_3gpp));
|
||||
|
||||
/* AVP Code: 2516 EUTRAN-Positioning-Data */
|
||||
dissector_add_uint("diameter.3gpp", 2516, create_dissector_handle(dissect_diameter_3gpp_eutran_positioning_data, proto_diameter_3gpp));
|
||||
|
||||
|
@ -4116,6 +4140,21 @@ proto_register_diameter_3gpp(void)
|
|||
FT_UINT32, BASE_HEX, NULL, 0xFFFFFFFE,
|
||||
NULL, HFILL }
|
||||
},
|
||||
{ &hf_diameter_3gpp_air_flags,
|
||||
{ "AIR Flags", "diameter.3gpp.air_flags",
|
||||
FT_UINT32, BASE_HEX, NULL, 0x0,
|
||||
NULL, HFILL }
|
||||
},
|
||||
{ &hf_diameter_3gpp_air_flags_spare_bits,
|
||||
{ "Spare", "diameter.3gpp.ulr_flags_spare",
|
||||
FT_UINT32, BASE_HEX, NULL, 0xFFFFFFFE,
|
||||
NULL, HFILL }
|
||||
},
|
||||
{ &hf_diameter_3gpp_air_flags_bit0,
|
||||
{ "Send UE Usage Type", "diameter.3gpp.air_flags_bit0",
|
||||
FT_BOOLEAN, 32, TFS(&tfs_set_notset), 0x00000001,
|
||||
NULL, HFILL }
|
||||
},
|
||||
|
||||
};
|
||||
|
||||
|
@ -4148,6 +4187,7 @@ proto_register_diameter_3gpp(void)
|
|||
&diameter_3gpp_tmgi_deallocation_result_ett,
|
||||
&diameter_3gpp_sar_flags_ett,
|
||||
&diameter_3gpp_emergency_services_flags_ett,
|
||||
&diameter_3gpp_air_flags_ett,
|
||||
};
|
||||
|
||||
expert_module_t *expert_diameter_3gpp;
|
||||
|
|
Loading…
Reference in New Issue