Blame SOURCES/stunnel-5.48-coverity.patch

13be78
diff -up stunnel-5.48/src/file.c.coverity stunnel-5.48/src/file.c
13be78
--- stunnel-5.48/src/file.c.coverity	2018-04-06 16:25:10.000000000 +0200
13be78
+++ stunnel-5.48/src/file.c	2018-09-04 17:24:08.948928882 +0200
13be78
@@ -120,7 +120,7 @@ DISK_FILE *file_open(char *name, FILE_MO
13be78
         return NULL;
13be78
 
13be78
     /* setup df structure */
13be78
-    df=str_alloc(sizeof df);
13be78
+    df=str_alloc(sizeof *df);
13be78
     df->fd=fd;
13be78
     return df;
13be78
 }
13be78
diff -up stunnel-5.48/src/options.c.coverity stunnel-5.48/src/options.c
13be78
--- stunnel-5.48/src/options.c.coverity	2018-09-04 17:24:08.946928836 +0200
13be78
+++ stunnel-5.48/src/options.c	2018-09-04 18:47:03.135083884 +0200
13be78
@@ -515,8 +515,7 @@ NOEXPORT int options_include(char *direc
13be78
                 "%s/%s",
13be78
 #endif
13be78
                 directory, namelist[i]->d_name);
13be78
-            stat(name, &sb);
13be78
-            if(S_ISREG(sb.st_mode))
13be78
+            if(stat(name, &sb) == 0 && S_ISREG(sb.st_mode))
13be78
                 err=options_file(name, CONF_FILE, section);
13be78
             else
13be78
                 s_log(LOG_DEBUG, "\"%s\" is not a file", name);
13be78
@@ -3773,6 +3772,7 @@ NOEXPORT PSK_KEYS *psk_dup(PSK_KEYS *src
13be78
         else
13be78
             head=curr;
13be78
         tail=curr;
13be78
+        src=src->next;
13be78
     }
13be78
     return head;
13be78
 }
13be78
diff -up stunnel-5.48/src/str.c.coverity stunnel-5.48/src/str.c
13be78
--- stunnel-5.48/src/str.c.coverity	2018-07-02 23:30:10.000000000 +0200
13be78
+++ stunnel-5.48/src/str.c	2018-09-04 17:24:08.949928906 +0200
13be78
@@ -165,6 +165,7 @@ char *str_vprintf(const char *format, va
13be78
     for(;;) {
13be78
         va_copy(ap, start_ap);
13be78
         n=vsnprintf(p, size, format, ap);
13be78
+        va_end(ap);
13be78
         if(n>-1 && n<(int)size)
13be78
             return p;
13be78
         if(n>-1)                /* glibc 2.1 */
13be78
diff -up stunnel-5.48/src/stunnel.c.coverity stunnel-5.48/src/stunnel.c
13be78
--- stunnel-5.48/src/stunnel.c.coverity	2018-07-02 23:30:10.000000000 +0200
13be78
+++ stunnel-5.48/src/stunnel.c	2018-09-04 17:24:08.949928906 +0200
13be78
@@ -364,7 +364,6 @@ NOEXPORT int accept_connection(SERVICE_O
13be78
 #endif
13be78
     if(create_client(fd, s, alloc_client_session(opt, s, s))) {
13be78
         s_log(LOG_ERR, "Connection rejected: create_client failed");
13be78
-        closesocket(s);
13be78
 #ifndef USE_FORK
13be78
         service_free(opt);
13be78
 #endif