Stats: prometheus export coverity errors. 74/15174/4
authorOle Troan <ot@cisco.com>
Mon, 8 Oct 2018 07:16:44 +0000 (09:16 +0200)
committerChris Luke <chris_luke@comcast.com>
Mon, 8 Oct 2018 12:27:24 +0000 (12:27 +0000)
Change-Id: Ibc0a25dcf7d734215e0cffe789b5726f23e1c3d7
Signed-off-by: Ole Troan <ot@cisco.com>
src/vpp/app/vpp_prometheus_export.c

index 8d09bc2..b12ce6f 100644 (file)
@@ -188,6 +188,7 @@ start_listen (u16 port)
   if (listenfd == -1)
     {
       perror ("Failed opening socket");
+      return -1;
     }
 
   int rv =
@@ -195,6 +196,8 @@ start_listen (u16 port)
   if (rv < 0)
     {
       perror ("Failed setsockopt");
+      close (listenfd);
+      return -1;
     }
 
   memset (&serveraddr, 0, sizeof (serveraddr));
@@ -205,11 +208,13 @@ start_listen (u16 port)
   if (bind (listenfd, (struct sockaddr *) &serveraddr, addrlen) < 0)
     {
       fprintf (stderr, "bind() error %s\n", strerror (errno));
+      close (listenfd);
       return -1;
     }
   if (listen (listenfd, 1000000) != 0)
     {
       fprintf (stderr, "listen() error for %s\n", strerror (errno));
+      close (listenfd);
       return -1;
     }
   return listenfd;
@@ -312,6 +317,7 @@ main (int argc, char **argv)
     }
 
   stat_segment_disconnect ();
+  close (fd);
 
   exit (0);
 }