summaryrefslogtreecommitdiff
path: root/lib/plist.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/plist.c')
-rw-r--r--lib/plist.c41
1 files changed, 24 insertions, 17 deletions
diff --git a/lib/plist.c b/lib/plist.c
index b7a020c6f7..d18d51618a 100644
--- a/lib/plist.c
+++ b/lib/plist.c
@@ -348,14 +348,14 @@ static void prefix_list_delete(struct prefix_list *plist)
static struct prefix_list_entry *
prefix_list_entry_make(struct prefix *prefix, enum prefix_list_type type,
- int64_t seq, int le, int ge, int any)
+ int64_t seq, int le, int ge, bool any)
{
struct prefix_list_entry *pentry;
pentry = prefix_list_entry_new();
if (any)
- pentry->any = 1;
+ pentry->any = true;
prefix_copy(&pentry->prefix, prefix);
pentry->type = type;
@@ -851,7 +851,7 @@ static int vty_prefix_list_install(struct vty *vty, afi_t afi, const char *name,
struct prefix_list_entry *pentry;
struct prefix_list_entry *dup;
struct prefix p, p_tmp;
- int any = 0;
+ bool any = false;
int64_t seqnum = -1;
int lenum = 0;
int genum = 0;
@@ -889,7 +889,7 @@ static int vty_prefix_list_install(struct vty *vty, afi_t afi, const char *name,
(struct prefix_ipv4 *)&p);
genum = 0;
lenum = IPV4_MAX_BITLEN;
- any = 1;
+ any = true;
} else
ret = str2prefix_ipv4(prefix, (struct prefix_ipv4 *)&p);
@@ -908,7 +908,7 @@ static int vty_prefix_list_install(struct vty *vty, afi_t afi, const char *name,
ret = str2prefix_ipv6("::/0", (struct prefix_ipv6 *)&p);
genum = 0;
lenum = IPV6_MAX_BITLEN;
- any = 1;
+ any = true;
} else
ret = str2prefix_ipv6(prefix, (struct prefix_ipv6 *)&p);
@@ -1898,7 +1898,7 @@ int prefix_bgp_orf_set(char *name, afi_t afi, struct orf_prefix *orfp,
if (set) {
pentry = prefix_list_entry_make(
&orfp->p, (permit ? PREFIX_PERMIT : PREFIX_DENY),
- orfp->seq, orfp->le, orfp->ge, 0);
+ orfp->seq, orfp->le, orfp->ge, false);
if (prefix_entry_dup_check(plist, pentry)) {
prefix_list_entry_free(pentry);
@@ -1961,10 +1961,9 @@ int prefix_bgp_show_prefix_list(struct vty *vty, afi_t afi, char *name,
char buf_a[BUFSIZ];
char buf_b[BUFSIZ];
- sprintf(buf_a, "%s/%d",
- inet_ntop(p->family, p->u.val, buf_b,
- BUFSIZ),
- p->prefixlen);
+ snprintf(buf_a, sizeof(buf_a), "%s/%d",
+ inet_ntop(p->family, p->u.val, buf_b, BUFSIZ),
+ p->prefixlen);
json_object_int_add(json_list, "seq", pentry->seq);
json_object_string_add(json_list, "seqPrefixListType",
@@ -2044,10 +2043,14 @@ static void prefix_list_reset_afi(afi_t afi, int orf)
}
+static int config_write_prefix_ipv4(struct vty *vty);
/* Prefix-list node. */
-static struct cmd_node prefix_node = {PREFIX_NODE,
- "", /* Prefix list has no interface. */
- 1};
+static struct cmd_node prefix_node = {
+ .name = "ipv4 prefix list",
+ .node = PREFIX_NODE,
+ .prompt = "",
+ .config_write = config_write_prefix_ipv4,
+};
static int config_write_prefix_ipv4(struct vty *vty)
{
@@ -2085,7 +2088,7 @@ static const struct cmd_variable_handler plist_var_handlers[] = {
static void prefix_list_init_ipv4(void)
{
- install_node(&prefix_node, config_write_prefix_ipv4);
+ install_node(&prefix_node);
install_element(CONFIG_NODE, &ip_prefix_list_cmd);
install_element(CONFIG_NODE, &no_ip_prefix_list_cmd);
@@ -2107,10 +2110,14 @@ static void prefix_list_init_ipv4(void)
install_element(ENABLE_NODE, &clear_ip_prefix_list_cmd);
}
+static int config_write_prefix_ipv6(struct vty *vty);
/* Prefix-list node. */
static struct cmd_node prefix_ipv6_node = {
- PREFIX_IPV6_NODE, "", /* Prefix list has no interface. */
- 1};
+ .name = "ipv6 prefix list",
+ .node = PREFIX_IPV6_NODE,
+ .prompt = "",
+ .config_write = config_write_prefix_ipv6,
+};
static int config_write_prefix_ipv6(struct vty *vty)
{
@@ -2119,7 +2126,7 @@ static int config_write_prefix_ipv6(struct vty *vty)
static void prefix_list_init_ipv6(void)
{
- install_node(&prefix_ipv6_node, config_write_prefix_ipv6);
+ install_node(&prefix_ipv6_node);
install_element(CONFIG_NODE, &ipv6_prefix_list_cmd);
install_element(CONFIG_NODE, &no_ipv6_prefix_list_cmd);