forked from Mirror/frr
*: Allow agentx to be displayed as part of vtysh
Modify code so that that vtysh can now accept the agentx command for snmp support Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
6281320446
commit
62ff928b37
|
@ -1510,6 +1510,8 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
AM_CONDITIONAL(SNMP, test "x$SNMP_METHOD" = "xagentx")
|
||||||
|
|
||||||
dnl ---------------------------
|
dnl ---------------------------
|
||||||
dnl sockaddr and netinet checks
|
dnl sockaddr and netinet checks
|
||||||
dnl ---------------------------
|
dnl ---------------------------
|
||||||
|
|
|
@ -134,7 +134,8 @@ agentx_events_update(void)
|
||||||
static struct cmd_node agentx_node =
|
static struct cmd_node agentx_node =
|
||||||
{
|
{
|
||||||
SMUX_NODE,
|
SMUX_NODE,
|
||||||
"" /* AgentX has no interface. */
|
"", /* AgentX has no interface. */
|
||||||
|
1
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Logging NetSNMP messages */
|
/* Logging NetSNMP messages */
|
||||||
|
@ -165,7 +166,7 @@ config_write_agentx (struct vty *vty)
|
||||||
{
|
{
|
||||||
if (agentx_enabled)
|
if (agentx_enabled)
|
||||||
vty_out (vty, "agentx%s", VTY_NEWLINE);
|
vty_out (vty, "agentx%s", VTY_NEWLINE);
|
||||||
return 0;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
DEFUN (agentx_enable,
|
DEFUN (agentx_enable,
|
||||||
|
@ -183,7 +184,7 @@ DEFUN (agentx_enable,
|
||||||
return CMD_SUCCESS;
|
return CMD_SUCCESS;
|
||||||
}
|
}
|
||||||
vty_out (vty, "SNMP AgentX already enabled%s", VTY_NEWLINE);
|
vty_out (vty, "SNMP AgentX already enabled%s", VTY_NEWLINE);
|
||||||
return CMD_WARNING;
|
return CMD_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
DEFUN (no_agentx,
|
DEFUN (no_agentx,
|
||||||
|
|
|
@ -118,6 +118,10 @@ vtysh_scan += $(top_srcdir)/eigrpd/eigrp_dump.c
|
||||||
vtysh_scan += $(top_srcdir)/eigrpd/eigrp_vty.c
|
vtysh_scan += $(top_srcdir)/eigrpd/eigrp_vty.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if SNMP
|
||||||
|
vtysh_scan += $(top_srcdir)/lib/agentx.c
|
||||||
|
endif
|
||||||
|
|
||||||
vtysh_cmd_FILES = $(vtysh_scan) \
|
vtysh_cmd_FILES = $(vtysh_scan) \
|
||||||
$(top_srcdir)/lib/keychain.c $(top_srcdir)/lib/routemap.c \
|
$(top_srcdir)/lib/keychain.c $(top_srcdir)/lib/routemap.c \
|
||||||
$(top_srcdir)/lib/filter.c $(top_srcdir)/lib/plist.c \
|
$(top_srcdir)/lib/filter.c $(top_srcdir)/lib/plist.c \
|
||||||
|
|
|
@ -90,6 +90,9 @@ foreach (@ARGV) {
|
||||||
elsif ($file =~ /lib\/filter\.c$/) {
|
elsif ($file =~ /lib\/filter\.c$/) {
|
||||||
$protocol = "VTYSH_ALL";
|
$protocol = "VTYSH_ALL";
|
||||||
}
|
}
|
||||||
|
elsif ($file =~ /lib\/agentx\.c$/) {
|
||||||
|
$protocol = "VTYSH_RIPD|VTYSH_OSPFD|VTYSH_OSPF6D|VTYSH_BGPD|VTYSH_ZEBRA";
|
||||||
|
}
|
||||||
elsif ($file =~ /lib\/ns\.c$/) {
|
elsif ($file =~ /lib\/ns\.c$/) {
|
||||||
$protocol = "VTYSH_ZEBRA";
|
$protocol = "VTYSH_ZEBRA";
|
||||||
}
|
}
|
||||||
|
|
|
@ -277,6 +277,7 @@ vtysh_config_parse_line (const char *line)
|
||||||
if (strncmp (line, "log", strlen ("log")) == 0
|
if (strncmp (line, "log", strlen ("log")) == 0
|
||||||
|| strncmp (line, "hostname", strlen ("hostname")) == 0
|
|| strncmp (line, "hostname", strlen ("hostname")) == 0
|
||||||
|| strncmp (line, "frr", strlen ("frr")) == 0
|
|| strncmp (line, "frr", strlen ("frr")) == 0
|
||||||
|
|| strncmp (line, "agentx", strlen ("agentx")) == 0
|
||||||
)
|
)
|
||||||
config_add_line_uniq (config_top, line);
|
config_add_line_uniq (config_top, line);
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in a new issue