Include "conversation.h", as the plugin API now includes the routines to
[obnox/wireshark/wip.git] / packet-isis-hello.h
1 /* packet-isis-hello.h
2  * Declares for hello handling inside isis.
3  *
4  * $Id: packet-isis-hello.h,v 1.5 2001/07/02 00:19:34 guy Exp $
5  * Stuart Stanley <stuarts@mxmail.net>
6  *
7  * Ethereal - Network traffic analyzer
8  * By Gerald Combs <gerald@ethereal.com>
9  * Copyright 1998 Gerald Combs
10  * 
11  * This program is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU General Public License
13  * as published by the Free Software Foundation; either version 2
14  * of the License, or (at your option) any later version.
15  * 
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19  * GNU General Public License for more details.
20  * 
21  * You should have received a copy of the GNU General Public License
22  * along with this program; if not, write to the Free Software
23  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
24  *
25  *
26  */
27
28 #ifndef _PACKET_ISIS_HELLO_H
29 #define _PACKET_ISIS_HELLO_H
30
31 /*
32  * Declarations for L1/L2 hello base header.  
33  */
34 #define ISIS_HELLO_CTYPE_MASK           0x03
35 #define ISIS_HELLO_CT_RESERVED_MASK     0xfc
36 #define ISIS_HELLO_PRIORITY_MASK        0x7f
37 #define ISIS_HELLO_P_RESERVED_MASK      0x80
38
39 #define ISIS_HELLO_TYPE_RESERVED        0
40 #define ISIS_HELLO_TYPE_LEVEL_1         1
41 #define ISIS_HELLO_TYPE_LEVEL_2         2
42 #define ISIS_HELLO_TYPE_LEVEL_12        3
43
44 /*
45  * detail clv information on l1 hello packets
46  */
47 #define ISIS_CLV_L1H_AREA_ADDRESS        1
48 #define ISIS_CLV_L1H_IS_NEIGHBORS        6
49 #define ISIS_CLV_L1H_PADDING             8
50 #define ISIS_CLV_L1H_NLPID               129
51 #define ISIS_CLV_L1H_IP_INTERFACE_ADDR   132
52 #define ISIS_CLV_L1H_MT                  229
53 #define ISIS_CLV_L1H_IPv6_INTERFACE_ADDR 232
54
55 /*
56  * Note, the spec say 133, but everyone seems to use 10. Any clue on why
57  * this is would be appreciated!
58  */
59 #define ISIS_CLV_L1H_AUTHENTICATION_NS  10      /*non spec */
60 #define ISIS_CLV_L1H_AUTHENTICATION     133
61
62 /*
63  * detail clv information on l2 hello packets
64  */
65 #define ISIS_CLV_L2H_AREA_ADDRESS        1
66 #define ISIS_CLV_L2H_IS_NEIGHBORS        6
67 #define ISIS_CLV_L2H_PADDING             8
68 #define ISIS_CLV_L2H_NLPID               129
69 #define ISIS_CLV_L2H_IP_INTERFACE_ADDR   132
70 #define ISIS_CLV_L2H_MT                  229
71 #define ISIS_CLV_L2H_IPv6_INTERFACE_ADDR 232
72 /*
73  * Note, the spec say 133, but everyone seems to use 10. Any clue on why
74  * this is would be appreciated!
75  */
76 #define ISIS_CLV_L2H_AUTHENTICATION_NS  10      /*non spec */
77 #define ISIS_CLV_L2H_AUTHENTICATION     133
78
79 /*
80  * detail clv information on PTP hello packets
81  */
82 #define ISIS_CLV_PTP_AREA_ADDRESS        1
83 #define ISIS_CLV_PTP_PADDING             8
84 #define ISIS_CLV_PTP_NLPID               129
85 #define ISIS_CLV_PTP_IP_INTERFACE_ADDR   132
86 #define ISIS_CLV_PTP_MT                  229
87 #define ISIS_CLV_PTP_IPv6_INTERFACE_ADDR 232
88 #define ISIS_CLV_PTP_ADJ                 240
89 /*
90  * Note, the spec say 133, but everyone seems to use 10. Any clue on why
91  * this is would be appreciated!
92  */
93 #define ISIS_CLV_PTP_AUTHENTICATION_NS  10      /*non spec */
94 #define ISIS_CLV_PTP_AUTHENTICATION     133
95
96 /*
97  * Published API functions.  NOTE, this are "local" API functions and
98  * are only valid from with isis decodes.
99  */
100 extern void isis_dissect_isis_hello(tvbuff_t *tvb, packet_info *pinfo,
101         proto_tree *tree, int offset,
102         int hello_type, int header_length,int id_length);
103 #endif /* _PACKET_ISIS_HELLO_H */