Skip to content

Commit

Permalink
mgmtd: clarify the startup dance in comments
Browse files Browse the repository at this point in the history
Also retry the config read vs. aborting if we haven't got a FE
client connection yet.

Signed-off-by: Christian Hopps <[email protected]>
  • Loading branch information
choppsv1 committed Oct 12, 2023
1 parent 11e8c90 commit f560807
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 5 deletions.
17 changes: 13 additions & 4 deletions mgmtd/mgmt.c
Original file line number Diff line number Diff line change
Expand Up @@ -52,17 +52,26 @@ void mgmt_init(void)
/* Initialize the MGMTD Frontend Adapter Module */
mgmt_fe_adapter_init(mm->master);

/* Initialize the CLI frontend client */
/*
* Initialize the CLI frontend client -- this queues an event for the
* client to short-circuit connect to the server (ourselves).
*/
vty_init_mgmt_fe();

/* MGMTD VTY commands installation. */
/*
* MGMTD VTY commands installation -- the frr lib code will queue an
* event to read the config files which needs to happen after the
* connect from above is made.
*/
mgmt_vty_init();

/*
* Initialize the MGMTD Backend Adapter Module
*
* We do this after the FE stuff so that we always read our config file
* prior to any BE connection.
* We do this after the FE stuff so that we have read our config file
* prior to any BE connection. Setting up the server will queue a
* "socket read" event to accept BE connections. So the code is counting
* on the above 2 events to run prior to any `accept` event from here.
*/
mgmt_be_adapter_init(mm->master);
}
Expand Down
9 changes: 8 additions & 1 deletion mgmtd/mgmt_vty.c
Original file line number Diff line number Diff line change
Expand Up @@ -452,7 +452,14 @@ DEFPY(debug_mgmt, debug_mgmt_cmd,

static void mgmt_config_read_in(struct event *event)
{
mgmt_vty_read_configs();
if (vty_mgmt_fe_enabled())
mgmt_vty_read_configs();
else {
zlog_warn("%s: no connection to front-end server, retry in 1s",
__func__);
event_add_timer(mm->master, mgmt_config_read_in, NULL, 1,
&mgmt_daemon_info->read_in);
}
}

void mgmt_vty_init(void)
Expand Down

0 comments on commit f560807

Please sign in to comment.