[dspam/epel7] fix for bug #1193177

Nathanael Noblet gnat at fedoraproject.org
Fri Feb 20 05:58:08 UTC 2015


commit 5c59161ddb065986a94a97e6d2275e6cc86718a5
Author: Nathanael d. Noblet <nathanael at noblet.ca>
Date:   Thu Feb 19 22:58:04 2015 -0700

    fix for bug #1193177

 dspam-sqlite3_drv.patch | 51 +++++++++++++++++++++++++++++++++++++++++++++++++
 dspam.spec              |  7 ++++++-
 2 files changed, 57 insertions(+), 1 deletion(-)
---
diff --git a/dspam-sqlite3_drv.patch b/dspam-sqlite3_drv.patch
new file mode 100644
index 0000000..95b6264
--- /dev/null
+++ b/dspam-sqlite3_drv.patch
@@ -0,0 +1,51 @@
+diff -up ./src/sqlite3_drv.c.sdg ./src/sqlite3_drv.c
+--- ./src/sqlite3_drv.c.sdg	2015-02-16 12:18:49.000000000 -0500
++++ ./src/sqlite3_drv.c	2015-02-16 13:28:52.000000000 -0500
+@@ -435,6 +435,13 @@ _ds_setall_spamrecords (DSPAM_CTX * CTX,
+     return EUNKNOWN;
+   }
+ 
++  if ((sqlite3_exec(s->dbh, "BEGIN", NULL, NULL, NULL)) != SQLITE_OK)
++  {
++    buffer_destroy (query);
++    LOGDEBUG ("_ds_setall_spamrecords: BEGIN transaction failed");
++    return EINVAL;
++  }
++
+   ds_diction_getstat(diction, s->control_token, &control);
+ 
+   snprintf (queryhead, sizeof (queryhead),
+@@ -521,6 +528,7 @@ _ds_setall_spamrecords (DSPAM_CTX * CTX,
+           LOGDEBUG ("_ds_setall_spamrecords: unable to run query: %s", query->data);
+           ds_diction_close(ds_c);
+           buffer_destroy(query);
++	  sqlite3_exec(s->dbh, "ROLLBACK", NULL, NULL, NULL);
+           return EFAILURE;
+         }
+       }
+@@ -552,11 +560,17 @@ _ds_setall_spamrecords (DSPAM_CTX * CTX,
+       _sqlite_drv_query_error (err, query->data);
+       LOGDEBUG ("_ds_setall_spamrecords: unable to run query: %s", query->data);
+       buffer_destroy(query);
++      sqlite3_exec(s->dbh, "ROLLBACK", NULL, NULL, NULL);
+       return EFAILURE;
+     }
+   }
+ 
+   buffer_destroy (query);
++  if ((sqlite3_exec(s->dbh, "COMMIT", NULL, NULL, NULL)) != SQLITE_OK)
++  {
++    LOGDEBUG ("_ds_setall_spamrecords: COMMIT transaction failed");
++    return EINVAL;
++  }
+   return 0;
+ }
+ 
+@@ -1336,7 +1350,7 @@ _sqlite_drv_query_error (const char *err
+     fclose (file);
+   }
+ 
+-  free((char *)error);
++  sqlite3_free((char *)error);
+   return;
+ }
diff --git a/dspam.spec b/dspam.spec
index e6e90ee..044909f 100644
--- a/dspam.spec
+++ b/dspam.spec
@@ -12,7 +12,7 @@
 Summary:                A library and Mail Delivery Agent for Bayesian SPAM filtering
 Name:                   dspam
 Version:                3.10.2
-Release:                9%{?dist}
+Release:                10%{?dist}
 License:                GPLv2
 Group:                  System Environment/Daemons
 Source0:                http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
@@ -28,6 +28,7 @@ Patch2:                 dspam-3.9.0-dspamsock.patch
 Patch3:                 dspam-default-server-port.patch
 Patch4:                 dspam-3.10.2.exim.patch
 Patch5:                 dspam-recipient-corruption.patch
+Patch7:                 dspam-sqlite3_drv.patch
 
 URL:                    http://www.nuclearelephant.com/
 # kept to be able to build EPEL versions
@@ -142,6 +143,7 @@ Web-based interface for DSPAM's powerful Anti-Spam engine.
 %patch3 -p0
 %patch4 -p0
 %patch5 -p1
+%patch7 -p1
 
 %build
 
@@ -371,6 +373,9 @@ exit 0
 %config(noreplace) %{_sysconfdir}/httpd/conf.d/dspam-web.conf
 
 %changelog
+* Thu Feb 19 2015 Nathanael Noblet <nathanael at gnat.ca> - 3.10.2-10
+- Fix for bug #1193177
+
 * Thu May 23 2013 Nathanael Noblet <nathanael at gnat.ca> - 3.10.2-9
 - Patch for recipient corruption bug
 


More information about the scm-commits mailing list