Skip to content

Commit

Permalink
lib, zebra: Keep zebra on-rib-process script in frr.conf
Browse files Browse the repository at this point in the history
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 <donatas@opensourcerouting.org>
(cherry picked from commit 1fe1f8d)
  • Loading branch information
ton31337 authored and mergify[bot] committed Oct 27, 2024
1 parent 894077e commit 5e136ce
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 0 deletions.
10 changes: 10 additions & 0 deletions lib/frrscript.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,16 @@ struct frrscript_names_head frrscript_names_hash;

void _lua_decode_noop(lua_State *L, ...) {}

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
Expand Down
2 changes: 2 additions & 0 deletions lib/frrscript.h
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down
4 changes: 4 additions & 0 deletions zebra/zebra_vty.c
Original file line number Diff line number Diff line change
Expand Up @@ -3794,6 +3794,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");

Expand Down

0 comments on commit 5e136ce

Please sign in to comment.