summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Stapp <mjs@voltanet.io>2019-11-22 12:36:50 -0500
committerGitHub <noreply@github.com>2019-11-22 12:36:50 -0500
commita5a1e515bb5ae39c6967a575b8742ebcb8962c7e (patch)
tree3e0e2042a61e4a377165e772579b0ecd1b3b4aee
parentd813028cf6d10e0315e848751f416532b73a66bd (diff)
parentd2d3d394150f04a512d4ad4a3de0d84b0c1a31d5 (diff)
Merge pull request #5413 from donaldsharp/eigrp_cleanup1
Eigrp cleanup1
-rw-r--r--eigrpd/eigrp_dump.c55
-rw-r--r--eigrpd/eigrp_dump.h18
2 files changed, 20 insertions, 53 deletions
diff --git a/eigrpd/eigrp_dump.c b/eigrpd/eigrp_dump.c
index 583db6622d..7278b002d8 100644
--- a/eigrpd/eigrp_dump.c
+++ b/eigrpd/eigrp_dump.c
@@ -144,55 +144,10 @@ void eigrp_header_dump(struct eigrp_header *eigrph)
const char *eigrp_if_name_string(struct eigrp_interface *ei)
{
- static char buf[EIGRP_IF_STRING_MAXLEN] = "";
-
- if (!ei)
- return "inactive";
-
- snprintf(buf, EIGRP_IF_STRING_MAXLEN, "%s", ei->ifp->name);
- return buf;
-}
-
-const char *eigrp_topology_ip_string(struct eigrp_prefix_entry *tn)
-{
- static char buf[EIGRP_IF_STRING_MAXLEN] = "";
- uint32_t ifaddr;
-
- ifaddr = ntohl(tn->destination->u.prefix4.s_addr);
- snprintf(buf, EIGRP_IF_STRING_MAXLEN, "%u.%u.%u.%u",
- (ifaddr >> 24) & 0xff, (ifaddr >> 16) & 0xff,
- (ifaddr >> 8) & 0xff, ifaddr & 0xff);
- return buf;
-}
-
-
-const char *eigrp_if_ip_string(struct eigrp_interface *ei)
-{
- static char buf[EIGRP_IF_STRING_MAXLEN] = "";
- uint32_t ifaddr;
-
if (!ei)
return "inactive";
- ifaddr = ntohl(ei->address.u.prefix4.s_addr);
- snprintf(buf, EIGRP_IF_STRING_MAXLEN, "%u.%u.%u.%u",
- (ifaddr >> 24) & 0xff, (ifaddr >> 16) & 0xff,
- (ifaddr >> 8) & 0xff, ifaddr & 0xff);
-
- return buf;
-}
-
-const char *eigrp_neigh_ip_string(struct eigrp_neighbor *nbr)
-{
- static char buf[EIGRP_IF_STRING_MAXLEN] = "";
- uint32_t ifaddr;
-
- ifaddr = ntohl(nbr->src.s_addr);
- snprintf(buf, EIGRP_IF_STRING_MAXLEN, "%u.%u.%u.%u",
- (ifaddr >> 24) & 0xff, (ifaddr >> 16) & 0xff,
- (ifaddr >> 8) & 0xff, ifaddr & 0xff);
-
- return buf;
+ return ei->ifp->name;
}
void show_ip_eigrp_interface_header(struct vty *vty, struct eigrp *eigrp)
@@ -209,7 +164,7 @@ void show_ip_eigrp_interface_header(struct vty *vty, struct eigrp *eigrp)
void show_ip_eigrp_interface_sub(struct vty *vty, struct eigrp *eigrp,
struct eigrp_interface *ei)
{
- vty_out(vty, "%-11s ", eigrp_if_name_string(ei));
+ vty_out(vty, "%-11s ", IF_NAME(ei));
vty_out(vty, "%-11u", ei->params.bandwidth);
vty_out(vty, "%-11u", ei->params.delay);
vty_out(vty, "%-7u", ei->nbrs->count);
@@ -250,7 +205,7 @@ void show_ip_eigrp_neighbor_sub(struct vty *vty, struct eigrp_neighbor *nbr,
{
vty_out(vty, "%-3u %-17s %-21s", 0, eigrp_neigh_ip_string(nbr),
- eigrp_if_name_string(nbr->ei));
+ IF_NAME(nbr->ei));
if (nbr->t_holddown)
vty_out(vty, "%-7lu",
thread_timer_remain_second(nbr->t_holddown));
@@ -313,11 +268,11 @@ void show_ip_eigrp_nexthop_entry(struct vty *vty, struct eigrp *eigrp,
if (te->adv_router == eigrp->neighbor_self)
vty_out(vty, "%-7s%s, %s\n", " ", "via Connected",
- eigrp_if_name_string(te->ei));
+ IF_NAME(te->ei));
else {
vty_out(vty, "%-7s%s%s (%u/%u), %s\n", " ", "via ",
inet_ntoa(te->adv_router->src), te->distance,
- te->reported_distance, eigrp_if_name_string(te->ei));
+ te->reported_distance, IF_NAME(te->ei));
}
}
diff --git a/eigrpd/eigrp_dump.h b/eigrpd/eigrp_dump.h
index 34b55ab419..f141f3cbc6 100644
--- a/eigrpd/eigrp_dump.h
+++ b/eigrpd/eigrp_dump.h
@@ -138,9 +138,21 @@ extern unsigned long term_debug_eigrp_zebra;
/* Prototypes. */
extern const char *eigrp_if_name_string(struct eigrp_interface *);
-extern const char *eigrp_if_ip_string(struct eigrp_interface *);
-extern const char *eigrp_neigh_ip_string(struct eigrp_neighbor *);
-extern const char *eigrp_topology_ip_string(struct eigrp_prefix_entry *);
+static inline const char
+*eigrp_topology_ip_string(struct eigrp_prefix_entry *tn)
+{
+ return inet_ntoa(tn->destination->u.prefix4);
+}
+
+static inline const char *eigrp_if_ip_string(struct eigrp_interface *ei)
+{
+ return ei ? inet_ntoa(ei->address.u.prefix4) : "inactive";
+}
+
+static inline const char *eigrp_neigh_ip_string(struct eigrp_neighbor *nbr)
+{
+ return inet_ntoa(nbr->src);
+}
extern void eigrp_ip_header_dump(struct ip *);
extern void eigrp_header_dump(struct eigrp_header *);