Coverage Report

Created: 2025-07-14 06:48

/src/frr/lib/log_vty_clippy.c
Line
Count
Source (jump to first uncovered line)
1
/* config_log_stdout => "log stdout [<emergencies|alerts|critical|errors|warnings|notifications|informational|debugging>$levelarg]" */
2
DEFUN_CMD_FUNC_DECL(config_log_stdout)
3
#define funcdecl_config_log_stdout static int config_log_stdout_magic(\
4
  const struct cmd_element *self __attribute__ ((unused)),\
5
  struct vty *vty __attribute__ ((unused)),\
6
  int argc __attribute__ ((unused)),\
7
  struct cmd_token *argv[] __attribute__ ((unused)),\
8
  const char * levelarg)
9
funcdecl_config_log_stdout;
10
DEFUN_CMD_FUNC_TEXT(config_log_stdout)
11
0
{
12
0
#if 1 /* anything to parse? */
13
0
  int _i;
14
#if 0 /* anything that can fail? */
15
  unsigned _fail = 0, _failcnt = 0;
16
#endif
17
0
  const char *levelarg = NULL;
18
19
0
  for (_i = 0; _i < argc; _i++) {
20
0
    if (!argv[_i]->varname)
21
0
      continue;
22
#if 0 /* anything that can fail? */
23
    _fail = 0;
24
#endif
25
26
0
    if (!strcmp(argv[_i]->varname, "levelarg")) {
27
0
      levelarg = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
28
0
    }
29
#if 0 /* anything that can fail? */
30
    if (_fail)
31
      vty_out (vty, "%% invalid input for %s: %s\n",
32
           argv[_i]->varname, argv[_i]->arg);
33
    _failcnt += _fail;
34
#endif
35
0
  }
36
#if 0 /* anything that can fail? */
37
  if (_failcnt)
38
    return CMD_WARNING;
39
#endif
40
0
#endif
41
42
0
  return config_log_stdout_magic(self, vty, argc, argv, levelarg);
43
0
}
44
45
/* debug_uid_backtrace => "[no] debug unique-id UID backtrace" */
46
DEFUN_CMD_FUNC_DECL(debug_uid_backtrace)
47
#define funcdecl_debug_uid_backtrace static int debug_uid_backtrace_magic(\
48
  const struct cmd_element *self __attribute__ ((unused)),\
49
  struct vty *vty __attribute__ ((unused)),\
50
  int argc __attribute__ ((unused)),\
51
  struct cmd_token *argv[] __attribute__ ((unused)),\
52
  const char * no,\
53
  const char * uid)
54
funcdecl_debug_uid_backtrace;
55
DEFUN_CMD_FUNC_TEXT(debug_uid_backtrace)
56
0
{
57
0
#if 2 /* anything to parse? */
58
0
  int _i;
59
#if 0 /* anything that can fail? */
60
  unsigned _fail = 0, _failcnt = 0;
61
#endif
62
0
  const char *no = NULL;
63
0
  const char *uid = NULL;
64
65
0
  for (_i = 0; _i < argc; _i++) {
66
0
    if (!argv[_i]->varname)
67
0
      continue;
68
#if 0 /* anything that can fail? */
69
    _fail = 0;
70
#endif
71
72
0
    if (!strcmp(argv[_i]->varname, "no")) {
73
0
      no = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
74
0
    }
75
0
    if (!strcmp(argv[_i]->varname, "uid")) {
76
0
      uid = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
77
0
    }
78
#if 0 /* anything that can fail? */
79
    if (_fail)
80
      vty_out (vty, "%% invalid input for %s: %s\n",
81
           argv[_i]->varname, argv[_i]->arg);
82
    _failcnt += _fail;
83
#endif
84
0
  }
85
#if 0 /* anything that can fail? */
86
  if (_failcnt)
87
    return CMD_WARNING;
88
#endif
89
0
#endif
90
0
  if (!uid) {
91
0
    vty_out(vty, "Internal CLI error [%s]\n", "uid");
92
0
    return CMD_WARNING;
93
0
  }
94
95
0
  return debug_uid_backtrace_magic(self, vty, argc, argv, no, uid);
96
0
}
97
98
/* config_log_file => "log file FILENAME [<emergencies|alerts|critical|errors|warnings|notifications|informational|debugging>$levelarg]" */
99
DEFUN_CMD_FUNC_DECL(config_log_file)
100
#define funcdecl_config_log_file static int config_log_file_magic(\
101
  const struct cmd_element *self __attribute__ ((unused)),\
