if (yang_module_find("frr-bfdd") && bs->key.vrfname[0]) {
struct lyd_node *bfd_dnode;
char xpath[XPATH_MAXLEN], xpath_srcaddr[XPATH_MAXLEN + 32];
+ char oldpath[XPATH_MAXLEN], newpath[XPATH_MAXLEN];
char addr_buf[INET6_ADDRSTRLEN];
int slen;
bfd_dnode = yang_dnode_get(running_config->dnode, xpath,
bs->key.vrfname);
if (bfd_dnode) {
+ yang_dnode_get_path(bfd_dnode->parent, oldpath,
+ sizeof(oldpath));
yang_dnode_change_leaf(bfd_dnode, vrf->name);
+ yang_dnode_get_path(bfd_dnode->parent, newpath,
+ sizeof(newpath));
+ nb_running_move_tree(oldpath, newpath);
running_config->version++;
}
}
*/
if (yang_module_find("frr-ripd") && old_vrf_name) {
struct lyd_node *rip_dnode;
+ char oldpath[XPATH_MAXLEN];
+ char newpath[XPATH_MAXLEN];
rip_dnode = yang_dnode_get(
running_config->dnode,
"/frr-ripd:ripd/instance[vrf='%s']/vrf",
old_vrf_name);
if (rip_dnode) {
+ yang_dnode_get_path(rip_dnode->parent, oldpath,
+ sizeof(oldpath));
yang_dnode_change_leaf(rip_dnode, vrf->name);
+ yang_dnode_get_path(rip_dnode->parent, newpath,
+ sizeof(newpath));
+ nb_running_move_tree(oldpath, newpath);
running_config->version++;
}
}
*/
if (yang_module_find("frr-ripngd") && old_vrf_name) {
struct lyd_node *ripng_dnode;
+ char oldpath[XPATH_MAXLEN];
+ char newpath[XPATH_MAXLEN];
ripng_dnode = yang_dnode_get(
running_config->dnode,
"/frr-ripngd:ripngd/instance[vrf='%s']/vrf",
old_vrf_name);
if (ripng_dnode) {
+ yang_dnode_get_path(ripng_dnode->parent, oldpath,
+ sizeof(oldpath));
yang_dnode_change_leaf(ripng_dnode, vrf->name);
+ yang_dnode_get_path(ripng_dnode->parent, newpath,
+ sizeof(newpath));
+ nb_running_move_tree(oldpath, newpath);
running_config->version++;
}
}