1: /*
2: * Memory type definitions. This file is parsed by memtypes.awk to extract
3: * MTYPE_ and memory_list_.. information in order to autogenerate
4: * memtypes.h.
5: *
6: * The script is sensitive to the format (though not whitespace), see
7: * the top of memtypes.awk for more details.
8: */
9:
10: #include "zebra.h"
11: #include "memory.h"
12:
13: struct memory_list memory_list_lib[] =
14: {
15: { MTYPE_TMP, "Temporary memory" },
16: { MTYPE_STRVEC, "String vector" },
17: { MTYPE_VECTOR, "Vector" },
18: { MTYPE_VECTOR_INDEX, "Vector index" },
19: { MTYPE_LINK_LIST, "Link List" },
20: { MTYPE_LINK_NODE, "Link Node" },
21: { MTYPE_THREAD, "Thread" },
22: { MTYPE_THREAD_MASTER, "Thread master" },
23: { MTYPE_THREAD_STATS, "Thread stats" },
24: { MTYPE_VTY, "VTY" },
25: { MTYPE_VTY_OUT_BUF, "VTY output buffer" },
26: { MTYPE_VTY_HIST, "VTY history" },
27: { MTYPE_IF, "Interface" },
28: { MTYPE_CONNECTED, "Connected" },
29: { MTYPE_CONNECTED_LABEL, "Connected interface label" },
30: { MTYPE_BUFFER, "Buffer" },
31: { MTYPE_BUFFER_DATA, "Buffer data" },
32: { MTYPE_STREAM, "Stream" },
33: { MTYPE_STREAM_DATA, "Stream data" },
34: { MTYPE_STREAM_FIFO, "Stream FIFO" },
35: { MTYPE_PREFIX, "Prefix" },
36: { MTYPE_PREFIX_IPV4, "Prefix IPv4" },
37: { MTYPE_PREFIX_IPV6, "Prefix IPv6" },
38: { MTYPE_HASH, "Hash" },
39: { MTYPE_HASH_BACKET, "Hash Bucket" },
40: { MTYPE_HASH_INDEX, "Hash Index" },
41: { MTYPE_ROUTE_TABLE, "Route table" },
42: { MTYPE_ROUTE_NODE, "Route node" },
43: { MTYPE_DISTRIBUTE, "Distribute list" },
44: { MTYPE_DISTRIBUTE_IFNAME, "Dist-list ifname" },
45: { MTYPE_ACCESS_LIST, "Access List" },
46: { MTYPE_ACCESS_LIST_STR, "Access List Str" },
47: { MTYPE_ACCESS_FILTER, "Access Filter" },
48: { MTYPE_PREFIX_LIST, "Prefix List" },
49: { MTYPE_PREFIX_LIST_ENTRY, "Prefix List Entry" },
50: { MTYPE_PREFIX_LIST_STR, "Prefix List Str" },
51: { MTYPE_ROUTE_MAP, "Route map" },
52: { MTYPE_ROUTE_MAP_NAME, "Route map name" },
53: { MTYPE_ROUTE_MAP_INDEX, "Route map index" },
54: { MTYPE_ROUTE_MAP_RULE, "Route map rule" },
55: { MTYPE_ROUTE_MAP_RULE_STR, "Route map rule str" },
56: { MTYPE_ROUTE_MAP_COMPILED, "Route map compiled" },
57: { MTYPE_DESC, "Command desc" },
58: { MTYPE_KEY, "Key" },
59: { MTYPE_KEYCHAIN, "Key chain" },
60: { MTYPE_IF_RMAP, "Interface route map" },
61: { MTYPE_IF_RMAP_NAME, "I.f. route map name", },
62: { MTYPE_SOCKUNION, "Socket union" },
63: { MTYPE_PRIVS, "Privilege information" },
64: { MTYPE_ZLOG, "Logging" },
65: { MTYPE_ZCLIENT, "Zclient" },
66: { MTYPE_WORK_QUEUE, "Work queue" },
67: { MTYPE_WORK_QUEUE_ITEM, "Work queue item" },
68: { MTYPE_WORK_QUEUE_NAME, "Work queue name string" },
69: { MTYPE_PQUEUE, "Priority queue" },
70: { MTYPE_PQUEUE_DATA, "Priority queue data" },
71: { MTYPE_HOST, "Host config" },
72: { -1, NULL },
73: };
74:
75: struct memory_list memory_list_zebra[] =
76: {
77: { MTYPE_RTADV_PREFIX, "Router Advertisement Prefix" },
78: { MTYPE_VRF, "VRF" },
79: { MTYPE_VRF_NAME, "VRF name" },
80: { MTYPE_NEXTHOP, "Nexthop" },
81: { MTYPE_RIB, "RIB" },
82: { MTYPE_RIB_QUEUE, "RIB process work queue" },
83: { MTYPE_STATIC_IPV4, "Static IPv4 route" },
84: { MTYPE_STATIC_IPV6, "Static IPv6 route" },
85: { MTYPE_RIB_DEST, "RIB destination" },
86: { MTYPE_RIB_TABLE_INFO, "RIB table info" },
87: { -1, NULL },
88: };
89:
90: struct memory_list memory_list_bgp[] =
91: {
92: { MTYPE_BGP, "BGP instance" },
93: { MTYPE_BGP_LISTENER, "BGP listen socket details" },
94: { MTYPE_BGP_PEER, "BGP peer" },
95: { MTYPE_BGP_PEER_HOST, "BGP peer hostname" },
96: { MTYPE_PEER_GROUP, "Peer group" },
97: { MTYPE_PEER_DESC, "Peer description" },
98: { MTYPE_PEER_PASSWORD, "Peer password string" },
99: { MTYPE_ATTR, "BGP attribute" },
100: { MTYPE_ATTR_EXTRA, "BGP extra attributes" },
101: { MTYPE_AS_PATH, "BGP aspath" },
102: { MTYPE_AS_SEG, "BGP aspath seg" },
103: { MTYPE_AS_SEG_DATA, "BGP aspath segment data" },
104: { MTYPE_AS_STR, "BGP aspath str" },
105: { 0, NULL },
106: { MTYPE_BGP_TABLE, "BGP table" },
107: { MTYPE_BGP_NODE, "BGP node" },
108: { MTYPE_BGP_ROUTE, "BGP route" },
109: { MTYPE_BGP_ROUTE_EXTRA, "BGP ancillary route info" },
110: { MTYPE_BGP_CONN, "BGP connected" },
111: { MTYPE_BGP_STATIC, "BGP static" },
112: { MTYPE_BGP_ADVERTISE_ATTR, "BGP adv attr" },
113: { MTYPE_BGP_ADVERTISE, "BGP adv" },
114: { MTYPE_BGP_SYNCHRONISE, "BGP synchronise" },
115: { MTYPE_BGP_ADJ_IN, "BGP adj in" },
116: { MTYPE_BGP_ADJ_OUT, "BGP adj out" },
117: { MTYPE_BGP_MPATH_INFO, "BGP multipath info" },
118: { 0, NULL },
119: { MTYPE_AS_LIST, "BGP AS list" },
120: { MTYPE_AS_FILTER, "BGP AS filter" },
121: { MTYPE_AS_FILTER_STR, "BGP AS filter str" },
122: { 0, NULL },
123: { MTYPE_COMMUNITY, "community" },
124: { MTYPE_COMMUNITY_VAL, "community val" },
125: { MTYPE_COMMUNITY_STR, "community str" },
126: { 0, NULL },
127: { MTYPE_ECOMMUNITY, "extcommunity" },
128: { MTYPE_ECOMMUNITY_VAL, "extcommunity val" },
129: { MTYPE_ECOMMUNITY_STR, "extcommunity str" },
130: { 0, NULL },
131: { MTYPE_COMMUNITY_LIST, "community-list" },
132: { MTYPE_COMMUNITY_LIST_NAME, "community-list name" },
133: { MTYPE_COMMUNITY_LIST_ENTRY, "community-list entry" },
134: { MTYPE_COMMUNITY_LIST_CONFIG, "community-list config" },
135: { MTYPE_COMMUNITY_LIST_HANDLER, "community-list handler" },
136: { 0, NULL },
137: { MTYPE_CLUSTER, "Cluster list" },
138: { MTYPE_CLUSTER_VAL, "Cluster list val" },
139: { 0, NULL },
140: { MTYPE_BGP_PROCESS_QUEUE, "BGP Process queue" },
141: { MTYPE_BGP_CLEAR_NODE_QUEUE, "BGP node clear queue" },
142: { 0, NULL },
143: { MTYPE_TRANSIT, "BGP transit attr" },
144: { MTYPE_TRANSIT_VAL, "BGP transit val" },
145: { 0, NULL },
146: { MTYPE_BGP_DISTANCE, "BGP distance" },
147: { MTYPE_BGP_NEXTHOP_CACHE, "BGP nexthop" },
148: { MTYPE_BGP_CONFED_LIST, "BGP confed list" },
149: { MTYPE_PEER_UPDATE_SOURCE, "BGP peer update interface" },
150: { MTYPE_BGP_DAMP_INFO, "Dampening info" },
151: { MTYPE_BGP_DAMP_ARRAY, "BGP Dampening array" },
152: { MTYPE_BGP_REGEXP, "BGP regexp" },
153: { MTYPE_BGP_AGGREGATE, "BGP aggregate" },
154: { MTYPE_BGP_ADDR, "BGP own address" },
155: { -1, NULL }
156: };
157:
158: struct memory_list memory_list_rip[] =
159: {
160: { MTYPE_RIP, "RIP structure" },
161: { MTYPE_RIP_INFO, "RIP route info" },
162: { MTYPE_RIP_INTERFACE, "RIP interface" },
163: { MTYPE_RIP_PEER, "RIP peer" },
164: { MTYPE_RIP_OFFSET_LIST, "RIP offset list" },
165: { MTYPE_RIP_DISTANCE, "RIP distance" },
166: { -1, NULL }
167: };
168:
169: struct memory_list memory_list_ripng[] =
170: {
171: { MTYPE_RIPNG, "RIPng structure" },
172: { MTYPE_RIPNG_ROUTE, "RIPng route info" },
173: { MTYPE_RIPNG_AGGREGATE, "RIPng aggregate" },
174: { MTYPE_RIPNG_PEER, "RIPng peer" },
175: { MTYPE_RIPNG_OFFSET_LIST, "RIPng offset lst" },
176: { MTYPE_RIPNG_RTE_DATA, "RIPng rte data" },
177: { -1, NULL }
178: };
179:
180: struct memory_list memory_list_babel[] =
181: {
182: { MTYPE_BABEL, "Babel structure" },
183: { MTYPE_BABEL_IF, "Babel interface" },
184: { -1, NULL }
185: };
186:
187: struct memory_list memory_list_ospf[] =
188: {
189: { MTYPE_OSPF_TOP, "OSPF top" },
190: { MTYPE_OSPF_AREA, "OSPF area" },
191: { MTYPE_OSPF_AREA_RANGE, "OSPF area range" },
192: { MTYPE_OSPF_NETWORK, "OSPF network" },
193: { MTYPE_OSPF_NEIGHBOR_STATIC,"OSPF static nbr" },
194: { MTYPE_OSPF_IF, "OSPF interface" },
195: { MTYPE_OSPF_NEIGHBOR, "OSPF neighbor" },
196: { MTYPE_OSPF_ROUTE, "OSPF route" },
197: { MTYPE_OSPF_TMP, "OSPF tmp mem" },
198: { MTYPE_OSPF_LSA, "OSPF LSA" },
199: { MTYPE_OSPF_LSA_DATA, "OSPF LSA data" },
200: { MTYPE_OSPF_LSDB, "OSPF LSDB" },
201: { MTYPE_OSPF_PACKET, "OSPF packet" },
202: { MTYPE_OSPF_FIFO, "OSPF FIFO queue" },
203: { MTYPE_OSPF_VERTEX, "OSPF vertex" },
204: { MTYPE_OSPF_VERTEX_PARENT, "OSPF vertex parent", },
205: { MTYPE_OSPF_NEXTHOP, "OSPF nexthop" },
206: { MTYPE_OSPF_PATH, "OSPF path" },
207: { MTYPE_OSPF_VL_DATA, "OSPF VL data" },
208: { MTYPE_OSPF_CRYPT_KEY, "OSPF crypt key" },
209: { MTYPE_OSPF_EXTERNAL_INFO, "OSPF ext. info" },
210: { MTYPE_OSPF_DISTANCE, "OSPF distance" },
211: { MTYPE_OSPF_IF_INFO, "OSPF if info" },
212: { MTYPE_OSPF_IF_PARAMS, "OSPF if params" },
213: { MTYPE_OSPF_MESSAGE, "OSPF message" },
214: { -1, NULL },
215: };
216:
217: struct memory_list memory_list_ospf6[] =
218: {
219: { MTYPE_OSPF6_TOP, "OSPF6 top" },
220: { MTYPE_OSPF6_AREA, "OSPF6 area" },
221: { MTYPE_OSPF6_IF, "OSPF6 interface" },
222: { MTYPE_OSPF6_NEIGHBOR, "OSPF6 neighbor" },
223: { MTYPE_OSPF6_ROUTE, "OSPF6 route" },
224: { MTYPE_OSPF6_PREFIX, "OSPF6 prefix" },
225: { MTYPE_OSPF6_MESSAGE, "OSPF6 message" },
226: { MTYPE_OSPF6_LSA, "OSPF6 LSA" },
227: { MTYPE_OSPF6_LSA_SUMMARY, "OSPF6 LSA summary" },
228: { MTYPE_OSPF6_LSDB, "OSPF6 LSA database" },
229: { MTYPE_OSPF6_VERTEX, "OSPF6 vertex" },
230: { MTYPE_OSPF6_SPFTREE, "OSPF6 SPF tree" },
231: { MTYPE_OSPF6_NEXTHOP, "OSPF6 nexthop" },
232: { MTYPE_OSPF6_EXTERNAL_INFO,"OSPF6 ext. info" },
233: { MTYPE_OSPF6_OTHER, "OSPF6 other" },
234: { -1, NULL },
235: };
236:
237: struct memory_list memory_list_isis[] =
238: {
239: { MTYPE_ISIS, "ISIS" },
240: { MTYPE_ISIS_TMP, "ISIS TMP" },
241: { MTYPE_ISIS_CIRCUIT, "ISIS circuit" },
242: { MTYPE_ISIS_LSP, "ISIS LSP" },
243: { MTYPE_ISIS_ADJACENCY, "ISIS adjacency" },
244: { MTYPE_ISIS_AREA, "ISIS area" },
245: { MTYPE_ISIS_AREA_ADDR, "ISIS area address" },
246: { MTYPE_ISIS_TLV, "ISIS TLV" },
247: { MTYPE_ISIS_DYNHN, "ISIS dyn hostname" },
248: { MTYPE_ISIS_SPFTREE, "ISIS SPFtree" },
249: { MTYPE_ISIS_VERTEX, "ISIS vertex" },
250: { MTYPE_ISIS_ROUTE_INFO, "ISIS route info" },
251: { MTYPE_ISIS_NEXTHOP, "ISIS nexthop" },
252: { MTYPE_ISIS_NEXTHOP6, "ISIS nexthop6" },
253: { MTYPE_ISIS_DICT, "ISIS dictionary" },
254: { MTYPE_ISIS_DICT_NODE, "ISIS dictionary node" },
255: { -1, NULL },
256: };
257:
258: struct memory_list memory_list_vtysh[] =
259: {
260: { MTYPE_VTYSH_CONFIG, "Vtysh configuration", },
261: { MTYPE_VTYSH_CONFIG_LINE, "Vtysh configuration line" },
262: { -1, NULL },
263: };
264:
265: struct mlist mlists[] __attribute__ ((unused)) = {
266: { memory_list_lib, "LIB" },
267: { memory_list_zebra, "ZEBRA" },
268: { memory_list_rip, "RIP" },
269: { memory_list_ripng, "RIPNG" },
270: { memory_list_ospf, "OSPF" },
271: { memory_list_ospf6, "OSPF6" },
272: { memory_list_isis, "ISIS" },
273: { memory_list_bgp, "BGP" },
274: { NULL, NULL},
275: };
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>