102
  struct vty *vty __attribute__ ((unused)),\
103
  int argc __attribute__ ((unused)),\
104
  struct cmd_token *argv[] __attribute__ ((unused)),\
105
  const char * filename,\
106
  const char * levelarg)
107
funcdecl_config_log_file;
108
DEFUN_CMD_FUNC_TEXT(config_log_file)
109
0
{
110
0
#if 2 /* anything to parse? */
111
0
  int _i;
112
#if 0 /* anything that can fail? */
113
  unsigned _fail = 0, _failcnt = 0;
114
#endif
115
0
  const char *filename = NULL;
116
0
  const char *levelarg = NULL;
117
118
0
  for (_i = 0; _i < argc; _i++) {
119
0
    if (!argv[_i]->varname)
120
0
      continue;
121
#if 0 /* anything that can fail? */
122
    _fail = 0;
123
#endif
124
125
0
    if (!strcmp(argv[_i]->varname, "filename")) {
126
0
      filename = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
127
0
    }
128
0
    if (!strcmp(argv[_i]->varname, "levelarg")) {
129
0
      levelarg = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
130
0
    }
131
#if 0 /* anything that can fail? */
132
    if (_fail)
133
      vty_out (vty, "%% invalid input for %s: %s\n",
134
           argv[_i]->varname, argv[_i]->arg);
135
    _failcnt += _fail;
136
#endif
137
0
  }
138
#if 0 /* anything that can fail? */
139
  if (_failcnt)
140
    return CMD_WARNING;
141
#endif
142
0
#endif
143
0
  if (!filename) {
144
0
    vty_out(vty, "Internal CLI error [%s]\n", "filename");
145
0
    return CMD_WARNING;
146
0
  }
147
148
0
  return config_log_file_magic(self, vty, argc, argv, filename, levelarg);
149
0
}
150
151
/* config_log_syslog => "log syslog [<emergencies|alerts|critical|errors|warnings|notifications|informational|debugging>$levelarg]" */
152
DEFUN_CMD_FUNC_DECL(config_log_syslog)
153
#define funcdecl_config_log_syslog static int config_log_syslog_magic(\
154
  const struct cmd_element *self __attribute__ ((unused)),\
155
  struct vty *vty __attribute__ ((unused)),\
156
  int argc __attribute__ ((unused)),\
157
  struct cmd_token *argv[] __attribute__ ((unused)),\
158
  const char * levelarg)
159
funcdecl_config_log_syslog;
160
DEFUN_CMD_FUNC_TEXT(config_log_syslog)
161
0
{
162
0
#if 1 /* anything to parse? */
163
0
  int _i;
164
#if 0 /* anything that can fail? */
165
  unsigned _fail = 0, _failcnt = 0;
166
#endif
167
0
  const char *levelarg = NULL;
168
169
0
  for (_i = 0; _i < argc; _i++) {
170
0
    if (!argv[_i]->varname)
171
0
      continue;
172
#if 0 /* anything that can fail? */
173
    _fail = 0;
174
#endif
175
176
0
    if (!strcmp(argv[_i]->varname, "levelarg")) {
177
0
      levelarg = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
178
0
    }
179
#if 0 /* anything that can fail? */
180
    if (_fail)
181
      vty_out (vty, "%% invalid input for %s: %s\n",
182
           argv[_i]->varname, argv[_i]->arg);
183
    _failcnt += _fail;
184
#endif
185
0
  }
186
#if 0 /* anything that can fail? */
187
  if (_failcnt)
188
    return CMD_WARNING;
189
#endif
190
0
#endif
191
192
0
  return config_log_syslog_magic(self, vty, argc, argv, levelarg);
193
0
}
194
195
/* config_log_facility => "log facility <kern|user|mail|daemon|auth|syslog|lpr|news|uucp|cron|local0|local1|local2|local3|local4|local5|local6|local7>$facilityarg" */
196
DEFUN_CMD_FUNC_DECL(config_log_facility)
197
#define funcdecl_config_log_facility static int config_log_facility_magic(\
198
  const struct cmd_element *self __attribute__ ((unused)),\
