Annotation of embedaddon/quagga/tests/common-cli.c, revision 1.1.1.1
1.1 misho 1: /*
2: * generic CLI test helper functions
3: *
4: * Copyright (C) 2015 by David Lamparter,
5: * for Open Source Routing / NetDEF, Inc.
6: *
7: * Quagga is free software; you can redistribute it and/or modify it
8: * under the terms of the GNU General Public License as published by the
9: * Free Software Foundation; either version 2, or (at your option) any
10: * later version.
11: *
12: * Quagga is distributed in the hope that it will be useful, but
13: * WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15: * General Public License for more details.
16: *
17: * You should have received a copy of the GNU General Public License
18: * along with Quagga; see the file COPYING. If not, write to the Free
19: * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
20: * 02111-1307, USA.
21: */
22:
23: #include <zebra.h>
24:
25: #include "thread.h"
26: #include "vty.h"
27: #include "command.h"
28: #include "memory.h"
29: #include "log.h"
30:
31: #include "common-cli.h"
32:
33: struct thread_master *master;
34:
35: int dump_args(struct vty *vty, const char *descr,
36: int argc, const char **argv)
37: {
38: int i;
39: vty_out (vty, "%s with %d args.%s", descr, argc, VTY_NEWLINE);
40: for (i = 0; i < argc; i++)
41: {
42: vty_out (vty, "[%02d]: %s%s", i, argv[i], VTY_NEWLINE);
43: }
44:
45: return CMD_SUCCESS;
46: }
47:
48: static void vty_do_exit(void)
49: {
50: printf ("\nend.\n");
51: exit (0);
52: }
53:
54: /* main routine. */
55: int
56: main (int argc, char **argv)
57: {
58: struct thread thread;
59:
60: /* Set umask before anything for security */
61: umask (0027);
62:
63: /* master init. */
64: master = thread_master_create ();
65:
66: zlog_default = openzlog ("common-cli", ZLOG_NONE,
67: LOG_CONS|LOG_NDELAY|LOG_PID, LOG_DAEMON);
68: zlog_set_level (NULL, ZLOG_DEST_SYSLOG, ZLOG_DISABLED);
69: zlog_set_level (NULL, ZLOG_DEST_STDOUT, ZLOG_DISABLED);
70: zlog_set_level (NULL, ZLOG_DEST_MONITOR, LOG_DEBUG);
71:
72: /* Library inits. */
73: cmd_init (1);
74: host.name = strdup ("test");
75:
76: vty_init (master);
77: memory_init ();
78:
79: test_init ();
80:
81: vty_stdio (vty_do_exit);
82:
83: /* Fetch next active thread. */
84: while (thread_fetch (master, &thread))
85: thread_call (&thread);
86:
87: /* Not reached. */
88: exit (0);
89: }
90:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>