diff options
author | guy <guy@f5534014-38df-0310-8fa8-9805f1628bb7> | 1999-12-15 04:34:44 +0000 |
---|---|---|
committer | guy <guy@f5534014-38df-0310-8fa8-9805f1628bb7> | 1999-12-15 04:34:44 +0000 |
commit | 054f7296d7281bf34087b56316efb52753ef844a (patch) | |
tree | 0a958301de2292ab1157f0cde0470c54a2712590 /packet-isis-clv.h | |
parent | 7c7b99b15848c266b1ba7281d1d49cd56c7ea060 (diff) |
Stuart Stanley's ISIS dissection support.
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1340 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'packet-isis-clv.h')
-rw-r--r-- | packet-isis-clv.h | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/packet-isis-clv.h b/packet-isis-clv.h new file mode 100644 index 0000000000..a604364f2f --- /dev/null +++ b/packet-isis-clv.h @@ -0,0 +1,59 @@ +/* packet-isis-clv.h + * Declares for common clv decoding functions. + * + * $Id: packet-isis-clv.h,v 1.1 1999/12/15 04:34:17 guy Exp $ + * Stuart Stanley <stuarts@mxmail.net> + * + * Ethereal - Network traffic analyzer + * By Gerald Combs <gerald@zing.org> + * Copyright 1998 Gerald Combs + * + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * + */ +#ifndef _PACKET_ISIS_CLV_H +#define _PACKET_ISIS_CLV_H + +/* + * Our sub-packet dismantle structure for CLV's + */ +typedef struct { + int optcode; /* code for option */ + char *tree_text; /* text for fold out */ + gint *tree_id; /* id for add_item */ + void (*dissect)(const u_char *pd, int offset, guint length, + frame_data *fd, proto_tree *tree ); +} isis_clv_handle_t; + +/* + * Published API functions. NOTE, this are "local" API functions and + * are only valid from with isis decodes. + */ +extern void isis_dissect_clvs(const isis_clv_handle_t *opts, int len, + const u_char *pd, int offset, frame_data *fd, proto_tree *tree, + int unknown_ett_handle ); +extern void isis_dissect_area_address_clv(const u_char *pd, int offset, + guint length, frame_data *fd, proto_tree *tree ); +extern void isis_dissect_metric(proto_tree *tree, int offset, guint8 value, + char *pstr, int force_supported, gint tree_id ); +extern void isis_dissect_authentication_clv(const u_char *pd, int offset, + guint length, frame_data *fd, proto_tree *tree, char *meaning); +extern void isis_dissect_ip_int_clv(const u_char *pd, int offset, + guint length, frame_data *fd, proto_tree *tree, gint tree_id ); +extern void isis_dissect_nlpid_clv(const u_char *pd, int offset, + guint length, frame_data *fd, proto_tree *tree ); +#endif /* _PACKET_ISIS_CLV_H */ |