199
  struct vty *vty __attribute__ ((unused)),\
200
  int argc __attribute__ ((unused)),\
201
  struct cmd_token *argv[] __attribute__ ((unused)),\
202
  const char * facilityarg)
203
funcdecl_config_log_facility;
204
DEFUN_CMD_FUNC_TEXT(config_log_facility)
205
0
{
206
0
#if 1 /* anything to parse? */
207
0
  int _i;
208
#if 0 /* anything that can fail? */
209
  unsigned _fail = 0, _failcnt = 0;
210
#endif
211
0
  const char *facilityarg = NULL;
212
213
0
  for (_i = 0; _i < argc; _i++) {
214
0
    if (!argv[_i]->varname)
215
0
      continue;
216
#if 0 /* anything that can fail? */
217
    _fail = 0;
218
#endif
219
220
0
    if (!strcmp(argv[_i]->varname, "facilityarg")) {
221
0
      facilityarg = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
222
0
    }
223
#if 0 /* anything that can fail? */
224
    if (_fail)
225
      vty_out (vty, "%% invalid input for %s: %s\n",
226
           argv[_i]->varname, argv[_i]->arg);
227
    _failcnt += _fail;
228
#endif
229
0
  }
230
#if 0 /* anything that can fail? */
231
  if (_failcnt)
232
    return CMD_WARNING;
233
#endif
234
0
#endif
235
0
  if (!facilityarg) {
236
0
    vty_out(vty, "Internal CLI error [%s]\n", "facilityarg");
237
0
    return CMD_WARNING;
238
0
  }
239
240
0
  return config_log_facility_magic(self, vty, argc, argv, facilityarg);
241
0
}
242
243
/* config_log_timestamp_precision => "log timestamp precision (0-6)" */
244
DEFUN_CMD_FUNC_DECL(config_log_timestamp_precision)
245
#define funcdecl_config_log_timestamp_precision static int config_log_timestamp_precision_magic(\
246
  const struct cmd_element *self __attribute__ ((unused)),\
247
  struct vty *vty __attribute__ ((unused)),\
248
  int argc __attribute__ ((unused)),\
249
  struct cmd_token *argv[] __attribute__ ((unused)),\
250
  long precision,\
251
  const char * precision_str __attribute__ ((unused)))
252
funcdecl_config_log_timestamp_precision;
253
DEFUN_CMD_FUNC_TEXT(config_log_timestamp_precision)
254
0
{
255
0
#if 1 /* anything to parse? */
256
0
  int _i;
257
0
#if 1 /* anything that can fail? */
258
0
  unsigned _fail = 0, _failcnt = 0;
259
0
#endif
260
0
  long precision = 0;
261
0
  const char *precision_str = NULL;
262
263
0
  for (_i = 0; _i < argc; _i++) {
264
0
    if (!argv[_i]->varname)
265
0
      continue;
266
0
#if 1 /* anything that can fail? */
267
0
    _fail = 0;
268
0
#endif
269
270
0
    if (!strcmp(argv[_i]->varname, "precision")) {
271
0
      precision_str = argv[_i]->arg;
272
0
      char *_end;
273
0
      precision = strtol(argv[_i]->arg, &_end, 10);
274
0
      _fail = (_end == argv[_i]->arg) || (*_end != '\0');
275
0
    }
276
0
#if 1 /* anything that can fail? */
277
0
    if (_fail)
278
0
      vty_out (vty, "%% invalid input for %s: %s\n",
279
0
           argv[_i]->varname, argv[_i]->arg);
280
0
    _failcnt += _fail;
281
0
#endif
282
0
  }
283
0
#if 1 /* anything that can fail? */
284
0
  if (_failcnt)
285
0
    return CMD_WARNING;
286
0
#endif
287
0
#endif
288
0
  if (!precision_str) {
289
0
    vty_out(vty, "Internal CLI error [%s]\n", "precision_str");
290
0
    return CMD_WARNING;
291
0
  }
292
293
0
  return config_log_timestamp_precision_magic(self, vty, argc, argv, precision, precision_str);
294
0
}
295
296
/* config_log_ec => "[no] log error-category" */
297
DEFUN_CMD_FUNC_DECL(config_log_ec)
298
#define funcdecl_config_log_ec static int config_log_ec_magic(\
299
  const struct cmd_element *self __attribute__ ((unused)),\
