diff options
Diffstat (limited to 'ldpd/ldp_vty_conf.c')
| -rw-r--r-- | ldpd/ldp_vty_conf.c | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/ldpd/ldp_vty_conf.c b/ldpd/ldp_vty_conf.c index 03dee23b47..c217cfc78a 100644 --- a/ldpd/ldp_vty_conf.c +++ b/ldpd/ldp_vty_conf.c @@ -285,6 +285,11 @@ ldp_config_write(struct vty *vty) if (ldpd_conf->flags & F_LDPD_ORDERED_CONTROL) vty_out (vty, " ordered-control\n"); + if (ldpd_conf->wait_for_sync_interval != DFLT_WAIT_FOR_SYNC && + ldpd_conf->wait_for_sync_interval != 0) + vty_out (vty, " wait-for-sync %u\n", + ldpd_conf->wait_for_sync_interval); + RB_FOREACH(nbrp, nbrp_head, &ldpd_conf->nbrp_tree) { if (nbrp->flags & F_NBRP_KEEPALIVE) vty_out (vty, " neighbor %s session holdtime %u\n", @@ -477,7 +482,6 @@ int ldp_vty_disc_holdtime(struct vty *vty, const char *negate, struct iface *iface; struct iface_af *ia; int af; - switch (vty->node) { case LDP_NODE: if (negate) { @@ -1014,6 +1018,24 @@ ldp_vty_ordered_control(struct vty *vty, const char *negate) return (CMD_SUCCESS); } +int ldp_vty_wait_for_sync_interval(struct vty *vty, const char *negate, + long secs) +{ + switch (vty->node) { + case LDP_NODE: + if (negate) + vty_conf->wait_for_sync_interval = DFLT_WAIT_FOR_SYNC; + else + vty_conf->wait_for_sync_interval = secs; + + ldp_config_apply(vty, vty_conf); + break; + default: + fatalx("ldp_vty_wait_for_sync_interval: unexpected node"); + } + return (CMD_SUCCESS); +} + int ldp_vty_ds_cisco_interop(struct vty *vty, const char * negate) { |
