WAND Trace processing  4.0.5
erftypes.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (c) 2007-2016 The University of Waikato, Hamilton, New Zealand.
4  * All rights reserved.
5  *
6  * This file is part of libtrace.
7  *
8  * This code has been developed by the University of Waikato WAND
9  * research group. For further information please see http://www.wand.net.nz/
10  *
11  * libtrace is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License as published by
13  * the Free Software Foundation; either version 3 of the License, or
14  * (at your option) any later version.
15  *
16  * libtrace 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 Lesser General Public License for more details.
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * along with this program. If not, see <http://www.gnu.org/licenses/>.
23  *
24  *
25  */
26 #ifndef _ERFTYPES_H_
27 #define _ERFTYPES_H_
28 
40 /* GPP record type defines - these can indicate the header that immediately
41  * follows the ERF header and/or an adjustment to the layout of the ERF header
42  * itself, e.g. due to the use of Coloring.
43  *
44  * NOTE: "Color" refers to the concept of marking packets based on matching
45  * a particular filter or classification */
46 
47 #ifndef TYPE_LEGACY
48 #define TYPE_LEGACY 0
49 #endif
50 
51 #ifndef TYPE_HDLC_POS
52 #define TYPE_HDLC_POS 1
53 #endif
54 
55 #ifndef TYPE_ETH
56 #define TYPE_ETH 2
57 #endif
58 
59 #ifndef TYPE_ATM
60 #define TYPE_ATM 3
61 #endif
62 
63 #ifndef TYPE_AAL5
64 #define TYPE_AAL5 4
65 #endif
66 
67 #ifndef TYPE_MC_HDLC
68 #define TYPE_MC_HDLC 5
69 #endif
70 
71 #ifndef TYPE_MC_RAW
72 #define TYPE_MC_RAW 6
73 #endif
74 
75 #ifndef TYPE_MC_ATM
76 #define TYPE_MC_ATM 7
77 #endif
78 
79 #ifndef TYPE_MC_RAW_CHANNEL
80 #define TYPE_MC_RAW_CHANNEL 8
81 #endif
82 
83 #ifndef TYPE_MC_AAL5
84 #define TYPE_MC_AAL5 9
85 #endif
86 
89 #ifndef TYPE_COLOR_HDLC_POS
90 #define TYPE_COLOR_HDLC_POS 10
91 #endif
92 
94 #ifndef TYPE_COLOR_ETH
95 #define TYPE_COLOR_ETH 11
96 #endif
97 
99 #ifndef TYPE_MC_AAL2
100 #define TYPE_MC_AAL2 12
101 #endif
102 
104 #ifndef TYPE_IP_COUNTER
105 #define TYPE_IP_COUNTER 13
106 #endif
107 
109 #ifndef TYPE_TCP_FLOW_COUNTER
110 #define TYPE_TCP_FLOW_COUNTER 14
111 #endif
112 
114 #ifndef TYPE_DSM_COLOR_HDLC_POS
115 #define TYPE_DSM_COLOR_HDLC_POS 15
116 #endif
117 
119 #ifndef TYPE_DSM_COLOR_ETH
120 #define TYPE_DSM_COLOR_ETH 16
121 #endif
122 
125 #ifndef TYPE_COLOR_MC_HDLC_POS
126 #define TYPE_COLOR_MC_HDLC_POS 17
127 #endif
128 
130 #ifndef TYPE_AAL2
131 #define TYPE_AAL2 18
132 #endif
133 
135 #ifndef TYPE_COLOR_HASH_POS
136 #define TYPE_COLOR_HASH_POS 19
137 #endif
138 
140 #ifndef TYPE_COLOR_HASH_ETH
141 #define TYPE_COLOR_HASH_ETH 20
142 #endif
143 
145 #ifndef TYPE_INFINIBAND
146 #define TYPE_INFINIBAND 21
147 #endif
148 
150 #ifndef TYPE_IPV4
151 #define TYPE_IPV4 22
152 #endif
153 
155 #ifndef TYPE_IPV6
156 #define TYPE_IPV6 23
157 #endif
158 
160 #ifndef TYPE_RAW_LINK
161 #define TYPE_RAW_LINK 24
162 #endif
163 
165 #ifndef ERF_TYPE_META
166 #define ERF_TYPE_META 27
167 #endif
168 /* TODO: Endace has deprecated TYPE_* in favour of ERF_TYPE_*. New types do not have TYPE_* aliases. */
169 #ifndef TYPE_META
170 #define TYPE_META ERF_TYPE_META
171 #endif
172 
174 #ifndef TYPE_PAD
175 #define TYPE_PAD 48
176 #endif
177 
178 #ifndef ERF_TYPE_MAX
179 #define ERF_TYPE_MAX TYPE_PAD
180 #endif
181 
182 #endif /* _ERFTYPES_H_ */