From 94d09040cce02141bfe3c4bc28fb5be99ed56b30 Mon Sep 17 00:00:00 2001 From: Igor Ryzhov Date: Sat, 13 Mar 2021 02:09:34 +0300 Subject: [PATCH] eigrpd: fix dependency on operational state in cli Signed-off-by: Igor Ryzhov --- eigrpd/eigrp_cli.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/eigrpd/eigrp_cli.c b/eigrpd/eigrp_cli.c index 3e667aa6b7..0b4774ba42 100644 --- a/eigrpd/eigrp_cli.c +++ b/eigrpd/eigrp_cli.c @@ -702,12 +702,12 @@ DEFPY_YANG( void eigrp_cli_show_summarize_address(struct vty *vty, struct lyd_node *dnode, bool show_defaults) { - const struct eigrp_interface *eif = nb_running_get_entry(dnode, NULL, - true); + const struct lyd_node *instance = yang_dnode_get_parent(dnode, "instance"); + uint16_t asn = yang_dnode_get_uint16(instance, "./asn"); const char *summarize_address = yang_dnode_get_string(dnode, NULL); - vty_out(vty, " ip summary-address eigrp %d %s\n", - eif->eigrp->AS, summarize_address); + vty_out(vty, " ip summary-address eigrp %d %s\n", asn, + summarize_address); } /* @@ -766,12 +766,11 @@ DEFPY_YANG( void eigrp_cli_show_authentication(struct vty *vty, struct lyd_node *dnode, bool show_defaults) { - const struct eigrp_interface *eif = nb_running_get_entry(dnode, NULL, - true); + const struct lyd_node *instance = yang_dnode_get_parent(dnode, "instance"); + uint16_t asn = yang_dnode_get_uint16(instance, "./asn"); const char *crypt = yang_dnode_get_string(dnode, NULL); - vty_out(vty, " ip authentication mode eigrp %d %s\n", - eif->eigrp->AS, crypt); + vty_out(vty, " ip authentication mode eigrp %d %s\n", asn, crypt); } /* @@ -826,12 +825,12 @@ DEFPY_YANG( void eigrp_cli_show_keychain(struct vty *vty, struct lyd_node *dnode, bool show_defaults) { - const struct eigrp_interface *eif = nb_running_get_entry(dnode, NULL, - true); + const struct lyd_node *instance = yang_dnode_get_parent(dnode, "instance"); + uint16_t asn = yang_dnode_get_uint16(instance, "./asn"); const char *keychain = yang_dnode_get_string(dnode, NULL); - vty_out(vty, " ip authentication key-chain eigrp %d %s\n", - eif->eigrp->AS, keychain); + vty_out(vty, " ip authentication key-chain eigrp %d %s\n", asn, + keychain); } -- 2.39.5