300
  struct vty *vty __attribute__ ((unused)),\
301
  int argc __attribute__ ((unused)),\
302
  struct cmd_token *argv[] __attribute__ ((unused)),\
303
  const char * no)
304
funcdecl_config_log_ec;
305
DEFUN_CMD_FUNC_TEXT(config_log_ec)
306
0
{
307
0
#if 1 /* anything to parse? */
308
0
  int _i;
309
#if 0 /* anything that can fail? */
310
  unsigned _fail = 0, _failcnt = 0;
311
#endif
312
0
  const char *no = NULL;
313
314
0
  for (_i = 0; _i < argc; _i++) {
315
0
    if (!argv[_i]->varname)
316
0
      continue;
317
#if 0 /* anything that can fail? */
318
    _fail = 0;
319
#endif
320
321
0
    if (!strcmp(argv[_i]->varname, "no")) {
322
0
      no = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
323
0
    }
324
#if 0 /* anything that can fail? */
325
    if (_fail)
326
      vty_out (vty, "%% invalid input for %s: %s\n",
327
           argv[_i]->varname, argv[_i]->arg);
328
    _failcnt += _fail;
329
#endif
330
0
  }
331
#if 0 /* anything that can fail? */
332
  if (_failcnt)
333
    return CMD_WARNING;
334
#endif
335
0
#endif
336
337
0
  return config_log_ec_magic(self, vty, argc, argv, no);
338
0
}
339
340
/* config_log_xid => "[no] log unique-id" */
341
DEFUN_CMD_FUNC_DECL(config_log_xid)
342
#define funcdecl_config_log_xid static int config_log_xid_magic(\
343
  const struct cmd_element *self __attribute__ ((unused)),\
344
  struct vty *vty __attribute__ ((unused)),\
345
  int argc __attribute__ ((unused)),\
346
  struct cmd_token *argv[] __attribute__ ((unused)),\
347
  const char * no)
348
funcdecl_config_log_xid;
349
DEFUN_CMD_FUNC_TEXT(config_log_xid)
350
0
{
351
0
#if 1 /* anything to parse? */
352
0
  int _i;
353
#if 0 /* anything that can fail? */
354
  unsigned _fail = 0, _failcnt = 0;
355
#endif
356
0
  const char *no = NULL;
357
358
0
  for (_i = 0; _i < argc; _i++) {
359
0
    if (!argv[_i]->varname)
360
0
      continue;
361
#if 0 /* anything that can fail? */
362
    _fail = 0;
363
#endif
364
365
0
    if (!strcmp(argv[_i]->varname, "no")) {
366
0
      no = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
367
0
    }
368
#if 0 /* anything that can fail? */
369
    if (_fail)
370
      vty_out (vty, "%% invalid input for %s: %s\n",
371
           argv[_i]->varname, argv[_i]->arg);
372
    _failcnt += _fail;
373
#endif
374
0
  }
375
#if 0 /* anything that can fail? */
376
  if (_failcnt)
377
    return CMD_WARNING;
378
#endif
379
0
#endif
380
381
0
  return config_log_xid_magic(self, vty, argc, argv, no);
382
0
}
383
384
/* config_log_filterfile => "log filtered-file FILENAME [<emergencies|alerts|critical|errors|warnings|notifications|informational|debugging>$levelarg]" */
385
DEFUN_CMD_FUNC_DECL(config_log_filterfile)
386
#define funcdecl_config_log_filterfile static int config_log_filterfile_magic(\
387
  const struct cmd_element *self __attribute__ ((unused)),\
388
  struct vty *vty __attribute__ ((unused)),\
389
  int argc __attribute__ ((unused)),\
390
  struct cmd_token *argv[] __attribute__ ((unused)),\
391
  const char * filename,\
392
  const char * levelarg)
