Project

General

Profile

Bug #4062 » valgrind-vty_test.txt

laforge, 06/21/2019 06:29 PM

 
1
==31182== Memcheck, a memory error detector
2
==31182== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
3
==31182== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
4
==31182== Command: ./vty_test
5
==31182== 
6
==31182== Invalid write of size 4
7
==31182==    at 0x4865FE0: ??? (in /usr/lib/arm-linux-gnueabihf/libarmmem.so)
8
==31182==  Address 0x4a4c618 is 8 bytes after a block of size 48 alloc'd
9
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
10
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
11
==31182== 
12
==31182== Invalid write of size 2
13
==31182==    at 0x4865FF8: ??? (in /usr/lib/arm-linux-gnueabihf/libarmmem.so)
14
==31182==  Address 0x4a4c61c is 12 bytes after a block of size 48 alloc'd
15
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
16
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
17
==31182== 
18
==31182== Invalid write of size 1
19
==31182==    at 0x4866004: ??? (in /usr/lib/arm-linux-gnueabihf/libarmmem.so)
20
==31182==  Address 0x4a4c61e is 14 bytes after a block of size 48 alloc'd
21
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
22
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
23
==31182== 
24
==31182== Invalid write of size 1
25
==31182==    at 0x4887720: osmo_strlcpy (utils.c:519)
26
==31182==    by 0x48881FF: osmo_str_tolower_buf (utils.c:894)
27
==31182==    by 0x4888283: osmo_str_tolower (utils.c:912)
28
==31182==    by 0x48D9FD7: add_category_strings (logging_vty.c:297)
29
==31182==    by 0x48D9FD7: gen_logging_level_cmd_strs.isra.10 (logging_vty.c:320)
30
==31182==    by 0x48DAC4F: logging_vty_add_cmds (logging_vty.c:1008)
31
==31182==    by 0x10CE3: main (vty_test.c:508)
32
==31182==  Address 0x4a4c61f is 15 bytes after a block of size 48 alloc'd
33
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
34
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
35
==31182== 
36
==31182== Invalid read of size 1
37
==31182==    at 0x4888204: osmo_str_tolower_buf (utils.c:896)
38
==31182==    by 0x4888283: osmo_str_tolower (utils.c:912)
39
==31182==    by 0x48D9FD7: add_category_strings (logging_vty.c:297)
40
==31182==    by 0x48D9FD7: gen_logging_level_cmd_strs.isra.10 (logging_vty.c:320)
41
==31182==    by 0x48DAC4F: logging_vty_add_cmds (logging_vty.c:1008)
42
==31182==    by 0x10CE3: main (vty_test.c:508)
43
==31182==  Address 0x4a4c618 is 8 bytes after a block of size 48 alloc'd
44
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
45
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
46
==31182== 
47
==31182== Invalid write of size 1
48
==31182==    at 0x488821C: osmo_str_tolower_buf (utils.c:897)
49
==31182==    by 0x4888283: osmo_str_tolower (utils.c:912)
50
==31182==    by 0x48D9FD7: add_category_strings (logging_vty.c:297)
51
==31182==    by 0x48D9FD7: gen_logging_level_cmd_strs.isra.10 (logging_vty.c:320)
52
==31182==    by 0x48DAC4F: logging_vty_add_cmds (logging_vty.c:1008)
53
==31182==    by 0x10CE3: main (vty_test.c:508)
54
==31182==  Address 0x4a4c618 is 8 bytes after a block of size 48 alloc'd
55
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
56
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
57
==31182== 
58
==31182== Invalid read of size 1
59
==31182==    at 0x4888220: osmo_str_tolower_buf (utils.c:896)
60
==31182==    by 0x4888283: osmo_str_tolower (utils.c:912)
61
==31182==    by 0x48D9FD7: add_category_strings (logging_vty.c:297)
62
==31182==    by 0x48D9FD7: gen_logging_level_cmd_strs.isra.10 (logging_vty.c:320)
63
==31182==    by 0x48DAC4F: logging_vty_add_cmds (logging_vty.c:1008)
64
==31182==    by 0x10CE3: main (vty_test.c:508)
65
==31182==  Address 0x4a4c619 is 9 bytes after a block of size 48 alloc'd
66
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
67
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
68
==31182== 
69
==31182== Invalid read of size 1
70
==31182==    at 0x484B1EC: strlen (vg_replace_strmem.c:458)
71
==31182==    by 0x493768F: vfprintf (vfprintf.c:1637)
72
==31182==    by 0x49D5DB3: __vsnprintf_chk (vsnprintf_chk.c:63)
73
==31182==    by 0x48B39F3: ??? (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
74
==31182==  Address 0x4a4c618 is 8 bytes after a block of size 48 alloc'd
75
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
76
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
77
==31182== 
78
==31182== Invalid read of size 1
79
==31182==    at 0x484B200: strlen (vg_replace_strmem.c:458)
80
==31182==    by 0x493768F: vfprintf (vfprintf.c:1637)
81
==31182==    by 0x49D5DB3: __vsnprintf_chk (vsnprintf_chk.c:63)
82
==31182==    by 0x48B39F3: ??? (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
83
==31182==  Address 0x4a4c619 is 9 bytes after a block of size 48 alloc'd
84
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
85
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
86
==31182== 
87
==31182== Invalid read of size 1
88
==31182==    at 0x484B20C: strlen (vg_replace_strmem.c:458)
89
==31182==    by 0x493768F: vfprintf (vfprintf.c:1637)
90
==31182==    by 0x49D5DB3: __vsnprintf_chk (vsnprintf_chk.c:63)
91
==31182==    by 0x48B39F3: ??? (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
92
==31182==  Address 0x4a4c61b is 11 bytes after a block of size 48 alloc'd
93
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
94
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
95
==31182== 
96
==31182== Invalid read of size 1
97
==31182==    at 0x4960568: _IO_default_xsputn (genops.c:455)
98
==31182==    by 0x4937583: vfprintf (vfprintf.c:1637)
99
==31182==    by 0x49D5DB3: __vsnprintf_chk (vsnprintf_chk.c:63)
100
==31182==    by 0x48B39F3: ??? (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
101
==31182==  Address 0x4a4c618 is 8 bytes after a block of size 48 alloc'd
102
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
103
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
104
==31182== 
105
==31182== Invalid read of size 1
106
==31182==    at 0x484B1EC: strlen (vg_replace_strmem.c:458)
107
==31182==    by 0x493768F: vfprintf (vfprintf.c:1637)
108
==31182==    by 0x49D5DB3: __vsnprintf_chk (vsnprintf_chk.c:63)
109
==31182==    by 0x48B3A47: ??? (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
110
==31182==  Address 0x4a4c618 is 8 bytes after a block of size 48 alloc'd
111
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
112
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
113
==31182== 
114
==31182== Invalid read of size 1
115
==31182==    at 0x484B200: strlen (vg_replace_strmem.c:458)
116
==31182==    by 0x493768F: vfprintf (vfprintf.c:1637)
117
==31182==    by 0x49D5DB3: __vsnprintf_chk (vsnprintf_chk.c:63)
118
==31182==    by 0x48B3A47: ??? (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
119
==31182==  Address 0x4a4c619 is 9 bytes after a block of size 48 alloc'd
120
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
121
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
122
==31182== 
123
==31182== Invalid read of size 1
124
==31182==    at 0x484B20C: strlen (vg_replace_strmem.c:458)
125
==31182==    by 0x493768F: vfprintf (vfprintf.c:1637)
126
==31182==    by 0x49D5DB3: __vsnprintf_chk (vsnprintf_chk.c:63)
127
==31182==    by 0x48B3A47: ??? (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
128
==31182==  Address 0x4a4c61b is 11 bytes after a block of size 48 alloc'd
129
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
130
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
131
==31182== 
132
==31182== Invalid read of size 1
133
==31182==    at 0x4960534: _IO_default_xsputn (genops.c:450)
134
==31182==    by 0x4937583: vfprintf (vfprintf.c:1637)
135
==31182==    by 0x49D5DB3: __vsnprintf_chk (vsnprintf_chk.c:63)
136
==31182==    by 0x48B3A47: ??? (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
137
==31182==  Address 0x4a4c618 is 8 bytes after a block of size 48 alloc'd
138
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
139
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
140
==31182== 
141
==31182== Invalid read of size 1
142
==31182==    at 0x4960540: _IO_default_xsputn (genops.c:449)
143
==31182==    by 0x4937583: vfprintf (vfprintf.c:1637)
144
==31182==    by 0x49D5DB3: __vsnprintf_chk (vsnprintf_chk.c:63)
145
==31182==    by 0x48B3A47: ??? (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
146
==31182==  Address 0x4a4c61a is 10 bytes after a block of size 48 alloc'd
147
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
148
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
149
==31182== 
150
==31182== Invalid read of size 1
151
==31182==    at 0x4888204: osmo_str_tolower_buf (utils.c:896)
152
==31182==    by 0x4888283: osmo_str_tolower (utils.c:912)
153
==31182==    by 0x48D9FD7: add_category_strings (logging_vty.c:297)
154
==31182==    by 0x48D9FD7: gen_logging_level_cmd_strs.isra.10 (logging_vty.c:320)
155
==31182==    by 0x48DAC6F: logging_vty_add_cmds (logging_vty.c:1012)
156
==31182==    by 0x10CE3: main (vty_test.c:508)
157
==31182==  Address 0x4a4c618 is 8 bytes after a block of size 48 alloc'd
158
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
159
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
160
==31182== 
161
==31182== Invalid write of size 1
162
==31182==    at 0x488821C: osmo_str_tolower_buf (utils.c:897)
163
==31182==    by 0x4888283: osmo_str_tolower (utils.c:912)
164
==31182==    by 0x48D9FD7: add_category_strings (logging_vty.c:297)
165
==31182==    by 0x48D9FD7: gen_logging_level_cmd_strs.isra.10 (logging_vty.c:320)
166
==31182==    by 0x48DAC6F: logging_vty_add_cmds (logging_vty.c:1012)
167
==31182==    by 0x10CE3: main (vty_test.c:508)
168
==31182==  Address 0x4a4c618 is 8 bytes after a block of size 48 alloc'd
169
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
170
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
171
==31182== 
172
==31182== Invalid read of size 1
173
==31182==    at 0x4888220: osmo_str_tolower_buf (utils.c:896)
174
==31182==    by 0x4888283: osmo_str_tolower (utils.c:912)
175
==31182==    by 0x48D9FD7: add_category_strings (logging_vty.c:297)
176
==31182==    by 0x48D9FD7: gen_logging_level_cmd_strs.isra.10 (logging_vty.c:320)
177
==31182==    by 0x48DAC6F: logging_vty_add_cmds (logging_vty.c:1012)
178
==31182==    by 0x10CE3: main (vty_test.c:508)
179
==31182==  Address 0x4a4c619 is 9 bytes after a block of size 48 alloc'd
180
==31182==    at 0x4847568: malloc (vg_replace_malloc.c:299)
181
==31182==    by 0x48AE0AF: talloc_named_const (in /usr/lib/arm-linux-gnueabihf/libtalloc.so.2.1.8)
182
==31182== 
183
Got VTY event: 2
184
Got VTY event: 2
185
Got VTY event: 2
186
Got VTY event: 2
187
Got VTY event: 2
188
Got VTY event: 2
189
Got VTY event: 2
190
Got VTY event: 2
191
Got VTY event: 1
192
Got VTY event: 3
193
Got VTY event: 2
194
Got VTY event: 2
195
Got VTY event: 2
196
Got VTY event: 2
197
Got VTY event: 2
198
Got VTY event: 2
199
Got VTY event: 2
200
Got VTY event: 2
201
Got VTY event: 1
202
Got VTY event: 2
203
Going to test vty_cmd_string_from_valstr()
204
Tested with %s-strings, resulting cmd = '[prefix%s%s%s%s%s][foo%s%s%s%s%s][sep%s%s%s%s%s][bar%s%s%s%s%s][end%s%s%s%s%s]'
205
Going to test VTY node tree structure
206
Going to execute 'enable'
207
Returned: 0, Current node: 3 '%s# '
208
Going to execute 'configure terminal'
209
Returned: 0, Current node: 4 '%s(config)# '
210
Going to execute 'exit'
211
Returned: 0, Current node: 3 '%s# '
212
Going to execute 'configure terminal'
213
Returned: 0, Current node: 4 '%s(config)# '
214
Going to execute 'end'
215
Returned: 0, Current node: 3 '%s# '
216
Going to execute 'configure terminal'
217
Returned: 0, Current node: 4 '%s(config)# '
218
Going to execute 'log stderr'
219
Returned: 0, Current node: 7 '%s(config-log)# '
220
Going to execute 'exit'
221
Returned: 0, Current node: 4 '%s(config)# '
222
Going to execute 'log stderr'
223
Returned: 0, Current node: 7 '%s(config-log)# '
224
Going to execute 'end'
225
Returned: 0, Current node: 3 '%s# '
226
Going to execute 'configure terminal'
227
Returned: 0, Current node: 4 '%s(config)# '
228
Going to execute 'line vty'
229
Returned: 0, Current node: 9 '%s(config-line)# '
230
Going to execute 'exit'
231
Returned: 0, Current node: 4 '%s(config)# '
232
Going to execute 'line vty'
233
Returned: 0, Current node: 9 '%s(config-line)# '
234
Going to execute 'end'
235
Returned: 0, Current node: 3 '%s# '
236
Going to execute 'configure terminal'
237
Returned: 0, Current node: 4 '%s(config)# '
238
Going to execute 'log stderr'
239
Returned: 0, Current node: 7 '%s(config-log)# '
240
Going to execute 'line vty'
241
Returned: 2, Current node: 7 '%s(config-log)# '
242
Going to execute 'end'
243
Returned: 0, Current node: 3 '%s# '
244
Going to execute 'exit'
245
Returned: 0, Current node: 3 '%s# '
246
Going to test VTY configuration of the stats subsystem
247
Going to execute 'enable'
248
Returned: 0, Current node: 3 '%s# '
249
Going to execute 'configure terminal'
250
Returned: 0, Current node: 4 '%s(config)# '
251
Going to execute 'stats reporter foobar'
252
Returned: 2, Current node: 4 '%s(config)# '
253
Going to execute 'stats interval 42'
254
Returned: 0, Current node: 4 '%s(config)# '
255
Going to execute 'stats reporter log'
256
Returned: 0, Current node: 8 '%s(config-stats)# '
257
Going to execute 'prefix myprefix'
258
Returned: 0, Current node: 8 '%s(config-stats)# '
259
Going to execute 'no prefix'
260
Returned: 0, Current node: 8 '%s(config-stats)# '
261
Going to execute 'level peer'
262
Returned: 0, Current node: 8 '%s(config-stats)# '
263
Going to execute 'level subscriber'
264
Returned: 0, Current node: 8 '%s(config-stats)# '
265
Going to execute 'level global'
266
Returned: 0, Current node: 8 '%s(config-stats)# '
267
Going to execute 'level foobar'
268
Returned: 2, Current node: 8 '%s(config-stats)# '
269
Going to execute 'enable'
270
Returned: 0, Current node: 8 '%s(config-stats)# '
271
Going to execute 'disable'
272
Returned: 0, Current node: 8 '%s(config-stats)# '
273
Going to execute 'exit'
274
Returned: 0, Current node: 4 '%s(config)# '
275
Going to execute 'stats reporter statsd'
276
Returned: 0, Current node: 8 '%s(config-stats)# '
277
Going to execute 'prefix myprefix'
278
Returned: 0, Current node: 8 '%s(config-stats)# '
279
Going to execute 'no prefix'
280
Returned: 0, Current node: 8 '%s(config-stats)# '
281
Going to execute 'level peer'
282
Returned: 0, Current node: 8 '%s(config-stats)# '
283
Going to execute 'level subscriber'
284
Returned: 0, Current node: 8 '%s(config-stats)# '
285
Going to execute 'level global'
286
Returned: 0, Current node: 8 '%s(config-stats)# '
287
Going to execute 'level foobar'
288
Returned: 2, Current node: 8 '%s(config-stats)# '
289
Going to execute 'remote-ip 127.0.0.99'
290
Returned: 0, Current node: 8 '%s(config-stats)# '
291
Going to execute 'remote-ip 678.0.0.99'
292
Returned: 1, Current node: 8 '%s(config-stats)# '
293
Going to execute 'remote-port 12321'
294
Returned: 0, Current node: 8 '%s(config-stats)# '
295
Going to execute 'local-ip 127.0.0.98'
296
Returned: 0, Current node: 8 '%s(config-stats)# '
297
Going to execute 'no local-ip'
298
Returned: 0, Current node: 8 '%s(config-stats)# '
299
Going to execute 'mtu 987'
300
Returned: 0, Current node: 8 '%s(config-stats)# '
301
Going to execute 'no mtu'
302
Returned: 0, Current node: 8 '%s(config-stats)# '
303
Going to execute 'enable'
304
Returned: 0, Current node: 8 '%s(config-stats)# '
305
Going to execute 'disable'
306
Returned: 0, CurrentGot VTY event: 3
307
There is no such command.
308
Error occurred during reading the below line:
309
 level1 b
310

    
311
Inconsistent indentation -- leading whitespace must match adjacent lines, and
312
indentation must reflect child node levels. A mix of tabs and spaces is
313
allowed, but their sequence must not change within a child block.
314
Error occurred during reading the below line:
315
 level1 b
316

    
317
Inconsistent indentation -- leading whitespace must match adjacent lines, and
318
indentation must reflect child node levels. A mix of tabs and spaces is
319
allowed, but their sequence must not change within a child block.
320
Error occurred during reading the below line:
321
	 	child1 b
322

    
323
 node: 8 '%s(config-stats)# '
324
Going to execute 'exit'
325
Returned: 0, Current node: 4 '%s(config)# '
326
Going to execute 'no stats reporter log'
327
Returned: 0, Current node: 4 '%s(config)# '
328
Going to execute 'no stats reporter statsd'
329
Returned: 0, Current node: 4 '%s(config)# '
330
reading file ok.cfg, expecting rc=0
331
called level1 node a
332
called level1 child cmd a
333
called level2 node a
334
called level2 child cmd a
335
called level3 node a
336
called level3 child cmd a
337
called level1 node b
338
called level1 child cmd b
339
called level2 node b
340
called level2 child cmd b
341
called level1 node c
342
called level1 child cmd c
343
called level2 node c
344
called level2 child cmd c
345
called level3 node c
346
called level3 child cmd c
347
called level2 node d
348
called level2 child cmd d
349
called level1 node e
350
called level1 child cmd e
351
called level2 node e
352
called level2 child cmd e
353
called level2 node f
354
called level2 child cmd f
355
called level1 node g
356
called level1 child cmd g
357
called level1 node h
358
called level1 child cmd h
359
got rc=0
360
reading file ok_more_spaces.cfg, expecting rc=0
361
called level1 node a
362
called level1 child cmd a
363
called level2 node a
364
called level2 child cmd a
365
called level3 node a
366
called level3 child cmd a
367
called level1 node b
368
called level1 child cmd b
369
called level2 node b
370
called level2 child cmd b
371
called level1 node c
372
called level1 child cmd c
373
called level2 node c
374
called level2 child cmd c
375
called level3 node c
376
called level3 child cmd c
377
called level2 node d
378
called level2 child cmd d
379
called level1 node e
380
called level1 child cmd e
381
called level2 node e
382
called level2 child cmd e
383
called level2 node f
384
called level2 child cmd f
385
called level1 node g
386
called level1 child cmd g
387
called level1 node h
388
called level1 child cmd h
389
got rc=0
390
reading file ok_tabs.cfg, expecting rc=0
391
called level1 node a
392
called level1 child cmd a
393
called level2 node a
394
called level2 child cmd a
395
called level3 node a
396
called level3 child cmd a
397
called level1 node b
398
called level1 child cmd b
399
called level2 node b
400
called level2 child cmd b
401
called level1 node c
402
called level1 child cmd c
403
called level2 node c
404
called level2 child cmd c
405
called level3 node c
406
called level3 child cmd c
407
called level2 node d
408
called level2 child cmd d
409
called level1 node e
410
called level1 child cmd e
411
called level2 node e
412
called level2 child cmd e
413
called level2 node f
414
called level2 child cmd f
415
called level1 node g
416
called level1 child cmd g
417
called level1 node h
418
called level1 child cmd h
419
got rc=0
420
reading file ok_tabs_and_spaces.cfg, expecting rc=0
421
called level1 node a
422
called level1 child cmd a
423
called level2 node a
424
called level2 child cmd a
425
called level3 node a
426
called level3 child cmd a
427
called level1 node b
428
called level1 child cmd b
429
called level2 node b
430
called level2 child cmd b
431
called level1 node c
432
called level1 child cmd c
433
called level2 node c
434
called level2 child cmd c
435
called level3 node c
436
called level3 child cmd c
437
called level2 node d
438
called level2 child cmd d
439
called level1 node e
440
called level1 child cmd e
441
called level2 node e
442
called level2 child cmd e
443
called level2 node f
444
called level2 child cmd f
445
called level1 node g
446
called level1 child cmd g
447
called level1 node h
448
called level1 child cmd h
449
got rc=0
450
reading file ok_ignore_comment.cfg, expecting rc=0
451
called level1 node 
452
called level1 child cmd 
453
called level2 node 
454
called level2 child cmd 
455
called level1 node 
456
got rc=0
457
reading file ok_ignore_blank.cfg, expecting rc=0
458
called level1 node 
459
called level2 node 
460
called level2 child cmd 
461
called level3 node 
462
called level3 child cmd 
463
called level1 node 
464
got rc=0
465
reading file fail_not_de-indented.cfg, expecting rc=-22
466
called level1 node a
467
called level1 child cmd a
468
got rc=-22
469
reading file fail_too_much_indent.cfg, expecting rc=-22
470
called level1 node a
471
called level1 child cmd a
472
got rc=-22
473
reading file fail_tabs_and_spaces.cfg, expecting rc=-22
474
called level1 node a
475
called level1 child cmd a
476
got rc=-22
477
reading file ok_indented_root.cfg, expecting rc=0
478
called level1 node a
479
called level1 child cmd 
480
called level2 node 
481
called level2 child cmd 
482
called level1 node b
483
got rc=0
484
reading file ok_empty_parent.cfg, expecting rc=0
485
called level1 node a
486
called level2 node a
487
called level3 nodeGot VTY event: 2
488
Got VTY event: 2
489
Got VTY event: 2
490
Got VTY event: 2
491
Got VTY event: 2
492
Got VTY event: 2
493
Got VTY event: 2
494
Got VTY event: 2
495
Got VTY event: 1
496
Got VTY event: 3
497
 a
498
called level1 node b
499
called level2 node b
500
called level1 node c
501
called level1 node d
502
called level2 node e
503
called level2 node f
504
called level3 node f
505
called level3 node g
506
called level2 node g
507
called level2 node h
508
called level1 node h
509
called level1 node i
510
called level1 node j
511
called level2 node j
512
called level1 child cmd j
513
called level1 node k
514
called level2 node k
515
called level3 node k
516
called level1 child cmd k
517
got rc=0
518
Going to test is_cmd_ambiguous()
519
Going to execute 'ambiguous_nr'
520
Called: 'ambiguous_nr [<0-23>]' (argc=0)
521
Returned: 0, Current node: 1 '%s> '
522
Going to execute 'ambiguous_nr 23'
523
Called: 'ambiguous_nr [<0-23>]' (argc=1)
524
Returned: 0, Current node: 1 '%s> '
525
Going to execute 'ambiguous_nr 23 keyword'
526
Called: 'ambiguous_nr <0-23> keyword'
527
Returned: 0, Current node: 1 '%s> '
528
Going to execute 'ambiguous_str'
529
Called: 'ambiguous_str [ARG]' (argc=0)
530
Returned: 0, Current node: 1 '%s> '
531
Going to execute 'ambiguous_str arg'
532
Called: 'ambiguous_str [ARG]' (argc=1)
533
Returned: 0, Current node: 1 '%s> '
534
Going to execute 'ambiguous_str arg keyword'
535
Called: 'ambiguous_str ARG keyword'
536
Returned: 0, Current node: 1 '%s> '
537
All tests passed
538
==31182== 
539
==31182== HEAP SUMMARY:
540
==31182==     in use at exit: 236,257 bytes in 3,759 blocks
541
==31182==   total heap usage: 6,798 allocs, 3,039 frees, 522,811 bytes allocated
542
==31182== 
543
==31182== LEAK SUMMARY:
544
==31182==    definitely lost: 0 bytes in 0 blocks
545
==31182==    indirectly lost: 0 bytes in 0 blocks
546
==31182==      possibly lost: 236,257 bytes in 3,759 blocks
547
==31182==    still reachable: 0 bytes in 0 blocks
548
==31182==         suppressed: 0 bytes in 0 blocks
549
==31182== Rerun with --leak-check=full to see details of leaked memory
550
==31182== 
551
==31182== For counts of detected and suppressed errors, rerun with: -v
552
==31182== ERROR SUMMARY: 1304 errors from 19 contexts (suppressed: 6 from 3)
(4-4/6)
Add picture from clipboard (Maximum size: 48.8 MB)