Check inet_pton return value
authorHenning Rogge <henning.rogge@fkie.fraunhofer.de>
Mon, 22 Oct 2012 13:08:56 +0000 (15:08 +0200)
committerHenning Rogge <henning.rogge@fkie.fraunhofer.de>
Mon, 22 Oct 2012 13:08:56 +0000 (15:08 +0200)
    Coverity:

    CID 739622 (#1 of 1): Unchecked return value (CHECKED_RETURN)
    At (8): Calling function "inet_pton(int, char const * restrict, void * restrict)" without checking return value (as is done elsewhere 22 out of 25 times).

Signed-off-by: Henning Rogge <henning.rogge@fkie.fraunhofer.de>
src/linux/net.c

index 82653aa..ce8eb8f 100644 (file)
@@ -642,7 +642,9 @@ get_ipv6_address(char *ifname, struct sockaddr_in6 *saddr6, struct olsr_ip_prefi
         OLSR_PRINTF(5, "\tinet6 addr: %s\n", addr6);
         OLSR_PRINTF(5, "\tScope: %d\n", scope);
 
-        inet_pton(AF_INET6, addr6, &tmp_ip.v6);
+        if (inet_pton(AF_INET6, addr6, &tmp_ip.v6)) {
+          continue;
+        }
 
         isNetWide = (scope != IPV6_ADDR_LOOPBACK) && (scope != IPV6_ADDR_LINKLOCAL) && (scope != IPV6_ADDR_SITELOCAL);