]> git.puffer.fish Git - mirror/frr.git/commitdiff
*: centralize more into frr_init()
authorDavid Lamparter <equinox@opensourcerouting.org>
Sun, 13 Nov 2016 07:23:29 +0000 (16:23 +0900)
committerDavid Lamparter <equinox@opensourcerouting.org>
Tue, 7 Mar 2017 22:07:33 +0000 (23:07 +0100)
Move CLI/VTY/Memory accounting init into frr_*

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
12 files changed:
bgpd/bgp_main.c
isisd/isis_main.c
lib/libfrr.c
lib/libfrr.h
nhrpd/nhrp_main.c
ospf6d/ospf6_main.c
ospfd/ospf_main.c
pimd/pim_main.c
ripd/rip_main.c
ripngd/ripng_main.c
watchfrr/watchfrr.c
zebra/main.c

index 26605be547f7a71ead79314da119dcda58af4063..fec7ed44fe9a73b4fb7c4b7c83959c7cebf7ccdb 100644 (file)
@@ -456,9 +456,6 @@ main (int argc, char **argv)
   bm->address = bgp_address;
 
   /* Initializations. */
-  cmd_init (1);
-  vty_init (bm->master);
-  memory_init ();
   bgp_vrf_init ();
 
   /* BGP related initialization.  */
index 453e77e10f3abe0c2e59a8407d81b1bb463abdcc..268e473fc9d1be069c7796d16e67b8e3386d54c5 100644 (file)
@@ -272,16 +272,13 @@ main (int argc, char **argv, char **envp)
        }
     }
 
+  vty_config_lockless ();
   /* thread master */
   master = frr_init ();
 
   /*
    *  initializations
    */
-  cmd_init (1);
-  vty_config_lockless ();
-  vty_init (master);
-  memory_init ();
   access_list_init();
   vrf_init ();
   prefix_list_init();
index 6d55223f5521d52a0b730ef19ed0283666ebbc5f..216ba787c9e7c8090ef3b15e0810509aa011e2f3 100644 (file)
@@ -25,6 +25,7 @@
 #include "vty.h"
 #include "command.h"
 #include "version.h"
+#include "memory_vty.h"
 
 static char comb_optstr[256];
 static struct option comb_lo[64];
@@ -242,6 +243,13 @@ struct thread_master *frr_init(void)
        master = thread_master_create();
        signal_init(master, di->n_signals, di->signals);
 
+       if (di->flags & FRR_LIMITED_CLI)
+               cmd_init(-1);
+       else
+               cmd_init(1);
+       vty_init(master);
+       memory_init();
+
        return master;
 }
 
index 42c4e548ccf4855c15c79fbf8168050bb2fbe475..97526dde5c31578bd2f09b19f3d75a7815407979 100644 (file)
@@ -29,6 +29,7 @@
 
 #define FRR_NO_PRIVSEP         (1 << 0)
 #define FRR_NO_TCPVTY          (1 << 1)
+#define FRR_LIMITED_CLI                (1 << 2)
 
 struct frr_daemon_info {
        unsigned flags;
index b2edea009c6f3c7fbbdbb867f0e5d8fdabb43456..175b3dfbecbf9390d8b913307b02076fc162c8e5 100644 (file)
@@ -158,9 +158,6 @@ int main(int argc, char **argv)
 
        /* Library inits. */
        master = frr_init();
-       cmd_init(1);
-       vty_init(master);
-       memory_init();
        nhrp_interface_init();
        vrf_init();
        resolver_init();
index f7df47cacb26271ae36c3c41c0242800050436eb..6edce7c30e6c8c476586d3247646c29a65f96bf4 100644 (file)
@@ -260,9 +260,6 @@ main (int argc, char *argv[], char *envp[])
   /* thread master */
   master = frr_init ();
 
-  cmd_init (1);
-  vty_init (master);
-  memory_init ();
   vrf_init ();
   access_list_init ();
   prefix_list_init ();
index c119f4e392c4377e88c1a719689e270f36b6fee9..77916346471fedf45649337ec97f55a562af52f3 100644 (file)
@@ -259,10 +259,7 @@ main (int argc, char **argv)
   master = om->master;
 
   /* Library inits. */
-  cmd_init (1);
   debug_init ();
-  vty_init (master);
-  memory_init ();
   vrf_init ();
 
   access_list_init ();
index b8212542abfc0fc88e3ef8addf9b9145c3d011a0..9136b08e9be239052c20479806ecf46748c287d0 100644 (file)
@@ -150,9 +150,6 @@ int main(int argc, char** argv, char** envp) {
   /* 
    * Initializations
    */
-  cmd_init(1);
-  vty_init(master);
-  memory_init();
   vrf_init ();
   access_list_init();
   prefix_list_init ();
index 2f497f0022842fbea35f29bc33aaa4a1e966da94..2cf88e676fcc652c74c5fa990f2db32e1f0e43af 100644 (file)
@@ -216,9 +216,6 @@ main (int argc, char **argv)
   master = frr_init ();
 
   /* Library initialization. */
-  cmd_init (1);
-  vty_init (master);
-  memory_init ();
   keychain_init ();
   vrf_init ();
 
index b081da23336fa2e7a8cfada5908fde6f9ab6135a..79ea91297d7b01ba43f7a9e631759e735d3aa591 100644 (file)
@@ -212,9 +212,6 @@ main (int argc, char **argv)
   master = frr_init ();
 
   /* Library inits. */
-  cmd_init (1);
-  vty_init (master);
-  memory_init ();
   vrf_init ();
 
   /* RIPngd inits. */
index f6ea77b605866e28a3ba574c2b13a53c97344d38..a09ec5225e5a2a446812772618d5b80f9b11adc9 100644 (file)
@@ -1022,7 +1022,7 @@ static struct quagga_signal_t watchfrr_signals[] = {
 };
 
 FRR_DAEMON_INFO(watchfrr, WATCHFRR,
-       .flags = FRR_NO_PRIVSEP | FRR_NO_TCPVTY,
+       .flags = FRR_NO_PRIVSEP | FRR_NO_TCPVTY | FRR_LIMITED_CLI,
 
        .printhelp = printhelp,
        .copyright = "Copyright 2004 Andrew J. Schorr",
@@ -1288,9 +1288,6 @@ int main(int argc, char **argv)
        } else
                zlog_set_level(NULL, ZLOG_DEST_STDOUT, MIN(gs.loglevel, LOG_DEBUG));
 
-       cmd_init(-1);
-       memory_init();
-       vty_init(master);
        watchfrr_vty_init();
 
        frr_vty_serv(WATCHFRR_VTYSH_PATH);
index 06a260f3707d134b356372e4c33ca18a5da21365..92fe5f4e6497784993ebda7148cd51fdd188f848 100644 (file)
@@ -316,12 +316,8 @@ main (int argc, char **argv)
        }
     }
 
-  zebrad.master = frr_init();
-
-  cmd_init (1);
   vty_config_lockless ();
-  vty_init (zebrad.master);
-  memory_init ();
+  zebrad.master = frr_init();
 
   /* Zebra related initialize. */
   zebra_init ();