forked from osmocom/wireshark
Do indentation cleanup (e.g., 4-space tabs => spaces)
Reformat a few long lines. svn path=/trunk/; revision=42213
This commit is contained in:
parent
159901cd15
commit
72bf183742
|
@ -171,9 +171,9 @@ dissect_aodv_ext(tvbuff_t * tvb, int offset, proto_tree * tree)
|
|||
val_to_str(type, exttype_vals, "Unknown"));
|
||||
|
||||
if (len == 0) {
|
||||
proto_tree_add_text(ext_tree, tvb, offset + 1, 1,
|
||||
"Invalid option length: %u", len);
|
||||
return; /* we must not try to decode this */
|
||||
proto_tree_add_text(ext_tree, tvb, offset + 1, 1,
|
||||
"Invalid option length: %u", len);
|
||||
return; /* we must not try to decode this */
|
||||
}
|
||||
proto_tree_add_text(ext_tree, tvb, offset + 1, 1,
|
||||
"Length: %u bytes", len);
|
||||
|
@ -182,15 +182,15 @@ dissect_aodv_ext(tvbuff_t * tvb, int offset, proto_tree * tree)
|
|||
|
||||
switch (type) {
|
||||
case AODV_EXT_INT:
|
||||
proto_tree_add_uint(ext_tree, hf_aodv_ext_interval,
|
||||
tvb, offset, 4, tvb_get_ntohl(tvb, offset));
|
||||
proto_tree_add_uint(ext_tree, hf_aodv_ext_interval,
|
||||
tvb, offset, 4, tvb_get_ntohl(tvb, offset));
|
||||
break;
|
||||
case AODV_EXT_NTP:
|
||||
proto_tree_add_item(ext_tree, hf_aodv_ext_timestamp,
|
||||
tvb, offset, 8, ENC_BIG_ENDIAN);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
proto_tree_add_item(ext_tree, hf_aodv_ext_timestamp,
|
||||
tvb, offset, 8, ENC_BIG_ENDIAN);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
/* If multifield extensions appear, we need more
|
||||
* sophisticated handler. For now, this is okay. */
|
||||
|
@ -252,37 +252,37 @@ dissect_aodv_rreq(tvbuff_t *tvb, packet_info *pinfo, proto_tree *aodv_tree,
|
|||
|
||||
rreq_id = tvb_get_ntohl(tvb, offset);
|
||||
if (aodv_tree)
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_rreq_id, tvb, offset, 4,
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_rreq_id, tvb, offset, 4,
|
||||
rreq_id);
|
||||
offset += 4;
|
||||
|
||||
if (is_ipv6) {
|
||||
tvb_get_ipv6(tvb, offset, &dest_addr_v6);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv6(aodv_tree, hf_aodv_dest_ipv6, tvb, offset,
|
||||
INET6_ADDRLEN, (guint8 *)&dest_addr_v6);
|
||||
proto_item_append_text(ti, ", Dest IP: %s",
|
||||
ip6_to_str(&dest_addr_v6));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", D: %s",
|
||||
ip6_to_str(&dest_addr_v6));
|
||||
offset += INET6_ADDRLEN;
|
||||
tvb_get_ipv6(tvb, offset, &dest_addr_v6);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv6(aodv_tree, hf_aodv_dest_ipv6, tvb, offset,
|
||||
INET6_ADDRLEN, (guint8 *)&dest_addr_v6);
|
||||
proto_item_append_text(ti, ", Dest IP: %s",
|
||||
ip6_to_str(&dest_addr_v6));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", D: %s",
|
||||
ip6_to_str(&dest_addr_v6));
|
||||
offset += INET6_ADDRLEN;
|
||||
} else {
|
||||
dest_addr_v4 = tvb_get_ipv4(tvb, offset);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv4(aodv_tree, hf_aodv_dest_ip, tvb, offset, 4,
|
||||
dest_addr_v4);
|
||||
proto_item_append_text(ti, ", Dest IP: %s",
|
||||
ip_to_str((guint8 *)&dest_addr_v4));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", D: %s",
|
||||
ip_to_str((guint8 *)&dest_addr_v4));
|
||||
offset += 4;
|
||||
dest_addr_v4 = tvb_get_ipv4(tvb, offset);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv4(aodv_tree, hf_aodv_dest_ip, tvb, offset, 4,
|
||||
dest_addr_v4);
|
||||
proto_item_append_text(ti, ", Dest IP: %s",
|
||||
ip_to_str((guint8 *)&dest_addr_v4));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", D: %s",
|
||||
ip_to_str((guint8 *)&dest_addr_v4));
|
||||
offset += 4;
|
||||
}
|
||||
|
||||
dest_seqno = tvb_get_ntohl(tvb, offset);
|
||||
if (aodv_tree)
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_dest_seqno, tvb, offset, 4,
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_dest_seqno, tvb, offset, 4,
|
||||
dest_seqno);
|
||||
offset += 4;
|
||||
|
||||
|
@ -312,17 +312,17 @@ dissect_aodv_rreq(tvbuff_t *tvb, packet_info *pinfo, proto_tree *aodv_tree,
|
|||
|
||||
orig_seqno = tvb_get_ntohl(tvb, offset);
|
||||
if (aodv_tree)
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_orig_seqno, tvb, offset, 4,
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_orig_seqno, tvb, offset, 4,
|
||||
orig_seqno);
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, " Id=%u Hcnt=%u DSN=%u OSN=%u",
|
||||
rreq_id,
|
||||
hop_count,
|
||||
dest_seqno,
|
||||
orig_seqno);
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, " Id=%u Hcnt=%u DSN=%u OSN=%u",
|
||||
rreq_id,
|
||||
hop_count,
|
||||
dest_seqno,
|
||||
orig_seqno);
|
||||
offset += 4;
|
||||
|
||||
if (aodv_tree) {
|
||||
extlen = tvb_reported_length_remaining(tvb, offset);
|
||||
extlen = tvb_reported_length_remaining(tvb, offset);
|
||||
if (extlen > 0)
|
||||
dissect_aodv_ext(tvb, offset, aodv_tree);
|
||||
}
|
||||
|
@ -374,71 +374,71 @@ dissect_aodv_rrep(tvbuff_t *tvb, packet_info *pinfo, proto_tree *aodv_tree,
|
|||
offset += 1;
|
||||
|
||||
if (is_ipv6) {
|
||||
tvb_get_ipv6(tvb, offset, &dest_addr_v6);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv6(aodv_tree, hf_aodv_dest_ipv6, tvb, offset,
|
||||
INET6_ADDRLEN, (guint8 *)&dest_addr_v6);
|
||||
proto_item_append_text(ti, ", Dest IP: %s",
|
||||
ip6_to_str(&dest_addr_v6));
|
||||
}
|
||||
tvb_get_ipv6(tvb, offset, &dest_addr_v6);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv6(aodv_tree, hf_aodv_dest_ipv6, tvb, offset,
|
||||
INET6_ADDRLEN, (guint8 *)&dest_addr_v6);
|
||||
proto_item_append_text(ti, ", Dest IP: %s",
|
||||
ip6_to_str(&dest_addr_v6));
|
||||
}
|
||||
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", D: %s",
|
||||
ip6_to_str(&dest_addr_v6));
|
||||
offset += INET6_ADDRLEN;
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", D: %s",
|
||||
ip6_to_str(&dest_addr_v6));
|
||||
offset += INET6_ADDRLEN;
|
||||
} else {
|
||||
dest_addr_v4 = tvb_get_ipv4(tvb, offset);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv4(aodv_tree, hf_aodv_dest_ip, tvb, offset, 4,
|
||||
dest_addr_v4);
|
||||
proto_item_append_text(ti, ", Dest IP: %s",
|
||||
ip_to_str((guint8 *)&dest_addr_v4));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", D: %s",
|
||||
ip_to_str((guint8 *)&dest_addr_v4));
|
||||
offset += 4;
|
||||
dest_addr_v4 = tvb_get_ipv4(tvb, offset);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv4(aodv_tree, hf_aodv_dest_ip, tvb, offset, 4,
|
||||
dest_addr_v4);
|
||||
proto_item_append_text(ti, ", Dest IP: %s",
|
||||
ip_to_str((guint8 *)&dest_addr_v4));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", D: %s",
|
||||
ip_to_str((guint8 *)&dest_addr_v4));
|
||||
offset += 4;
|
||||
}
|
||||
|
||||
dest_seqno = tvb_get_ntohl(tvb, offset);
|
||||
if (aodv_tree)
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_dest_seqno, tvb, offset, 4,
|
||||
dest_seqno);
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_dest_seqno, tvb, offset, 4,
|
||||
dest_seqno);
|
||||
offset += 4;
|
||||
|
||||
if (is_ipv6) {
|
||||
tvb_get_ipv6(tvb, offset, &orig_addr_v6);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv6(aodv_tree, hf_aodv_orig_ipv6, tvb, offset,
|
||||
INET6_ADDRLEN, (guint8 *)&orig_addr_v6);
|
||||
proto_item_append_text(ti, ", Orig IP: %s",
|
||||
ip6_to_str(&orig_addr_v6));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", O: %s",
|
||||
ip6_to_str(&orig_addr_v6));
|
||||
offset += INET6_ADDRLEN;
|
||||
tvb_get_ipv6(tvb, offset, &orig_addr_v6);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv6(aodv_tree, hf_aodv_orig_ipv6, tvb, offset,
|
||||
INET6_ADDRLEN, (guint8 *)&orig_addr_v6);
|
||||
proto_item_append_text(ti, ", Orig IP: %s",
|
||||
ip6_to_str(&orig_addr_v6));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", O: %s",
|
||||
ip6_to_str(&orig_addr_v6));
|
||||
offset += INET6_ADDRLEN;
|
||||
} else {
|
||||
orig_addr_v4 = tvb_get_ipv4(tvb, offset);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv4(aodv_tree, hf_aodv_orig_ip, tvb, offset, 4,
|
||||
orig_addr_v4);
|
||||
proto_item_append_text(ti, ", Orig IP: %s",
|
||||
ip_to_str((guint8 *)&orig_addr_v4));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", O: %s",
|
||||
ip_to_str((guint8 *)&orig_addr_v4));
|
||||
offset += 4;
|
||||
orig_addr_v4 = tvb_get_ipv4(tvb, offset);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_ipv4(aodv_tree, hf_aodv_orig_ip, tvb, offset, 4,
|
||||
orig_addr_v4);
|
||||
proto_item_append_text(ti, ", Orig IP: %s",
|
||||
ip_to_str((guint8 *)&orig_addr_v4));
|
||||
}
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, ", O: %s",
|
||||
ip_to_str((guint8 *)&orig_addr_v4));
|
||||
offset += 4;
|
||||
}
|
||||
|
||||
lifetime = tvb_get_ntohl(tvb, offset);
|
||||
if (aodv_tree) {
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_lifetime, tvb, offset, 4,
|
||||
lifetime);
|
||||
proto_item_append_text(ti, ", Lifetime=%u", lifetime);
|
||||
proto_tree_add_uint(aodv_tree, hf_aodv_lifetime, tvb, offset, 4,
|
||||
lifetime);
|
||||
proto_item_append_text(ti, ", Lifetime=%u", lifetime);
|
||||
}
|
||||
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, " Hcnt=%u DSN=%u Lifetime=%u",
|
||||
hop_count,
|
||||
dest_seqno,
|
||||
lifetime);
|
||||
col_append_fstr(pinfo->cinfo, COL_INFO, " Hcnt=%u DSN=%u Lifetime=%u",
|
||||
hop_count,
|
||||
dest_seqno,
|
||||
lifetime);
|
||||
offset += 4;
|
||||
|
||||
if (aodv_tree) {
|
||||
|
@ -776,10 +776,10 @@ dissect_aodv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
return 0;
|
||||
}
|
||||
|
||||
|
||||
col_add_str(pinfo->cinfo, COL_INFO,
|
||||
val_to_str(type, type_vals,
|
||||
"Unknown AODV Packet Type (%u)"));
|
||||
|
||||
col_add_str(pinfo->cinfo, COL_INFO,
|
||||
val_to_str(type, type_vals,
|
||||
"Unknown AODV Packet Type (%u)"));
|
||||
if (tree) {
|
||||
ti = proto_tree_add_protocol_format(tree, proto_aodv, tvb, 0, -1,
|
||||
"Ad hoc On-demand Distance Vector Routing Protocol, %s",
|
||||
|
|
|
@ -118,11 +118,11 @@ static const char applemidi_unknown_command[] = "unknown command: 0x%04x";
|
|||
|
||||
static void free_encoding_name_str (void *ptr)
|
||||
{
|
||||
encoding_name_and_rate_t *encoding_name_and_rate = (encoding_name_and_rate_t *)ptr;
|
||||
encoding_name_and_rate_t *encoding_name_and_rate = (encoding_name_and_rate_t *)ptr;
|
||||
|
||||
if (encoding_name_and_rate->encoding_name) {
|
||||
g_free(encoding_name_and_rate->encoding_name);
|
||||
}
|
||||
if (encoding_name_and_rate->encoding_name) {
|
||||
g_free(encoding_name_and_rate->encoding_name);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -160,7 +160,10 @@ dissect_applemidi_common( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, g
|
|||
* the protocol version, a random number generated by the initiator of the session,
|
||||
* the SSRC that is used by the respective sides RTP-entity and optionally the
|
||||
* name of the participant */
|
||||
if ( ( APPLEMIDI_COMMAND_INVITATION == command ) || ( APPLEMIDI_COMMAND_INVITATION_REJECTED == command ) || ( APLLEMIDI_COMMAND_INVITATION_ACCEPTED == command ) || ( APPLEMIDI_COMMAND_ENDSESSION == command ) ) {
|
||||
if ( ( APPLEMIDI_COMMAND_INVITATION == command ) ||
|
||||
( APPLEMIDI_COMMAND_INVITATION_REJECTED == command ) ||
|
||||
( APLLEMIDI_COMMAND_INVITATION_ACCEPTED == command ) ||
|
||||
( APPLEMIDI_COMMAND_ENDSESSION == command ) ) {
|
||||
|
||||
proto_tree_add_item( applemidi_tree, hf_applemidi_protocol_version, tvb, offset, 4, ENC_BIG_ENDIAN );
|
||||
offset += 4;
|
||||
|
@ -229,7 +232,8 @@ dissect_applemidi_common( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, g
|
|||
proto_tree_add_item( applemidi_tree, hf_applemidi_ssrc, tvb, offset, 4, ENC_BIG_ENDIAN );
|
||||
offset += 4;
|
||||
|
||||
proto_tree_add_item( applemidi_tree, hf_applemidi_rtp_bitrate_limit, tvb, offset, 4, ENC_BIG_ENDIAN );
|
||||
proto_tree_add_item( applemidi_tree, hf_applemidi_rtp_bitrate_limit,
|
||||
tvb, offset, 4, ENC_BIG_ENDIAN );
|
||||
offset += 4;
|
||||
}
|
||||
/* If there is any remaining data (possibly because an unknown command was encountered),
|
||||
|
@ -315,7 +319,8 @@ dissect_applemidi_heur( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree ) {
|
|||
key = g_malloc( sizeof( gint ) );
|
||||
*key = 97;
|
||||
g_hash_table_insert( rtp_dyn_payload, key, encoding_name_and_rate );
|
||||
rtp_add_address( pinfo, &pinfo->src, pinfo->srcport, 0, APPLEMIDI_DISSECTOR_SHORTNAME, pinfo->fd->num, FALSE, rtp_dyn_payload);
|
||||
rtp_add_address( pinfo, &pinfo->src, pinfo->srcport, 0, APPLEMIDI_DISSECTOR_SHORTNAME,
|
||||
pinfo->fd->num, FALSE, rtp_dyn_payload);
|
||||
|
||||
/* call dissect_applemidi() from now on for UDP packets on this "connection"
|
||||
it is important to do this step after calling rtp_add_address, otherwise
|
||||
|
@ -524,7 +529,9 @@ proto_register_applemidi( void )
|
|||
&ett_applemidi_seq_num
|
||||
};
|
||||
|
||||
proto_applemidi = proto_register_protocol( APPLEMIDI_DISSECTOR_NAME, APPLEMIDI_DISSECTOR_SHORTNAME, APPLEMIDI_DISSECTOR_ABBREVIATION );
|
||||
proto_applemidi = proto_register_protocol( APPLEMIDI_DISSECTOR_NAME,
|
||||
APPLEMIDI_DISSECTOR_SHORTNAME,
|
||||
APPLEMIDI_DISSECTOR_ABBREVIATION );
|
||||
proto_register_field_array( proto_applemidi, hf, array_length( hf ) );
|
||||
proto_register_subtree_array( ett, array_length( ett ) );
|
||||
|
||||
|
|
|
@ -54,7 +54,7 @@ static dissector_handle_t data_handle;
|
|||
|
||||
void
|
||||
capture_arcnet (const guchar *pd, int len, packet_counts *ld,
|
||||
gboolean has_offset, gboolean has_exception)
|
||||
gboolean has_offset, gboolean has_exception)
|
||||
{
|
||||
int offset = has_offset ? 4 : 2;
|
||||
|
||||
|
@ -132,7 +132,7 @@ capture_arcnet (const guchar *pd, int len, packet_counts *ld,
|
|||
|
||||
static void
|
||||
dissect_arcnet_common (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree,
|
||||
gboolean has_offset, gboolean has_exception)
|
||||
gboolean has_offset, gboolean has_exception)
|
||||
{
|
||||
int offset = 0;
|
||||
guint8 dst, src, protID, split_flag;
|
||||
|
@ -146,10 +146,10 @@ dissect_arcnet_common (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree,
|
|||
|
||||
src = tvb_get_guint8 (tvb, 0);
|
||||
dst = tvb_get_guint8 (tvb, 1);
|
||||
SET_ADDRESS(&pinfo->dl_src, AT_ARCNET, 1, tvb_get_ptr(tvb, 0, 1));
|
||||
SET_ADDRESS(&pinfo->src, AT_ARCNET, 1, tvb_get_ptr(tvb, 0, 1));
|
||||
SET_ADDRESS(&pinfo->dl_dst, AT_ARCNET, 1, tvb_get_ptr(tvb, 1, 1));
|
||||
SET_ADDRESS(&pinfo->dst, AT_ARCNET, 1, tvb_get_ptr(tvb, 1, 1));
|
||||
SET_ADDRESS(&pinfo->dl_src, AT_ARCNET, 1, tvb_get_ptr(tvb, 0, 1));
|
||||
SET_ADDRESS(&pinfo->src, AT_ARCNET, 1, tvb_get_ptr(tvb, 0, 1));
|
||||
SET_ADDRESS(&pinfo->dl_dst, AT_ARCNET, 1, tvb_get_ptr(tvb, 1, 1));
|
||||
SET_ADDRESS(&pinfo->dst, AT_ARCNET, 1, tvb_get_ptr(tvb, 1, 1));
|
||||
|
||||
ti = proto_tree_add_item (tree, proto_arcnet, tvb, 0, -1, ENC_NA);
|
||||
|
||||
|
@ -175,7 +175,7 @@ dissect_arcnet_common (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree,
|
|||
case ARCNET_PROTO_IP_1051:
|
||||
case ARCNET_PROTO_ARP_1051:
|
||||
case ARCNET_PROTO_DIAGNOSE:
|
||||
case ARCNET_PROTO_BACNET: /* XXX - no fragmentation? */
|
||||
case ARCNET_PROTO_BACNET: /* XXX - no fragmentation? */
|
||||
/* No fragmentation stuff in the header */
|
||||
break;
|
||||
|
||||
|
@ -211,8 +211,8 @@ dissect_arcnet_common (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree,
|
|||
/* This is an exception packet. The flag value there is the
|
||||
"this is an exception flag" packet; the next two bytes
|
||||
after it are padding. */
|
||||
proto_tree_add_uint (arcnet_tree, hf_arcnet_exception_flag, tvb, offset, 1,
|
||||
split_flag);
|
||||
proto_tree_add_uint (arcnet_tree, hf_arcnet_exception_flag, tvb, offset, 1,
|
||||
split_flag);
|
||||
offset++;
|
||||
|
||||
proto_tree_add_text (arcnet_tree, tvb, offset, 2, "Padding");
|
||||
|
@ -227,7 +227,7 @@ dissect_arcnet_common (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree,
|
|||
}
|
||||
|
||||
proto_tree_add_uint (arcnet_tree, hf_arcnet_split_flag, tvb, offset, 1,
|
||||
split_flag);
|
||||
split_flag);
|
||||
offset++;
|
||||
|
||||
proto_tree_add_item (arcnet_tree, hf_arcnet_sequence, tvb, offset, 2, ENC_BIG_ENDIAN);
|
||||
|
@ -242,9 +242,9 @@ dissect_arcnet_common (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree,
|
|||
next_tvb = tvb_new_subset_remaining (tvb, offset);
|
||||
|
||||
if (!dissector_try_uint (arcnet_dissector_table, protID,
|
||||
next_tvb, pinfo, tree))
|
||||
next_tvb, pinfo, tree))
|
||||
{
|
||||
col_add_fstr (pinfo->cinfo, COL_PROTOCOL, "0x%04x", protID);
|
||||
col_add_fstr (pinfo->cinfo, COL_PROTOCOL, "0x%04x", protID);
|
||||
call_dissector (data_handle, next_tvb, pinfo, tree);
|
||||
}
|
||||
|
||||
|
@ -341,8 +341,8 @@ proto_register_arcnet (void)
|
|||
};
|
||||
|
||||
arcnet_dissector_table = register_dissector_table ("arcnet.protocol_id",
|
||||
"ARCNET Protocol ID",
|
||||
FT_UINT8, BASE_HEX);
|
||||
"ARCNET Protocol ID",
|
||||
FT_UINT8, BASE_HEX);
|
||||
|
||||
/* Register the protocol name and description */
|
||||
proto_arcnet = proto_register_protocol ("ARCNET", "ARCNET", "arcnet");
|
||||
|
@ -362,7 +362,7 @@ proto_reg_handoff_arcnet (void)
|
|||
dissector_add_uint ("wtap_encap", WTAP_ENCAP_ARCNET, arcnet_handle);
|
||||
|
||||
arcnet_linux_handle = create_dissector_handle (dissect_arcnet_linux,
|
||||
proto_arcnet);
|
||||
proto_arcnet);
|
||||
dissector_add_uint ("wtap_encap", WTAP_ENCAP_ARCNET_LINUX, arcnet_linux_handle);
|
||||
data_handle = find_dissector ("data");
|
||||
}
|
||||
|
|
|
@ -115,8 +115,8 @@ typedef struct address_hash_value {
|
|||
static GHashTable *duplicate_result_hash_table = NULL;
|
||||
|
||||
typedef struct duplicate_result_key {
|
||||
guint32 frame_number;
|
||||
guint32 ip_address;
|
||||
guint32 frame_number;
|
||||
guint32 ip_address;
|
||||
} duplicate_result_key;
|
||||
|
||||
|
||||
|
@ -175,8 +175,8 @@ static const value_string atmop_vals[] = {
|
|||
{ATMARPOP_NAK, "nak" },
|
||||
{0, NULL } };
|
||||
|
||||
#define ATMARP_IS_E164 0x40 /* bit in type/length for E.164 format */
|
||||
#define ATMARP_LEN_MASK 0x3F /* length of {sub}address in type/length */
|
||||
#define ATMARP_IS_E164 0x40 /* bit in type/length for E.164 format */
|
||||
#define ATMARP_LEN_MASK 0x3F /* length of {sub}address in type/length */
|
||||
|
||||
/*
|
||||
* Given the hardware address type and length, check whether an address
|
||||
|
@ -220,7 +220,7 @@ arpproaddr_to_str(const guint8 *ad, int ad_len, guint16 type)
|
|||
return bytes_to_str(ad, ad_len);
|
||||
}
|
||||
|
||||
#define MAX_E164_STR_LEN 20
|
||||
#define MAX_E164_STR_LEN 20
|
||||
|
||||
static const gchar *
|
||||
atmarpnum_to_str(const guint8 *ad, int ad_tl)
|
||||
|
@ -323,24 +323,24 @@ arphrdtype_to_str(guint16 hwtype, const char *fmt) {
|
|||
}
|
||||
|
||||
/* Offsets of fields within an ARP packet. */
|
||||
#define AR_HRD 0
|
||||
#define AR_PRO 2
|
||||
#define AR_HLN 4
|
||||
#define AR_PLN 5
|
||||
#define AR_OP 6
|
||||
#define MIN_ARP_HEADER_SIZE 8
|
||||
#define AR_HRD 0
|
||||
#define AR_PRO 2
|
||||
#define AR_HLN 4
|
||||
#define AR_PLN 5
|
||||
#define AR_OP 6
|
||||
#define MIN_ARP_HEADER_SIZE 8
|
||||
|
||||
/* Offsets of fields within an ATMARP packet. */
|
||||
#define ATM_AR_HRD 0
|
||||
#define ATM_AR_PRO 2
|
||||
#define ATM_AR_SHTL 4
|
||||
#define ATM_AR_SSTL 5
|
||||
#define ATM_AR_OP 6
|
||||
#define ATM_AR_SPLN 8
|
||||
#define ATM_AR_THTL 9
|
||||
#define ATM_AR_TSTL 10
|
||||
#define ATM_AR_TPLN 11
|
||||
#define MIN_ATMARP_HEADER_SIZE 12
|
||||
#define ATM_AR_HRD 0
|
||||
#define ATM_AR_PRO 2
|
||||
#define ATM_AR_SHTL 4
|
||||
#define ATM_AR_SSTL 5
|
||||
#define ATM_AR_OP 6
|
||||
#define ATM_AR_SPLN 8
|
||||
#define ATM_AR_THTL 9
|
||||
#define ATM_AR_TSTL 10
|
||||
#define ATM_AR_TPLN 11
|
||||
#define MIN_ATMARP_HEADER_SIZE 12
|
||||
|
||||
static void
|
||||
dissect_atm_number(tvbuff_t *tvb, int offset, int tl, int hf_e164,
|
||||
|
@ -374,8 +374,8 @@ dissect_atm_nsap(tvbuff_t *tvb, int offset, int len, proto_tree *tree)
|
|||
afi = tvb_get_guint8(tvb, offset);
|
||||
switch (afi) {
|
||||
|
||||
case 0x39: /* DCC ATM format */
|
||||
case 0xBD: /* DCC ATM group format */
|
||||
case 0x39: /* DCC ATM format */
|
||||
case 0xBD: /* DCC ATM group format */
|
||||
proto_tree_add_text(tree, tvb, offset + 0, 3,
|
||||
"Data Country Code%s: 0x%04X",
|
||||
(afi == 0xBD) ? " (group)" : "",
|
||||
|
@ -390,8 +390,8 @@ dissect_atm_nsap(tvbuff_t *tvb, int offset, int len, proto_tree *tree)
|
|||
"Selector: 0x%02X", tvb_get_guint8(tvb, offset + 19));
|
||||
break;
|
||||
|
||||
case 0x47: /* ICD ATM format */
|
||||
case 0xC5: /* ICD ATM group format */
|
||||
case 0x47: /* ICD ATM format */
|
||||
case 0xC5: /* ICD ATM group format */
|
||||
proto_tree_add_text(tree, tvb, offset + 0, 3,
|
||||
"International Code Designator%s: 0x%04X",
|
||||
(afi == 0xC5) ? " (group)" : "",
|
||||
|
@ -406,8 +406,8 @@ dissect_atm_nsap(tvbuff_t *tvb, int offset, int len, proto_tree *tree)
|
|||
"Selector: 0x%02X", tvb_get_guint8(tvb, offset + 19));
|
||||
break;
|
||||
|
||||
case 0x45: /* E.164 ATM format */
|
||||
case 0xC3: /* E.164 ATM group format */
|
||||
case 0x45: /* E.164 ATM format */
|
||||
case 0xC3: /* E.164 ATM group format */
|
||||
proto_tree_add_text(tree, tvb, offset + 0, 9,
|
||||
"E.164 ISDN%s: %s",
|
||||
(afi == 0xC3) ? " (group)" : "",
|
||||
|
@ -433,24 +433,28 @@ dissect_atm_nsap(tvbuff_t *tvb, int offset, int len, proto_tree *tree)
|
|||
}
|
||||
|
||||
/* l.s. 32 bits are ipv4 address */
|
||||
static guint address_hash_func(gconstpointer v)
|
||||
static guint
|
||||
address_hash_func(gconstpointer v)
|
||||
{
|
||||
return GPOINTER_TO_UINT(v);
|
||||
}
|
||||
|
||||
/* Compare 2 ipv4 addresses */
|
||||
static gint address_equal_func(gconstpointer v, gconstpointer v2)
|
||||
static gint
|
||||
address_equal_func(gconstpointer v, gconstpointer v2)
|
||||
{
|
||||
return v == v2;
|
||||
}
|
||||
|
||||
static guint duplicate_result_hash_func(gconstpointer v)
|
||||
static guint
|
||||
duplicate_result_hash_func(gconstpointer v)
|
||||
{
|
||||
duplicate_result_key *key = (duplicate_result_key*)v;
|
||||
return (key->frame_number + key->ip_address);
|
||||
}
|
||||
|
||||
static gint duplicate_result_equal_func(gconstpointer v, gconstpointer v2)
|
||||
static gint
|
||||
duplicate_result_equal_func(gconstpointer v, gconstpointer v2)
|
||||
{
|
||||
duplicate_result_key *key1 = (duplicate_result_key*)v;
|
||||
duplicate_result_key *key2 = (duplicate_result_key*)v2;
|
||||
|
@ -463,7 +467,8 @@ static gint duplicate_result_equal_func(gconstpointer v, gconstpointer v2)
|
|||
|
||||
/* Check to see if this mac & ip pair represent 2 devices trying to share
|
||||
the same IP address - report if found (+ return TRUE and set out param) */
|
||||
static gboolean check_for_duplicate_addresses(packet_info *pinfo, proto_tree *tree,
|
||||
static gboolean
|
||||
check_for_duplicate_addresses(packet_info *pinfo, proto_tree *tree,
|
||||
tvbuff_t *tvb,
|
||||
const guint8 *mac, guint32 ip,
|
||||
guint32 *duplicate_ip)
|
||||
|
@ -586,7 +591,8 @@ arp_init_protocol(void)
|
|||
|
||||
|
||||
/* Take note that a request has been seen */
|
||||
static void request_seen(packet_info *pinfo)
|
||||
static void
|
||||
request_seen(packet_info *pinfo)
|
||||
{
|
||||
/* Don't count frame again after already recording first time around. */
|
||||
if (p_get_proto_data(pinfo->fd, proto_arp) == 0)
|
||||
|
@ -596,7 +602,8 @@ static void request_seen(packet_info *pinfo)
|
|||
}
|
||||
|
||||
/* Has storm request rate been exceeded with this request? */
|
||||
static void check_for_storm_count(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||
static void
|
||||
check_for_storm_count(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||
{
|
||||
gboolean report_storm = FALSE;
|
||||
|
||||
|
@ -764,18 +771,18 @@ dissect_atmarp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
case ARPOP_REPLY:
|
||||
case ATMARPOP_NAK:
|
||||
default:
|
||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "ATMARP");
|
||||
break;
|
||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "ATMARP");
|
||||
break;
|
||||
|
||||
case ARPOP_RREQUEST:
|
||||
case ARPOP_RREPLY:
|
||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "ATMRARP");
|
||||
break;
|
||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "ATMRARP");
|
||||
break;
|
||||
|
||||
case ARPOP_IREQUEST:
|
||||
case ARPOP_IREPLY:
|
||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "Inverse ATMARP");
|
||||
break;
|
||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "Inverse ATMARP");
|
||||
break;
|
||||
}
|
||||
|
||||
switch (ar_op) {
|
||||
|
@ -1165,173 +1172,173 @@ proto_register_arp(void)
|
|||
|
||||
static hf_register_info hf[] = {
|
||||
{ &hf_arp_hard_type,
|
||||
{ "Hardware type", "arp.hw.type",
|
||||
FT_UINT16, BASE_DEC, VALS(hrd_vals), 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Hardware type", "arp.hw.type",
|
||||
FT_UINT16, BASE_DEC, VALS(hrd_vals), 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_proto_type,
|
||||
{ "Protocol type", "arp.proto.type",
|
||||
FT_UINT16, BASE_HEX, VALS(etype_vals), 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Protocol type", "arp.proto.type",
|
||||
FT_UINT16, BASE_HEX, VALS(etype_vals), 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_hard_size,
|
||||
{ "Hardware size", "arp.hw.size",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Hardware size", "arp.hw.size",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_sht,
|
||||
{ "Sender ATM number type", "arp.src.htype",
|
||||
FT_BOOLEAN, 8, TFS(&tfs_type_bit), ATMARP_IS_E164,
|
||||
NULL, HFILL }},
|
||||
{ "Sender ATM number type", "arp.src.htype",
|
||||
FT_BOOLEAN, 8, TFS(&tfs_type_bit), ATMARP_IS_E164,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_shl,
|
||||
{ "Sender ATM number length", "arp.src.hlen",
|
||||
FT_UINT8, BASE_DEC, NULL, ATMARP_LEN_MASK,
|
||||
NULL, HFILL }},
|
||||
{ "Sender ATM number length", "arp.src.hlen",
|
||||
FT_UINT8, BASE_DEC, NULL, ATMARP_LEN_MASK,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_sst,
|
||||
{ "Sender ATM subaddress type", "arp.src.stype",
|
||||
FT_BOOLEAN, 8, TFS(&tfs_type_bit), ATMARP_IS_E164,
|
||||
NULL, HFILL }},
|
||||
{ "Sender ATM subaddress type", "arp.src.stype",
|
||||
FT_BOOLEAN, 8, TFS(&tfs_type_bit), ATMARP_IS_E164,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_ssl,
|
||||
{ "Sender ATM subaddress length", "arp.src.slen",
|
||||
FT_UINT8, BASE_DEC, NULL, ATMARP_LEN_MASK,
|
||||
NULL, HFILL }},
|
||||
{ "Sender ATM subaddress length", "arp.src.slen",
|
||||
FT_UINT8, BASE_DEC, NULL, ATMARP_LEN_MASK,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_proto_size,
|
||||
{ "Protocol size", "arp.proto.size",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Protocol size", "arp.proto.size",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_opcode,
|
||||
{ "Opcode", "arp.opcode",
|
||||
FT_UINT16, BASE_DEC, VALS(op_vals), 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Opcode", "arp.opcode",
|
||||
FT_UINT16, BASE_DEC, VALS(op_vals), 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_isgratuitous,
|
||||
{ "Is gratuitous", "arp.isgratuitous",
|
||||
FT_BOOLEAN, BASE_NONE, TFS(&tfs_true_false), 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Is gratuitous", "arp.isgratuitous",
|
||||
FT_BOOLEAN, BASE_NONE, TFS(&tfs_true_false), 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_spln,
|
||||
{ "Sender protocol size", "arp.src.pln",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Sender protocol size", "arp.src.pln",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_tht,
|
||||
{ "Target ATM number type", "arp.dst.htype",
|
||||
FT_BOOLEAN, 8, TFS(&tfs_type_bit), ATMARP_IS_E164,
|
||||
NULL, HFILL }},
|
||||
{ "Target ATM number type", "arp.dst.htype",
|
||||
FT_BOOLEAN, 8, TFS(&tfs_type_bit), ATMARP_IS_E164,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_thl,
|
||||
{ "Target ATM number length", "arp.dst.hlen",
|
||||
FT_UINT8, BASE_DEC, NULL, ATMARP_LEN_MASK,
|
||||
NULL, HFILL }},
|
||||
{ "Target ATM number length", "arp.dst.hlen",
|
||||
FT_UINT8, BASE_DEC, NULL, ATMARP_LEN_MASK,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_tst,
|
||||
{ "Target ATM subaddress type", "arp.dst.stype",
|
||||
FT_BOOLEAN, 8, TFS(&tfs_type_bit), ATMARP_IS_E164,
|
||||
NULL, HFILL }},
|
||||
{ "Target ATM subaddress type", "arp.dst.stype",
|
||||
FT_BOOLEAN, 8, TFS(&tfs_type_bit), ATMARP_IS_E164,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_tsl,
|
||||
{ "Target ATM subaddress length", "arp.dst.slen",
|
||||
FT_UINT8, BASE_DEC, NULL, ATMARP_LEN_MASK,
|
||||
NULL, HFILL }},
|
||||
{ "Target ATM subaddress length", "arp.dst.slen",
|
||||
FT_UINT8, BASE_DEC, NULL, ATMARP_LEN_MASK,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_tpln,
|
||||
{ "Target protocol size", "arp.dst.pln",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Target protocol size", "arp.dst.pln",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_src_hw,
|
||||
{ "Sender hardware address", "arp.src.hw",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Sender hardware address", "arp.src.hw",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_src_hw_mac,
|
||||
{ "Sender MAC address", "arp.src.hw_mac",
|
||||
FT_ETHER, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Sender MAC address", "arp.src.hw_mac",
|
||||
FT_ETHER, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_src_atm_num_e164,
|
||||
{ "Sender ATM number (E.164)", "arp.src.atm_num_e164",
|
||||
FT_STRING, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Sender ATM number (E.164)", "arp.src.atm_num_e164",
|
||||
FT_STRING, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_src_atm_num_nsap,
|
||||
{ "Sender ATM number (NSAP)", "arp.src.atm_num_nsap",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Sender ATM number (NSAP)", "arp.src.atm_num_nsap",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_src_atm_subaddr,
|
||||
{ "Sender ATM subaddress", "arp.src.atm_subaddr",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Sender ATM subaddress", "arp.src.atm_subaddr",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_src_proto,
|
||||
{ "Sender protocol address", "arp.src.proto",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Sender protocol address", "arp.src.proto",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_src_proto_ipv4,
|
||||
{ "Sender IP address", "arp.src.proto_ipv4",
|
||||
FT_IPv4, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Sender IP address", "arp.src.proto_ipv4",
|
||||
FT_IPv4, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_dst_hw,
|
||||
{ "Target hardware address", "arp.dst.hw",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Target hardware address", "arp.dst.hw",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_dst_hw_mac,
|
||||
{ "Target MAC address", "arp.dst.hw_mac",
|
||||
FT_ETHER, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Target MAC address", "arp.dst.hw_mac",
|
||||
FT_ETHER, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_dst_atm_num_e164,
|
||||
{ "Target ATM number (E.164)", "arp.dst.atm_num_e164",
|
||||
FT_STRING, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Target ATM number (E.164)", "arp.dst.atm_num_e164",
|
||||
FT_STRING, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_dst_atm_num_nsap,
|
||||
{ "Target ATM number (NSAP)", "arp.dst.atm_num_nsap",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Target ATM number (NSAP)", "arp.dst.atm_num_nsap",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_atmarp_dst_atm_subaddr,
|
||||
{ "Target ATM subaddress", "arp.dst.atm_subaddr",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Target ATM subaddress", "arp.dst.atm_subaddr",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_dst_proto,
|
||||
{ "Target protocol address", "arp.dst.proto",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
{ "Target protocol address", "arp.dst.proto",
|
||||
FT_BYTES, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_dst_proto_ipv4,
|
||||
{ "Target IP address", "arp.dst.proto_ipv4",
|
||||
FT_IPv4, BASE_NONE, NULL, 0x0,
|
||||
{ "Target IP address", "arp.dst.proto_ipv4",
|
||||
FT_IPv4, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_packet_storm,
|
||||
{ "Packet storm detected", "arp.packet-storm-detected",
|
||||
FT_NONE, BASE_NONE, NULL, 0x0,
|
||||
{ "Packet storm detected", "arp.packet-storm-detected",
|
||||
FT_NONE, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_duplicate_ip_address,
|
||||
{ "Duplicate IP address detected", "arp.duplicate-address-detected",
|
||||
FT_NONE, BASE_NONE, NULL, 0x0,
|
||||
{ "Duplicate IP address detected", "arp.duplicate-address-detected",
|
||||
FT_NONE, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_duplicate_ip_address_earlier_frame,
|
||||
{ "Frame showing earlier use of IP address", "arp.duplicate-address-frame",
|
||||
FT_FRAMENUM, BASE_NONE, NULL, 0x0,
|
||||
{ "Frame showing earlier use of IP address", "arp.duplicate-address-frame",
|
||||
FT_FRAMENUM, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_arp_duplicate_ip_address_seconds_since_earlier_frame,
|
||||
{ "Seconds since earlier frame seen", "arp.seconds-since-duplicate-address-frame",
|
||||
FT_UINT32, BASE_DEC, NULL, 0x0,
|
||||
{ "Seconds since earlier frame seen", "arp.seconds-since-duplicate-address-frame",
|
||||
FT_UINT32, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
};
|
||||
|
@ -1346,7 +1353,7 @@ proto_register_arp(void)
|
|||
module_t *arp_module;
|
||||
|
||||
proto_arp = proto_register_protocol("Address Resolution Protocol",
|
||||
"ARP/RARP", "arp");
|
||||
"ARP/RARP", "arp");
|
||||
proto_register_field_array(proto_arp, hf, array_length(hf));
|
||||
proto_register_subtree_array(ett, array_length(ett));
|
||||
|
||||
|
|
|
@ -1647,11 +1647,11 @@ dissect_artnet(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
|
|||
|
||||
case ARTNET_OP_RDM:
|
||||
hi = proto_tree_add_item(artnet_tree,
|
||||
hf_artnet_rdm,
|
||||
tvb,
|
||||
offset,
|
||||
0,
|
||||
ENC_NA);
|
||||
hf_artnet_rdm,
|
||||
tvb,
|
||||
offset,
|
||||
0,
|
||||
ENC_NA);
|
||||
si = proto_item_add_subtree(hi,ett_artnet);
|
||||
|
||||
size = dissect_artnet_rdm( tvb, offset, si, pinfo );
|
||||
|
@ -2647,12 +2647,12 @@ proto_register_artnet(void) {
|
|||
};
|
||||
|
||||
proto_artnet = proto_register_protocol("Art-Net",
|
||||
"ARTNET","artnet");
|
||||
"ARTNET","artnet");
|
||||
proto_register_field_array(proto_artnet,hf,array_length(hf));
|
||||
proto_register_subtree_array(ett,array_length(ett));
|
||||
|
||||
artnet_module = prefs_register_protocol(proto_artnet,
|
||||
proto_reg_handoff_artnet);
|
||||
proto_reg_handoff_artnet);
|
||||
prefs_register_uint_preference(artnet_module, "udp_port",
|
||||
"UDP Port",
|
||||
"The UDP port on which "
|
||||
|
@ -2661,8 +2661,8 @@ proto_register_artnet(void) {
|
|||
10,&global_udp_port_artnet);
|
||||
|
||||
prefs_register_enum_preference(artnet_module, "dmx_disp_chan_val_type",
|
||||
"DMX Display channel value type",
|
||||
"The way DMX values are displayed",
|
||||
"DMX Display channel value type",
|
||||
"The way DMX values are displayed",
|
||||
&global_disp_chan_val_type,
|
||||
disp_chan_val_types, ENC_BIG_ENDIAN);
|
||||
|
||||
|
|
|
@ -50,9 +50,9 @@ static dissector_handle_t ppp_hdlc_handle;
|
|||
static void
|
||||
dissect_ascend(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||
{
|
||||
proto_tree *fh_tree;
|
||||
proto_item *ti, *hidden_item;
|
||||
union wtap_pseudo_header *pseudo_header = pinfo->pseudo_header;
|
||||
proto_tree *fh_tree;
|
||||
proto_item *ti, *hidden_item;
|
||||
union wtap_pseudo_header *pseudo_header = pinfo->pseudo_header;
|
||||
|
||||
/* load the top pane info. This should be overwritten by
|
||||
the next protocol in the stack */
|
||||
|
@ -77,24 +77,24 @@ dissect_ascend(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
layer (ie none) */
|
||||
if(tree) {
|
||||
ti = proto_tree_add_protocol_format(tree, proto_ascend, tvb, 0, 0,
|
||||
"Lucent/Ascend packet trace");
|
||||
"Lucent/Ascend packet trace");
|
||||
fh_tree = proto_item_add_subtree(ti, ett_raw);
|
||||
proto_tree_add_uint(fh_tree, hf_link_type, tvb, 0, 0,
|
||||
pseudo_header->ascend.type);
|
||||
pseudo_header->ascend.type);
|
||||
if (pseudo_header->ascend.type == ASCEND_PFX_WDD) {
|
||||
proto_tree_add_string(fh_tree, hf_called_number, tvb, 0, 0,
|
||||
pseudo_header->ascend.call_num);
|
||||
pseudo_header->ascend.call_num);
|
||||
proto_tree_add_uint(fh_tree, hf_chunk, tvb, 0, 0,
|
||||
pseudo_header->ascend.chunk);
|
||||
pseudo_header->ascend.chunk);
|
||||
hidden_item = proto_tree_add_uint(fh_tree, hf_session_id, tvb, 0, 0, 0);
|
||||
PROTO_ITEM_SET_HIDDEN(hidden_item);
|
||||
PROTO_ITEM_SET_HIDDEN(hidden_item);
|
||||
} else { /* It's wandsession data */
|
||||
proto_tree_add_string(fh_tree, hf_user_name, tvb, 0, 0,
|
||||
pseudo_header->ascend.user);
|
||||
pseudo_header->ascend.user);
|
||||
proto_tree_add_uint(fh_tree, hf_session_id, tvb, 0, 0,
|
||||
pseudo_header->ascend.sess);
|
||||
pseudo_header->ascend.sess);
|
||||
hidden_item = proto_tree_add_uint(fh_tree, hf_chunk, tvb, 0, 0, 0);
|
||||
PROTO_ITEM_SET_HIDDEN(hidden_item);
|
||||
PROTO_ITEM_SET_HIDDEN(hidden_item);
|
||||
}
|
||||
proto_tree_add_uint(fh_tree, hf_task, tvb, 0, 0, pseudo_header->ascend.task);
|
||||
}
|
||||
|
@ -117,35 +117,35 @@ proto_register_ascend(void)
|
|||
{
|
||||
static hf_register_info hf[] = {
|
||||
{ &hf_link_type,
|
||||
{ "Link type", "ascend.type", FT_UINT32, BASE_DEC, VALS(encaps_vals), 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Link type", "ascend.type", FT_UINT32, BASE_DEC, VALS(encaps_vals), 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_session_id,
|
||||
{ "Session ID", "ascend.sess", FT_UINT32, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Session ID", "ascend.sess", FT_UINT32, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_called_number,
|
||||
{ "Called number", "ascend.number", FT_STRING, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Called number", "ascend.number", FT_STRING, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_chunk,
|
||||
{ "WDD Chunk", "ascend.chunk", FT_UINT32, BASE_HEX, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "WDD Chunk", "ascend.chunk", FT_UINT32, BASE_HEX, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_task,
|
||||
{ "Task", "ascend.task", FT_UINT32, BASE_HEX, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "Task", "ascend.task", FT_UINT32, BASE_HEX, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
|
||||
{ &hf_user_name,
|
||||
{ "User name", "ascend.user", FT_STRING, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
{ "User name", "ascend.user", FT_STRING, BASE_NONE, NULL, 0x0,
|
||||
NULL, HFILL }},
|
||||
};
|
||||
static gint *ett[] = {
|
||||
&ett_raw,
|
||||
};
|
||||
|
||||
proto_ascend = proto_register_protocol("Lucent/Ascend debug output",
|
||||
"Lucent/Ascend", "ascend");
|
||||
"Lucent/Ascend", "ascend");
|
||||
proto_register_field_array(proto_ascend, hf, array_length(hf));
|
||||
proto_register_subtree_array(ett, array_length(ett));
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue