diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2016-02-22 23:39:49 +0000 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2016-02-22 23:39:49 +0000 |
commit | 4394fa14de48cf7000cd89d87f1b7829616ee7df (patch) | |
tree | 859f59cb1982d0cee6d78df48482872d33504d53 /src/rspamadm | |
parent | 2b0e6f4d0e0582006c172867df93121755201e66 (diff) | |
download | rspamd-4394fa14de48cf7000cd89d87f1b7829616ee7df.tar.gz rspamd-4394fa14de48cf7000cd89d87f1b7829616ee7df.zip |
Fix some more issues found by coverity
Diffstat (limited to 'src/rspamadm')
-rw-r--r-- | src/rspamadm/configdump.c | 1 | ||||
-rw-r--r-- | src/rspamadm/signtool.c | 6 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/rspamadm/configdump.c b/src/rspamadm/configdump.c index b48009466..e7d51b442 100644 --- a/src/rspamadm/configdump.c +++ b/src/rspamadm/configdump.c @@ -104,6 +104,7 @@ rspamadm_add_doc_elt (const ucl_object_t *obj, const ucl_object_t *doc_obj, if (ucl_object_lookup_len (comment_obj, (const char *)&obj, sizeof (void *))) { + rspamd_fstring_free (comment); /* Do not rewrite the existing comment */ return; } diff --git a/src/rspamadm/signtool.c b/src/rspamadm/signtool.c index 998698622..ca426de6c 100644 --- a/src/rspamadm/signtool.c +++ b/src/rspamadm/signtool.c @@ -136,7 +136,9 @@ rspamadm_edit_file (const gchar *fname) rspamd_snprintf (tmppath, sizeof (tmppath), "%s/rspamd_sign-XXXXXXXXXX", tmpdir); + mode_t cur_umask = umask (S_IRWXO|S_IRWXG); fd_out = mkstemp (tmppath); + (void)umask (cur_umask); if (fd_out == -1) { rspamd_fprintf (stderr, "cannot open tempfile %s: %s\n", tmppath, @@ -213,7 +215,6 @@ rspamadm_edit_file (const gchar *fname) rspamd_fprintf (stderr, "cannot map %s: %s\n", tmppath, strerror (errno)); unlink (tmppath); - close (fd_out); exit (errno); } @@ -225,6 +226,7 @@ rspamadm_edit_file (const gchar *fname) rspamd_fprintf (stderr, "cannot open new file %s: %s\n", run_cmdline, strerror (errno)); unlink (tmppath); + munmap (map, len); exit (errno); } @@ -234,11 +236,13 @@ rspamadm_edit_file (const gchar *fname) unlink (tmppath); unlink (run_cmdline); close (fd_out); + munmap (map, len); exit (errno); } unlink (tmppath); (void)lseek (fd_out, 0, SEEK_SET); + munmap (map, len); return fd_out; } |