mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-09 14:39:54 +00:00
zebra: Add test and show commands for mlag
Add a 'test zebra mlag <none|master|slave>` and a `show zebra mlag` comamnd. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
6edbb8b2e3
commit
763ec244cf
@ -10,6 +10,7 @@ vtysh_scan += \
|
|||||||
$(top_srcdir)/zebra/interface.c \
|
$(top_srcdir)/zebra/interface.c \
|
||||||
$(top_srcdir)/zebra/router-id.c \
|
$(top_srcdir)/zebra/router-id.c \
|
||||||
$(top_srcdir)/zebra/rtadv.c \
|
$(top_srcdir)/zebra/rtadv.c \
|
||||||
|
$(top_srcdir)/zebra/zebra_mlag.c \
|
||||||
$(top_srcdir)/zebra/zebra_mpls_vty.c \
|
$(top_srcdir)/zebra/zebra_mpls_vty.c \
|
||||||
$(top_srcdir)/zebra/zebra_ptm.c \
|
$(top_srcdir)/zebra/zebra_ptm.c \
|
||||||
$(top_srcdir)/zebra/zebra_pw.c \
|
$(top_srcdir)/zebra/zebra_pw.c \
|
||||||
@ -94,10 +95,12 @@ zebra_zebra_SOURCES = \
|
|||||||
zebra/zebra_errors.c \
|
zebra/zebra_errors.c \
|
||||||
# end
|
# end
|
||||||
|
|
||||||
|
zebra/zebra_mlag_clippy.c: $(CLIPPY_DEPS)
|
||||||
|
zebra/zebra_mlag.$(OBJEXT): zebra/zebra_mlag_clippy.c
|
||||||
|
|
||||||
zebra/zebra_vty_clippy.c: $(CLIPPY_DEPS)
|
zebra/zebra_vty_clippy.c: $(CLIPPY_DEPS)
|
||||||
zebra/zebra_vty.$(OBJEXT): zebra/zebra_vty_clippy.c
|
zebra/zebra_vty.$(OBJEXT): zebra/zebra_vty_clippy.c
|
||||||
|
|
||||||
|
|
||||||
zebra/zebra_routemap_clippy.c: $(CLIPPY_DEPS)
|
zebra/zebra_routemap_clippy.c: $(CLIPPY_DEPS)
|
||||||
zebra/zebra_routemap.$(OBJEXT): zebra/zebra_routemap_clippy.c
|
zebra/zebra_routemap.$(OBJEXT): zebra/zebra_routemap_clippy.c
|
||||||
|
|
||||||
|
@ -21,10 +21,15 @@
|
|||||||
*/
|
*/
|
||||||
#include "zebra.h"
|
#include "zebra.h"
|
||||||
|
|
||||||
|
#include "command.h"
|
||||||
#include "hook.h"
|
#include "hook.h"
|
||||||
|
|
||||||
#include "zebra/zebra_mlag.h"
|
#include "zebra/zebra_mlag.h"
|
||||||
|
|
||||||
|
#ifndef VTYSH_EXTRACT_PL
|
||||||
|
#include "zebra/zebra_mlag_clippy.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
enum mlag_role role = MLAG_ROLE_NONE;
|
enum mlag_role role = MLAG_ROLE_NONE;
|
||||||
|
|
||||||
enum mlag_role zebra_mlag_get_role(void)
|
enum mlag_role zebra_mlag_get_role(void)
|
||||||
@ -32,8 +37,45 @@ enum mlag_role zebra_mlag_get_role(void)
|
|||||||
return role;
|
return role;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DEFUN_HIDDEN (show_mlag,
|
||||||
|
show_mlag_cmd,
|
||||||
|
"show zebra mlag",
|
||||||
|
SHOW_STR
|
||||||
|
ZEBRA_STR
|
||||||
|
"The mlag role on this machine\n")
|
||||||
|
{
|
||||||
|
char buf[80];
|
||||||
|
|
||||||
|
vty_out(vty, "MLag is configured to: %s\n",
|
||||||
|
mlag_role2str(role, buf, sizeof(buf)));
|
||||||
|
|
||||||
|
return CMD_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
DEFPY_HIDDEN (test_mlag,
|
||||||
|
test_mlag_cmd,
|
||||||
|
"test zebra mlag <none$none|primary$primary|secondary$secondary>",
|
||||||
|
"Test code\n"
|
||||||
|
ZEBRA_STR
|
||||||
|
"Modify the Mlag state\n"
|
||||||
|
"Mlag is not setup on the machine\n"
|
||||||
|
"Mlag is setup to be primary\n"
|
||||||
|
"Mlag is setup to be the secondary\n")
|
||||||
|
{
|
||||||
|
if (none)
|
||||||
|
role = MLAG_ROLE_NONE;
|
||||||
|
if (primary)
|
||||||
|
role = MLAG_ROLE_PRIMARY;
|
||||||
|
if (secondary)
|
||||||
|
role = MLAG_ROLE_SECONDARY;
|
||||||
|
|
||||||
|
return CMD_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
void zebra_mlag_init(void)
|
void zebra_mlag_init(void)
|
||||||
{
|
{
|
||||||
|
install_element(VIEW_NODE, &show_mlag_cmd);
|
||||||
|
install_element(ENABLE_NODE, &test_mlag_cmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
void zebra_mlag_terminate(void)
|
void zebra_mlag_terminate(void)
|
||||||
|
Loading…
Reference in New Issue
Block a user