From 0ce1dab01d875ce868b7a9feab29dee995f0968a Mon Sep 17 00:00:00 2001 From: Guy Harris Date: Thu, 20 Jan 2000 19:16:41 +0000 Subject: [PATCH] Gerrit Gehnen's patch to add support for the "Inactive Subset" of the ISO 8473 CLNP protocol. svn path=/trunk/; revision=1513 --- AUTHORS | 4 ++++ doc/ethereal.pod.template | 1 + packet-osi.c | 15 ++++++++++++++- 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/AUTHORS b/AUTHORS index 4c49b271d7..c82f579225 100644 --- a/AUTHORS +++ b/AUTHORS @@ -228,6 +228,10 @@ Thomas Parvais { updates to L2TP support } +Gerrit Gehnen { + support for "Inactive Subset" of ISO CLNP +} + Alain Magloire was kind enough to give his permission to use his version of snprintf.c. diff --git a/doc/ethereal.pod.template b/doc/ethereal.pod.template index ee22ad3529..be8622ba8f 100644 --- a/doc/ethereal.pod.template +++ b/doc/ethereal.pod.template @@ -807,6 +807,7 @@ B. John Thomes Laurent Cazalet Thomas Parvais + Gerrit Gehnen Alain Magloire was kind enough to give his permission to use his version of snprintf.c. diff --git a/packet-osi.c b/packet-osi.c index 180c46105e..891d5f71d4 100644 --- a/packet-osi.c +++ b/packet-osi.c @@ -1,7 +1,7 @@ /* packet-osi.c * Routines for ISO/OSI network and transport protocol packet disassembly * - * $Id: packet-osi.c,v 1.16 2000/01/13 06:07:53 guy Exp $ + * $Id: packet-osi.c,v 1.17 2000/01/20 19:16:33 guy Exp $ * Laurent Deniel * * Ethereal - Network traffic analyzer @@ -1450,6 +1450,18 @@ void dissect_clnp(const u_char *pd, int offset, frame_data *fd, u_char src_len, dst_len, nsel; u_int first_offset = offset; + if (pd[offset]==NLPID_NULL) { + if (tree) { + ti = proto_tree_add_item(tree, proto_clnp, offset, 1, NULL); + clnp_tree = proto_item_add_subtree(ti, ett_clnp); + proto_tree_add_item_format(clnp_tree, hf_clnp_id, offset, 1, + clnp.cnf_proto_id, + "Inactive subset"); + } + dissect_cotp(pd, offset+1, fd, tree); + return; + } + if (fd->cap_len < offset + sizeof(clnp)) { dissect_data(pd, offset, fd, tree); return; @@ -1601,6 +1613,7 @@ void dissect_osi(const u_char *pd, int offset, frame_data *fd, /* ESIS is not currently decoded */ case NLPID_ISO8473_CLNP: + case NLPID_NULL: /* "Inactive Subset" of ISO 8473 CLNP */ if (check_col(fd, COL_PROTOCOL)) { col_add_str(fd, COL_PROTOCOL, "CLNP"); }