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 <[email protected]>
  • Loading branch information
ton31337 committed Oct 28, 2024
1 parent fbc85e8 commit fe6e498
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 @@ -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
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 @@ -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");

Expand Down

0 comments on commit fe6e498

Please sign in to comment.