393
funcdecl_config_log_filterfile;
394
DEFUN_CMD_FUNC_TEXT(config_log_filterfile)
395
0
{
396
0
#if 2 /* anything to parse? */
397
0
  int _i;
398
#if 0 /* anything that can fail? */
399
  unsigned _fail = 0, _failcnt = 0;
400
#endif
401
0
  const char *filename = NULL;
402
0
  const char *levelarg = NULL;
403
404
0
  for (_i = 0; _i < argc; _i++) {
405
0
    if (!argv[_i]->varname)
406
0
      continue;
407
#if 0 /* anything that can fail? */
408
    _fail = 0;
409
#endif
410
411
0
    if (!strcmp(argv[_i]->varname, "filename")) {
412
0
      filename = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
413
0
    }
414
0
    if (!strcmp(argv[_i]->varname, "levelarg")) {
415
0
      levelarg = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
416
0
    }
417
#if 0 /* anything that can fail? */
418
    if (_fail)
419
      vty_out (vty, "%% invalid input for %s: %s\n",
420
           argv[_i]->varname, argv[_i]->arg);
421
    _failcnt += _fail;
422
#endif
423
0
  }
424
#if 0 /* anything that can fail? */
425
  if (_failcnt)
426
    return CMD_WARNING;
427
#endif
428
0
#endif
429
0
  if (!filename) {
430
0
    vty_out(vty, "Internal CLI error [%s]\n", "filename");
431
0
    return CMD_WARNING;
432
0
  }
433
434
0
  return config_log_filterfile_magic(self, vty, argc, argv, filename, levelarg);
435
0
}
436
437
/* log_filter => "[no] log filter-text WORD$filter" */
438
DEFUN_CMD_FUNC_DECL(log_filter)
439
#define funcdecl_log_filter static int log_filter_magic(\
440
  const struct cmd_element *self __attribute__ ((unused)),\
441
  struct vty *vty __attribute__ ((unused)),\
442
  int argc __attribute__ ((unused)),\
443
  struct cmd_token *argv[] __attribute__ ((unused)),\
444
  const char * no,\
445
  const char * filter)
446
funcdecl_log_filter;
447
DEFUN_CMD_FUNC_TEXT(log_filter)
448
0
{
449
0
#if 2 /* anything to parse? */
450
0
  int _i;
451
#if 0 /* anything that can fail? */
452
  unsigned _fail = 0, _failcnt = 0;
453
#endif
454
0
  const char *no = NULL;
455
0
  const char *filter = NULL;
456
457
0
  for (_i = 0; _i < argc; _i++) {
458
0
    if (!argv[_i]->varname)
459
0
      continue;
460
#if 0 /* anything that can fail? */
461
    _fail = 0;
462
#endif
463
464
0
    if (!strcmp(argv[_i]->varname, "no")) {
465
0
      no = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
466
0
    }
467
0
    if (!strcmp(argv[_i]->varname, "filter")) {
468
0
      filter = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
469
0
    }
470
#if 0 /* anything that can fail? */
471
    if (_fail)
472
      vty_out (vty, "%% invalid input for %s: %s\n",
473
           argv[_i]->varname, argv[_i]->arg);
474
    _failcnt += _fail;
475
#endif
476
0
  }
477
#if 0 /* anything that can fail? */
478
  if (_failcnt)
479
    return CMD_WARNING;
480
#endif
481
0
#endif
482
0
  if (!filter) {
483
0
    vty_out(vty, "Internal CLI error [%s]\n", "filter");
484
0
    return CMD_WARNING;
485
0
  }
486
487
0
  return log_filter_magic(self, vty, argc, argv, no, filter);
488
0
}
489
490
/* log_filter_clear => "clear log filter-text" */
491
DEFUN_CMD_FUNC_DECL(log_filter_clear)
492
#define funcdecl_log_filter_clear static int log_filter_clear_magic(\
493
  const struct cmd_element *self __attribute__ ((unused)),\
494
  struct vty *vty __attribute__ ((unused)),\
495
  int argc __attribute__ ((unused)),\
496
  struct cmd_token *argv[] __attribute__ ((unused)))
