summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfdd/bfdd_cli.c45
-rw-r--r--bfdd/bfdd_northbound.c21
-rw-r--r--yang/frr-bfdd.yang18
3 files changed, 48 insertions, 36 deletions
diff --git a/bfdd/bfdd_cli.c b/bfdd/bfdd_cli.c
index 64500cef7d..29b77a409a 100644
--- a/bfdd/bfdd_cli.c
+++ b/bfdd/bfdd_cli.c
@@ -269,20 +269,27 @@ DEFPY(
"Configure peer receive interval\n"
"Configure peer receive interval value in milliseconds\n")
{
+ char value[32];
+
+ snprintf(value, sizeof(value), "%ld", interval * 1000);
nb_cli_enqueue_change(vty, "./required-receive-interval", NB_OP_MODIFY,
- interval_str);
+ value);
+
return nb_cli_apply_changes(vty, NULL);
}
void bfd_cli_show_rx(struct vty *vty, struct lyd_node *dnode,
bool show_defaults)
{
+ uint32_t value;
+
if (show_defaults)
vty_out(vty, " receive-interval %d\n",
BFD_DEFREQUIREDMINRX);
- else
- vty_out(vty, " receive-interval %s\n",
- yang_dnode_get_string(dnode, NULL));
+ else {
+ value = yang_dnode_get_uint32(dnode, NULL);
+ vty_out(vty, " receive-interval %" PRIu32 "\n", value / 1000);
+ }
}
DEFPY(
@@ -291,20 +298,27 @@ DEFPY(
"Configure peer transmit interval\n"
"Configure peer transmit interval value in milliseconds\n")
{
+ char value[32];
+
+ snprintf(value, sizeof(value), "%ld", interval * 1000);
nb_cli_enqueue_change(vty, "./desired-transmission-interval",
- NB_OP_MODIFY, interval_str);
+ NB_OP_MODIFY, value);
+
return nb_cli_apply_changes(vty, NULL);
}
void bfd_cli_show_tx(struct vty *vty, struct lyd_node *dnode,
bool show_defaults)
{
+ uint32_t value;
+
if (show_defaults)
vty_out(vty, " transmit-interval %d\n",
BFD_DEFDESIREDMINTX);
- else
- vty_out(vty, " transmit-interval %s\n",
- yang_dnode_get_string(dnode, NULL));
+ else {
+ value = yang_dnode_get_uint32(dnode, NULL);
+ vty_out(vty, " transmit-interval %" PRIu32 "\n", value / 1000);
+ }
}
DEFPY(
@@ -334,20 +348,27 @@ DEFPY(
"Configure peer echo interval\n"
"Configure peer echo interval value in milliseconds\n")
{
+ char value[32];
+
+ snprintf(value, sizeof(value), "%ld", interval * 1000);
nb_cli_enqueue_change(vty, "./desired-echo-transmission-interval",
- NB_OP_MODIFY, interval_str);
+ NB_OP_MODIFY, value);
+
return nb_cli_apply_changes(vty, NULL);
}
void bfd_cli_show_echo_interval(struct vty *vty, struct lyd_node *dnode,
bool show_defaults)
{
+ uint32_t value;
+
if (show_defaults)
vty_out(vty, " echo-interval %d\n",
BFD_DEF_REQ_MIN_ECHO);
- else
- vty_out(vty, " echo-interval %s\n",
- yang_dnode_get_string(dnode, NULL));
+ else {
+ value = yang_dnode_get_uint32(dnode, NULL);
+ vty_out(vty, " echo-interval %" PRIu32 "\n", value / 1000);
+ }
}
void
diff --git a/bfdd/bfdd_northbound.c b/bfdd/bfdd_northbound.c
index fd007b57b2..24fdfa1ea2 100644
--- a/bfdd/bfdd_northbound.c
+++ b/bfdd/bfdd_northbound.c
@@ -327,7 +327,7 @@ static int bfdd_bfd_sessions_single_hop_desired_transmission_interval_modify(
switch (event) {
case NB_EV_VALIDATE:
- if (tx_interval < 10 || tx_interval > 60000)
+ if (tx_interval < 10000 || tx_interval > 60000000)
return NB_ERR_VALIDATION;
break;
@@ -337,8 +337,6 @@ static int bfdd_bfd_sessions_single_hop_desired_transmission_interval_modify(
case NB_EV_APPLY:
bs = nb_running_get_entry(dnode, NULL, true);
-
- tx_interval *= 1000;
if (tx_interval == bs->timers.desired_min_tx)
return NB_OK;
@@ -366,7 +364,7 @@ static int bfdd_bfd_sessions_single_hop_required_receive_interval_modify(
switch (event) {
case NB_EV_VALIDATE:
- if (rx_interval < 10 || rx_interval > 60000)
+ if (rx_interval < 10000 || rx_interval > 60000000)
return NB_ERR_VALIDATION;
break;
@@ -376,8 +374,6 @@ static int bfdd_bfd_sessions_single_hop_required_receive_interval_modify(
case NB_EV_APPLY:
bs = nb_running_get_entry(dnode, NULL, true);
-
- rx_interval *= 1000;
if (rx_interval == bs->timers.required_min_rx)
return NB_OK;
@@ -513,7 +509,7 @@ bfdd_bfd_sessions_single_hop_desired_echo_transmission_interval_modify(
switch (event) {
case NB_EV_VALIDATE:
- if (echo_interval < 10 || echo_interval > 60000)
+ if (echo_interval < 10000 || echo_interval > 60000000)
return NB_ERR_VALIDATION;
break;
@@ -523,8 +519,6 @@ bfdd_bfd_sessions_single_hop_desired_echo_transmission_interval_modify(
case NB_EV_APPLY:
bs = nb_running_get_entry(dnode, NULL, true);
-
- echo_interval *= 1000;
if (echo_interval == bs->timers.required_min_echo)
return NB_OK;
@@ -648,8 +642,7 @@ bfdd_bfd_sessions_single_hop_stats_negotiated_transmission_interval_get_elem(
{
const struct bfd_session *bs = list_entry;
- return yang_data_new_uint32(xpath,
- bs->remote_timers.desired_min_tx / 1000);
+ return yang_data_new_uint32(xpath, bs->remote_timers.desired_min_tx);
}
/*
@@ -662,8 +655,7 @@ bfdd_bfd_sessions_single_hop_stats_negotiated_receive_interval_get_elem(
{
const struct bfd_session *bs = list_entry;
- return yang_data_new_uint32(xpath,
- bs->remote_timers.required_min_rx / 1000);
+ return yang_data_new_uint32(xpath, bs->remote_timers.required_min_rx);
}
/*
@@ -785,8 +777,7 @@ bfdd_bfd_sessions_single_hop_stats_negotiated_echo_transmission_interval_get_ele
{
const struct bfd_session *bs = list_entry;
- return yang_data_new_uint32(xpath,
- bs->remote_timers.required_min_echo / 1000);
+ return yang_data_new_uint32(xpath, bs->remote_timers.required_min_echo);
}
/*
diff --git a/yang/frr-bfdd.yang b/yang/frr-bfdd.yang
index 4fb857e6d1..4604f747c6 100644
--- a/yang/frr-bfdd.yang
+++ b/yang/frr-bfdd.yang
@@ -128,15 +128,15 @@ module frr-bfdd {
leaf desired-transmission-interval {
type uint32;
- units milliseconds;
- default 300;
+ units microseconds;
+ default 300000;
description "Minimum desired control packet transmission interval";
}
leaf required-receive-interval {
type uint32;
- units milliseconds;
- default 300;
+ units microseconds;
+ default 300000;
description "Minimum required control packet receive interval";
}
@@ -158,8 +158,8 @@ module frr-bfdd {
leaf desired-echo-transmission-interval {
type uint32;
- units milliseconds;
- default 50;
+ units microseconds;
+ default 50000;
description "Minimum desired control packet transmission interval";
}
}
@@ -217,13 +217,13 @@ module frr-bfdd {
leaf negotiated-transmission-interval {
description "Negotiated transmit interval";
type uint32;
- units milliseconds;
+ units microseconds;
}
leaf negotiated-receive-interval {
description "Negotiated receive interval";
type uint32;
- units milliseconds;
+ units microseconds;
}
leaf detection-mode {
@@ -287,7 +287,7 @@ module frr-bfdd {
*/
leaf negotiated-echo-transmission-interval {
type uint32;
- units milliseconds;
+ units microseconds;
description "Negotiated echo transmit interval";
}