summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorpaul <paul>2003-06-15 01:28:29 +0000
committerpaul <paul>2003-06-15 01:28:29 +0000
commitb21b19c5785487f2ff4a6ce38f45c2e6c35f4363 (patch)
treec79f90ce7bd798b3f1391010153d9fdf7c7418f0 /lib
parent0e4f190ebf5a26e4b66fb49cd74ae0ff0c7e0863 (diff)
2003-06-15 Paul Jakma <paul@dishone.st>
* lib/vty.{c,h}: Remove vty layer depending on a 'master' global, pass the thread master in explicitly to vty_init. Sort out some header dependency problems with lib/command.h * zebra/: Move globals to struct zebrad. Update vty_init(). * (.*)/\1_main.c: update call to vty_init().
Diffstat (limited to 'lib')
-rw-r--r--lib/command.c5
-rw-r--r--lib/vty.c10
-rw-r--r--lib/vty.h4
3 files changed, 13 insertions, 6 deletions
diff --git a/lib/command.c b/lib/command.c
index 5d429338..ade413bb 100644
--- a/lib/command.c
+++ b/lib/command.c
@@ -20,11 +20,14 @@ Boston, MA 02111-1307, USA. */
#include <zebra.h>
-#include "command.h"
+
#include "memory.h"
#include "log.h"
#include "version.h"
#include "thread.h"
+#include "vector.h"
+#include "vty.h"
+#include "command.h"
/* Command vector which includes some level of command lists. Normally
each daemon maintains each own cmdvec. */
diff --git a/lib/vty.c b/lib/vty.c
index 4d6eb304..c38ae946 100644
--- a/lib/vty.c
+++ b/lib/vty.c
@@ -23,16 +23,17 @@
#include <zebra.h>
#include "linklist.h"
+#include "thread.h"
#include "buffer.h"
#include "version.h"
#include "command.h"
#include "sockunion.h"
-#include "thread.h"
#include "memory.h"
#include "str.h"
#include "log.h"
#include "prefix.h"
#include "filter.h"
+#include "vty.h"
#include "privs.h"
/* Vty events */
@@ -2342,8 +2343,7 @@ vty_config_unlock (struct vty *vty)
}
/* Master of the threads. */
-extern struct thread_master *master;
-/* struct thread_master *master; */
+static struct thread_master *master;
static void
vty_event (enum event event, int sock, struct vty *vty)
@@ -2791,13 +2791,15 @@ vty_init_vtysh ()
/* Install vty's own commands like `who' command. */
void
-vty_init ()
+vty_init (struct thread_master *master_thread)
{
/* For further configuration read, preserve current directory. */
vty_save_cwd ();
vtyvec = vector_init (VECTOR_MIN_SIZE);
+ master = master_thread;
+
/* Initilize server thread vector. */
Vvty_serv_thread = vector_init (VECTOR_MIN_SIZE);
diff --git a/lib/vty.h b/lib/vty.h
index 4d2a6a03..aaf8a5b1 100644
--- a/lib/vty.h
+++ b/lib/vty.h
@@ -21,6 +21,8 @@ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
#ifndef _ZEBRA_VTY_H
#define _ZEBRA_VTY_H
+#include "thread.h"
+
#define VTY_BUFSIZ 512
#define VTY_MAXHIST 20
@@ -184,7 +186,7 @@ struct vty
extern char integrate_default[];
/* Prototypes. */
-void vty_init (void);
+void vty_init (struct thread_master *);
void vty_init_vtysh (void);
void vty_reset (void);
void vty_finish (void);