497
funcdecl_log_filter_clear;
498
DEFUN_CMD_FUNC_TEXT(log_filter_clear)
499
0
{
500
#if 0 /* anything to parse? */
501
  int _i;
502
#if 0 /* anything that can fail? */
503
  unsigned _fail = 0, _failcnt = 0;
504
#endif
505
506
  for (_i = 0; _i < argc; _i++) {
507
    if (!argv[_i]->varname)
508
      continue;
509
#if 0 /* anything that can fail? */
510
    _fail = 0;
511
#endif
512
513
#if 0 /* anything that can fail? */
514
    if (_fail)
515
      vty_out (vty, "%% invalid input for %s: %s\n",
516
           argv[_i]->varname, argv[_i]->arg);
517
    _failcnt += _fail;
518
#endif
519
  }
520
#if 0 /* anything that can fail? */
521
  if (_failcnt)
522
    return CMD_WARNING;
523
#endif
524
#endif
525
526
0
  return log_filter_clear_magic(self, vty, argc, argv);
527
0
}
528
529
/* show_log_filter => "show logging filter-text" */
530
DEFUN_CMD_FUNC_DECL(show_log_filter)
531
#define funcdecl_show_log_filter static int show_log_filter_magic(\
532
  const struct cmd_element *self __attribute__ ((unused)),\
533
  struct vty *vty __attribute__ ((unused)),\
534
  int argc __attribute__ ((unused)),\
535
  struct cmd_token *argv[] __attribute__ ((unused)))
536
funcdecl_show_log_filter;
537
DEFUN_CMD_FUNC_TEXT(show_log_filter)
538
0
{
539
#if 0 /* anything to parse? */
540
  int _i;
541
#if 0 /* anything that can fail? */
542
  unsigned _fail = 0, _failcnt = 0;
543
#endif
544
545
  for (_i = 0; _i < argc; _i++) {
546
    if (!argv[_i]->varname)
547
      continue;
548
#if 0 /* anything that can fail? */
549
    _fail = 0;
550
#endif
551
552
#if 0 /* anything that can fail? */
553
    if (_fail)
554
      vty_out (vty, "%% invalid input for %s: %s\n",
555
           argv[_i]->varname, argv[_i]->arg);
556
    _failcnt += _fail;
557
#endif
558
  }
559
#if 0 /* anything that can fail? */
560
  if (_failcnt)
561
    return CMD_WARNING;
562
#endif
563
#endif
564
565
0
  return show_log_filter_magic(self, vty, argc, argv);
566
0
}
567
568
/* log_immediate_mode => "[no] log immediate-mode" */
569
DEFUN_CMD_FUNC_DECL(log_immediate_mode)
570
#define funcdecl_log_immediate_mode static int log_immediate_mode_magic(\
571
  const struct cmd_element *self __attribute__ ((unused)),\
572
  struct vty *vty __attribute__ ((unused)),\
573
  int argc __attribute__ ((unused)),\
574
  struct cmd_token *argv[] __attribute__ ((unused)),\
575
  const char * no)
576
funcdecl_log_immediate_mode;
577
DEFUN_CMD_FUNC_TEXT(log_immediate_mode)
578
0
{
579
0
#if 1 /* anything to parse? */
580
0
  int _i;
581
#if 0 /* anything that can fail? */
582
  unsigned _fail = 0, _failcnt = 0;
583
#endif
584
0
  const char *no = NULL;
585
586
0
  for (_i = 0; _i < argc; _i++) {
587
0
    if (!argv[_i]->varname)
588
0
      continue;
589
#if 0 /* anything that can fail? */
590
    _fail = 0;
591
#endif
592
593
0
    if (!strcmp(argv[_i]->varname, "no")) {
594
0
      no = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
595
0
    }
596
#if 0 /* anything that can fail? */
597
    if (_fail)
598
      vty_out (vty, "%% invalid input for %s: %s\n",
599
           argv[_i]->varname, argv[_i]->arg);
600
    _failcnt += _fail;
601
#endif
602
0
  }
603
#if 0 /* anything that can fail? */
604
  if (_failcnt)
605
    return CMD_WARNING;
606
#endif
607
0
#endif
608
609
0
  return log_immediate_mode_magic(self, vty, argc, argv, no);
610
0
}
611