From d96b0798c1db27c4b0356f15cb769931b5960cc2 Mon Sep 17 00:00:00 2001 From: Andreas Schultz Date: Tue, 30 Dec 2014 15:28:54 +0100 Subject: [PATCH] fix wtp_addr_compare corretly handle the return of the SOCK_ADDR_CMP macro --- src/capwap-mitm.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/capwap-mitm.c b/src/capwap-mitm.c index 4d4cedb..6644675 100644 --- a/src/capwap-mitm.c +++ b/src/capwap-mitm.c @@ -156,13 +156,13 @@ static int wtp_addr_compare(struct wtp *a, struct wtp *b) switch (a->addr.ss_family) { case AF_INET: - if (SOCK_ADDR_CMP(&a->addr, &b->addr, sockaddr_in, sin_addr) != 0) - return 0; + if ((r = SOCK_ADDR_CMP(&a->addr, &b->addr, sockaddr_in, sin_addr)) != 0) + return r; return SOCK_PORT_CMP(&a->addr, &b->addr, sockaddr_in, sin_port); case AF_INET6: - if (SOCK_ADDR_CMP(&a->addr, &b->addr, sockaddr_in6, sin6_addr) != 0) - return 0; + if ((r = SOCK_ADDR_CMP(&a->addr, &b->addr, sockaddr_in6, sin6_addr)) != 0) + return r; return SOCK_PORT_CMP(&a->addr, &b->addr, sockaddr_in6, sin6_port); }