summaryrefslogtreecommitdiff
path: root/ripd/rip_peer.c
diff options
context:
space:
mode:
Diffstat (limited to 'ripd/rip_peer.c')
-rw-r--r--ripd/rip_peer.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/ripd/rip_peer.c b/ripd/rip_peer.c
index ae62835a74..21317915d4 100644
--- a/ripd/rip_peer.c
+++ b/ripd/rip_peer.c
@@ -172,7 +172,10 @@ void rip_peer_display(struct vty *vty)
static int rip_peer_list_cmp(struct rip_peer *p1, struct rip_peer *p2)
{
- return htonl(p1->addr.s_addr) > htonl(p2->addr.s_addr);
+ if (p2->addr.s_addr == p1->addr.s_addr)
+ return 0;
+
+ return (htonl(p1->addr.s_addr) < htonl(p2->addr.s_addr)) ? -1 : 1;
}
void rip_peer_init(void)