Enhance GPOS type
Convert proto_tree_add_text calls to proto_tree_add_item svn path=/trunk/; revision=51700
This commit is contained in:
parent
7b012cf03e
commit
7668baf5da
|
@ -259,6 +259,12 @@ static int hf_dns_apl_afdlength = -1;
|
||||||
static int hf_dns_apl_afdpart_ipv4 = -1;
|
static int hf_dns_apl_afdpart_ipv4 = -1;
|
||||||
static int hf_dns_apl_afdpart_ipv6 = -1;
|
static int hf_dns_apl_afdpart_ipv6 = -1;
|
||||||
static int hf_dns_apl_afdpart_data = -1;
|
static int hf_dns_apl_afdpart_data = -1;
|
||||||
|
static int hf_dns_gpos_longitude_length = -1;
|
||||||
|
static int hf_dns_gpos_longitude = -1;
|
||||||
|
static int hf_dns_gpos_latitude_length = -1;
|
||||||
|
static int hf_dns_gpos_latitude = -1;
|
||||||
|
static int hf_dns_gpos_altitude_length = -1;
|
||||||
|
static int hf_dns_gpos_altitude = -1;
|
||||||
static int hf_dns_nsap_rdata = -1;
|
static int hf_dns_nsap_rdata = -1;
|
||||||
static int hf_dns_caa_flags = -1;
|
static int hf_dns_caa_flags = -1;
|
||||||
static int hf_dns_caa_flag_issuer_critical = -1;
|
static int hf_dns_caa_flag_issuer_critical = -1;
|
||||||
|
@ -3183,7 +3189,7 @@ dissect_dns_answer(tvbuff_t *tvb, int offsetx, int dns_data_offset,
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case T_GPOS:
|
case T_GPOS: /* Geographical POSition (27) */
|
||||||
{
|
{
|
||||||
guint8 long_len, lat_len, alt_len;
|
guint8 long_len, lat_len, alt_len;
|
||||||
|
|
||||||
|
@ -3193,19 +3199,29 @@ dissect_dns_answer(tvbuff_t *tvb, int offsetx, int dns_data_offset,
|
||||||
if (data_len < 1) {
|
if (data_len < 1) {
|
||||||
goto bad_rr;
|
goto bad_rr;
|
||||||
}
|
}
|
||||||
|
proto_tree_add_item(rr_tree, hf_dns_gpos_longitude_length, tvb, cur_offset, 1, ENC_NA);
|
||||||
long_len = tvb_get_guint8(tvb, cur_offset);
|
long_len = tvb_get_guint8(tvb, cur_offset);
|
||||||
proto_tree_add_text(rr_tree, tvb, cur_offset + 1, long_len,
|
cur_offset += 1;
|
||||||
"Longitude: %.*s", long_len, tvb_get_ephemeral_string(tvb, cur_offset +1 , long_len));
|
|
||||||
cur_offset += 1 + long_len;
|
|
||||||
|
|
||||||
|
proto_tree_add_item(rr_tree, hf_dns_gpos_longitude, tvb, cur_offset, long_len, ENC_ASCII|ENC_NA);
|
||||||
|
cur_offset += long_len;
|
||||||
|
|
||||||
|
|
||||||
|
proto_tree_add_item(rr_tree, hf_dns_gpos_latitude_length, tvb, cur_offset, 1, ENC_NA);
|
||||||
lat_len = tvb_get_guint8(tvb, cur_offset);
|
lat_len = tvb_get_guint8(tvb, cur_offset);
|
||||||
proto_tree_add_text(rr_tree, tvb, cur_offset + 1, lat_len,
|
cur_offset += 1;
|
||||||
"Latitude: %.*s", lat_len, tvb_get_ephemeral_string(tvb, cur_offset + 1, lat_len));
|
|
||||||
cur_offset += 1 + lat_len;
|
|
||||||
|
|
||||||
|
proto_tree_add_item(rr_tree, hf_dns_gpos_latitude, tvb, cur_offset, lat_len, ENC_ASCII|ENC_NA);
|
||||||
|
cur_offset += lat_len;
|
||||||
|
|
||||||
|
|
||||||
|
proto_tree_add_item(rr_tree, hf_dns_gpos_altitude_length, tvb, cur_offset, 1, ENC_NA);
|
||||||
alt_len = tvb_get_guint8(tvb, cur_offset);
|
alt_len = tvb_get_guint8(tvb, cur_offset);
|
||||||
proto_tree_add_text(rr_tree, tvb, cur_offset + 1, alt_len,
|
cur_offset += 1;
|
||||||
"Altitude: %.*s", alt_len, tvb_get_ephemeral_string(tvb, cur_offset + 1, alt_len));
|
|
||||||
|
proto_tree_add_item(rr_tree, hf_dns_gpos_altitude, tvb, cur_offset, alt_len, ENC_ASCII|ENC_NA);
|
||||||
|
/*cur_offset += alt_len;*/
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -4925,6 +4941,36 @@ proto_register_dns(void)
|
||||||
FT_BYTES, BASE_NONE, NULL, 0,
|
FT_BYTES, BASE_NONE, NULL, 0,
|
||||||
NULL, HFILL }},
|
NULL, HFILL }},
|
||||||
|
|
||||||
|
{ &hf_dns_gpos_longitude_length,
|
||||||
|
{ "Longitude length","dns.gpos.longitude_length",
|
||||||
|
FT_UINT8, BASE_DEC, NULL, 0,
|
||||||
|
NULL, HFILL }},
|
||||||
|
|
||||||
|
{ &hf_dns_gpos_longitude,
|
||||||
|
{ "Longitude","dns.gpos.longitude",
|
||||||
|
FT_STRING, BASE_NONE, NULL, 0,
|
||||||
|
NULL, HFILL }},
|
||||||
|
|
||||||
|
{ &hf_dns_gpos_latitude_length,
|
||||||
|
{ "Latitude length","dns.gpos.latitude_length",
|
||||||
|
FT_UINT8, BASE_DEC, NULL, 0,
|
||||||
|
NULL, HFILL }},
|
||||||
|
|
||||||
|
{ &hf_dns_gpos_latitude,
|
||||||
|
{ "Latitude","dns.gpos.latitude",
|
||||||
|
FT_STRING, BASE_NONE, NULL, 0,
|
||||||
|
NULL, HFILL }},
|
||||||
|
|
||||||
|
{ &hf_dns_gpos_altitude_length,
|
||||||
|
{ "Altitude length","dns.gpos.altitude_length",
|
||||||
|
FT_UINT8, BASE_DEC, NULL, 0,
|
||||||
|
NULL, HFILL }},
|
||||||
|
|
||||||
|
{ &hf_dns_gpos_altitude,
|
||||||
|
{ "Altitude","dns.gpos.altitude",
|
||||||
|
FT_STRING, BASE_NONE, NULL, 0,
|
||||||
|
NULL, HFILL }},
|
||||||
|
|
||||||
{ &hf_dns_nsap_rdata,
|
{ &hf_dns_nsap_rdata,
|
||||||
{ "NSAP Data", "dns.nsap.rdata",
|
{ "NSAP Data", "dns.nsap.rdata",
|
||||||
FT_BYTES, BASE_NONE, NULL, 0,
|
FT_BYTES, BASE_NONE, NULL, 0,
|
||||||
|
|
Loading…
Reference in New Issue