From: Donatas Abraitis Date: Fri, 18 Oct 2024 12:36:52 +0000 (+0300) Subject: lib, zebra: Keep `zebra on-rib-process script` in frr.conf X-Git-Tag: docker/9.1.3~17^2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=fe6e498d1c63400bd99bcba89669ecc4f5f2e456;p=matthieu%2Ffrr.git lib, zebra: Keep `zebra on-rib-process script` in frr.conf After the change: ``` $ grep on-rib-process /etc/frr/frr.conf zebra on-rib-process script script4 $ systemctl restart frr $ vtysh -c 'show run' | grep on-rib-process zebra on-rib-process script script4 ``` Signed-off-by: Donatas Abraitis --- diff --git a/lib/frrscript.c b/lib/frrscript.c index 50410fb58b..ec2f47899a 100644 --- a/lib/frrscript.c +++ b/lib/frrscript.c @@ -25,6 +25,16 @@ DEFINE_MTYPE_STATIC(LIB, SCRIPT, "Scripting"); struct frrscript_names_head frrscript_names_hash; +void frrscript_names_config_write(struct vty *vty) +{ + struct frrscript_names_entry *lua_script_entry; + + frr_each (frrscript_names, &frrscript_names_hash, lua_script_entry) + if (lua_script_entry->script_name[0] != '\0') + vty_out(vty, "zebra on-rib-process script %s\n", + lua_script_entry->script_name); +} + /* * Wrapper for frrscript_names_add * Use this to register hook calls when a daemon starts up diff --git a/lib/frrscript.h b/lib/frrscript.h index df49b5718c..ddc1fecc86 100644 --- a/lib/frrscript.h +++ b/lib/frrscript.h @@ -44,6 +44,8 @@ struct frrscript_names_entry { extern struct frrscript_names_head frrscript_names_hash; +extern void frrscript_names_config_write(struct vty *vty); + int frrscript_names_hash_cmp(const struct frrscript_names_entry *snhe1, const struct frrscript_names_entry *snhe2); uint32_t frrscript_names_hash_key(const struct frrscript_names_entry *snhe); diff --git a/zebra/zebra_vty.c b/zebra/zebra_vty.c index d36c2f81c7..a7d983142f 100644 --- a/zebra/zebra_vty.c +++ b/zebra/zebra_vty.c @@ -4017,6 +4017,10 @@ static int config_write_protocol(struct vty *vty) if (!zebra_nhg_recursive_use_backups()) vty_out(vty, "no zebra nexthop resolve-via-backup\n"); +#ifdef HAVE_SCRIPTING + frrscript_names_config_write(vty); +#endif + if (rnh_get_hide_backups()) vty_out(vty, "ip nht hide-backup-events\n");