forked from osmocom/wireshark
Display CHAP password's Ident and String components.
svn path=/trunk/; revision=42442
This commit is contained in:
parent
126c94d8c8
commit
ec696f6dc0
|
@ -116,7 +116,11 @@ static int hf_radius_code = -1;
|
|||
static int hf_radius_length = -1;
|
||||
static int hf_radius_authenticator = -1;
|
||||
|
||||
static int hf_radius_chap_password = -1;
|
||||
static int hf_radius_chap_ident = -1;
|
||||
static int hf_radius_chap_string = -1;
|
||||
static int hf_radius_framed_ip_address = -1;
|
||||
|
||||
static int hf_radius_login_ip_host = -1;
|
||||
static int hf_radius_framed_ipx_network = -1;
|
||||
|
||||
|
@ -128,7 +132,7 @@ static int hf_radius_ascend_data_filter = -1;
|
|||
static gint ett_radius = -1;
|
||||
static gint ett_radius_avp = -1;
|
||||
static gint ett_eap = -1;
|
||||
|
||||
static gint ett_chap = -1;
|
||||
/*
|
||||
* Define the tap for radius
|
||||
*/
|
||||
|
@ -304,6 +308,22 @@ static guint radius_call_hash(gconstpointer k)
|
|||
}
|
||||
|
||||
|
||||
static const gchar *dissect_chap_password(proto_tree* tree, tvbuff_t* tvb, packet_info* pinfo _U_) {
|
||||
int len;
|
||||
proto_item *ti;
|
||||
proto_tree *chap_tree;
|
||||
|
||||
len = tvb_length(tvb);
|
||||
if (len != 17)
|
||||
return "[wrong length for CHAP-Password]";
|
||||
|
||||
ti = proto_tree_add_item(tree, hf_radius_chap_password, tvb, 0, len, ENC_NA);
|
||||
chap_tree = proto_item_add_subtree(ti, ett_chap);
|
||||
proto_tree_add_item(chap_tree, hf_radius_chap_ident, tvb, 0, 1, ENC_NA);
|
||||
proto_tree_add_item(chap_tree, hf_radius_chap_string, tvb, 1, 16, ENC_NA);
|
||||
return (tvb_bytes_to_str(tvb, 0, len));
|
||||
}
|
||||
|
||||
static const gchar *dissect_framed_ip_address(proto_tree* tree, tvbuff_t* tvb, packet_info* pinfo _U_) {
|
||||
int len;
|
||||
guint32 ip;
|
||||
|
@ -1885,6 +1905,15 @@ static void register_radius_fields(const char* unused _U_) {
|
|||
{ &(no_dictionary_entry.hf_len),
|
||||
{ "Unknown-Attribute Length","radius.Unknown_Attribute.length", FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ &hf_radius_chap_password,
|
||||
{ "CHAP-Password","radius.CHAP_Password", FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ &hf_radius_chap_ident,
|
||||
{ "CHAP Ident","radius.CHAP_Ident", FT_UINT8, BASE_HEX, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ &hf_radius_chap_string,
|
||||
{ "CHAP String","radius.CHAP_String", FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ &hf_radius_framed_ip_address,
|
||||
{ "Framed-IP-Address","radius.Framed-IP-Address", FT_IPv4, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
@ -1918,6 +1947,7 @@ static void register_radius_fields(const char* unused _U_) {
|
|||
&ett_radius,
|
||||
&ett_radius_avp,
|
||||
&ett_eap,
|
||||
&ett_chap,
|
||||
&(no_dictionary_entry.ett),
|
||||
&(no_vendor.ett),
|
||||
};
|
||||
|
@ -1973,6 +2003,7 @@ static void register_radius_fields(const char* unused _U_) {
|
|||
/*
|
||||
* Handle attributes that have a special format.
|
||||
*/
|
||||
radius_register_avp_dissector(0,3,dissect_chap_password);
|
||||
radius_register_avp_dissector(0,8,dissect_framed_ip_address);
|
||||
radius_register_avp_dissector(0,14,dissect_login_ip_host);
|
||||
radius_register_avp_dissector(0,23,dissect_framed_ipx_network);
|
||||
|
|
Loading…
Reference in New Issue