aboutsummaryrefslogtreecommitdiffstats
path: root/packet-aarp.c
diff options
context:
space:
mode:
authorGilbert Ramirez <gram@alumni.rice.edu>2000-03-12 04:48:32 +0000
committerGilbert Ramirez <gram@alumni.rice.edu>2000-03-12 04:48:32 +0000
commitf6e92a9e939a28327eea49b5931715ba97a62970 (patch)
tree0b5f52ee7613baacc77f73697eb895592aa6a137 /packet-aarp.c
parent3d6cb57256c889b2f1ba51e89886d9bb9ea812fb (diff)
Break proto_tree_add_item_format() into multiple functions:
proto_tree_add_protocol_format() proto_tree_add_uint_format() proto_tree_add_ipxnet_format() proto_tree_add_ipv4_format() proto_tree_add_ipv6_format() proto_tree_add_bytes_format() proto_tree_add_string_format() proto_tree_add_ether_format() proto_tree_add_time_format() proto_tree_add_double_format() proto_tree_add_boolean_format() If using GCC 2.x, we can check the print-format against the variable args passed in. Regardless of compiler, we can now check at run-time that the field type passed into the function corresponds to what that function expects (FT_UINT, FT_BOOLEAN, etc.) Note that proto_tree_add_protocol_format() does not require a value field, since the value of a protocol is always NULL. It's more intuitive w/o the vestigial argument. Fixed a proto_tree_add_item_format-related bug in packet-isis-hello.c Fixed a variable usage bug in packet-v120.c. (ett_* was used instead of hf_*) Checked in Guy's fix for the function declearation for proto_tree_add_text() and proto_tree_add_notext(). svn path=/trunk/; revision=1713
Diffstat (limited to 'packet-aarp.c')
-rw-r--r--packet-aarp.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/packet-aarp.c b/packet-aarp.c
index 49af2ede28..f12149aeb8 100644
--- a/packet-aarp.c
+++ b/packet-aarp.c
@@ -1,7 +1,7 @@
/* packet-aarp.c
* Routines for Appletalk ARP packet disassembly
*
- * $Id: packet-aarp.c,v 1.16 1999/12/10 00:45:15 nneul Exp $
+ * $Id: packet-aarp.c,v 1.17 2000/03/12 04:47:33 gram Exp $
*
* Simon Wilkinson <sxw@dcs.ed.ac.uk>
*
@@ -191,13 +191,13 @@ dissect_aarp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree) {
if (tree) {
if ((op_str = match_strval(ar_op, op_vals)))
- ti = proto_tree_add_item_format(tree, proto_aarp, offset,
+ ti = proto_tree_add_protocol_format(tree, proto_aarp, offset,
MIN_AARP_HEADER_SIZE + 2*ar_hln +
- 2*ar_pln, NULL, "AppleTalk Address Resolution Protocol (%s)", op_str);
+ 2*ar_pln, "AppleTalk Address Resolution Protocol (%s)", op_str);
else
- ti = proto_tree_add_item_format(tree, proto_aarp, offset,
+ ti = proto_tree_add_protocol_format(tree, proto_aarp, offset,
MIN_AARP_HEADER_SIZE + 2*ar_hln +
- 2*ar_pln, NULL,
+ 2*ar_pln,
"AppleTalk Address Resolution Protocol (opcode 0x%04x)", ar_op);
aarp_tree = proto_item_add_subtree(ti, ett_aarp);
proto_tree_add_item(aarp_tree, hf_aarp_hard_type, offset + AR_HRD, 2,
@@ -210,16 +210,16 @@ dissect_aarp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree) {
ar_pln);
proto_tree_add_item(aarp_tree, hf_aarp_opcode, offset + AR_OP, 2,
ar_op);
- proto_tree_add_item_format(aarp_tree, hf_aarp_src_ether, sha_offset, ar_hln,
+ proto_tree_add_bytes_format(aarp_tree, hf_aarp_src_ether, sha_offset, ar_hln,
&pd[sha_offset],
"Sender hardware address: %s", sha_str);
- proto_tree_add_item_format(aarp_tree, hf_aarp_src_id, spa_offset, ar_pln,
+ proto_tree_add_bytes_format(aarp_tree, hf_aarp_src_id, spa_offset, ar_pln,
&pd[spa_offset],
"Sender ID: %s", spa_str);
- proto_tree_add_item_format(aarp_tree, hf_aarp_dst_ether, tha_offset, ar_hln,
+ proto_tree_add_bytes_format(aarp_tree, hf_aarp_dst_ether, tha_offset, ar_hln,
&pd[tha_offset],
"Target hardware address: %s", tha_str);
- proto_tree_add_item_format(aarp_tree, hf_aarp_dst_id, tpa_offset, ar_pln,
+ proto_tree_add_bytes_format(aarp_tree, hf_aarp_dst_id, tpa_offset, ar_pln,
&pd[tpa_offset],
"Target ID: %s", tpa_str);
}