[libreport] fixed few crashes in bodhi plugin

Jiří Moskovčák jmoskovc at fedoraproject.org
Fri Dec 9 09:42:37 UTC 2011


commit 64ebe51b43be034d3b4b7b7aa347db01efce35e4
Author: Jiri <moskovcak at gmail.com>
Date:   Fri Dec 9 10:28:04 2011 +0100

    fixed few crashes in bodhi plugin

 0009-bodhi-sync-enum-with-parse_opt.patch          |   40 ++++++++++++++++++++
 ...g-rpm-more-then-once-leads-to-sigsegv-in-.patch |   29 ++++++++++++++
 0011-url-takes-escaped-string.patch                |   30 +++++++++++++++
 libreport.spec                                     |   13 +++++-
 4 files changed, 110 insertions(+), 2 deletions(-)
---
diff --git a/0009-bodhi-sync-enum-with-parse_opt.patch b/0009-bodhi-sync-enum-with-parse_opt.patch
new file mode 100644
index 0000000..9394f95
--- /dev/null
+++ b/0009-bodhi-sync-enum-with-parse_opt.patch
@@ -0,0 +1,40 @@
+From ba84c2b51b2c14a5a97a575b9019d0057bf88782 Mon Sep 17 00:00:00 2001
+From: Nikola Pajkovsky <npajkovs at redhat.com>
+Date: Thu, 8 Dec 2011 16:53:40 +0100
+Subject: [PATCH 09/11] bodhi: sync enum with parse_opt
+
+Signed-off-by: Nikola Pajkovsky <npajkovs at redhat.com>
+---
+ src/plugins/abrt-bodhi.c |    9 ++++++---
+ 1 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/src/plugins/abrt-bodhi.c b/src/plugins/abrt-bodhi.c
+index a2c1445..5416a0a 100644
+--- a/src/plugins/abrt-bodhi.c
++++ b/src/plugins/abrt-bodhi.c
+@@ -110,7 +110,7 @@
+ }
+ */
+ 
+-static const char *bodhi_url = "https://admin.fedoraproject.org/updates/";
++static const char *bodhi_url = "https://admin.fedoraproject.org/updates";
+ 
+ struct bodhi {
+     char *nvr;
+@@ -356,8 +356,11 @@ int main(int argc, char **argv)
+     abrt_init(argv);
+     enum {
+         OPT_v = 1 << 0,
+-        OPT_b = 1 << 1,
+-        OPT_r = 1 << 2,
++        OPT_d = 1 << 1,
++        OPT_g = 1 << 2,
++        OPT_b = 1 << 3,
++        OPT_u = 1 << 4,
++        OPT_r = 1 << 5,
+     };
+ 
+     const char *bugs = NULL, *release = NULL, *dump_dir_path = ".";
+-- 
+1.7.7.3
+
diff --git a/0010-inicializing-rpm-more-then-once-leads-to-sigsegv-in-.patch b/0010-inicializing-rpm-more-then-once-leads-to-sigsegv-in-.patch
new file mode 100644
index 0000000..45b78a0
--- /dev/null
+++ b/0010-inicializing-rpm-more-then-once-leads-to-sigsegv-in-.patch
@@ -0,0 +1,29 @@
+From 0580662e90789a45f657b017fd0ae621d8ea4f6a Mon Sep 17 00:00:00 2001
+From: Nikola Pajkovsky <npajkovs at redhat.com>
+Date: Thu, 8 Dec 2011 17:15:02 +0100
+Subject: [PATCH 10/11] inicializing rpm more then once leads to sigsegv in
+ rpmReadConfigFiles
+
+Signed-off-by: Nikola Pajkovsky <npajkovs at redhat.com>
+---
+ src/plugins/abrt-bodhi.c |    4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git a/src/plugins/abrt-bodhi.c b/src/plugins/abrt-bodhi.c
+index 5416a0a..11c6d02 100644
+--- a/src/plugins/abrt-bodhi.c
++++ b/src/plugins/abrt-bodhi.c
+@@ -348,6 +348,10 @@ error:
+     rpmdbFreeIterator(iter);
+     rpmtsFree(ts);
+ 
++    rpmFreeRpmrc();
++    rpmFreeCrypto();
++    rpmFreeMacros(NULL);
++
+     return nvr;
+ }
+ 
+-- 
+1.7.7.3
+
diff --git a/0011-url-takes-escaped-string.patch b/0011-url-takes-escaped-string.patch
new file mode 100644
index 0000000..e4e5e1f
--- /dev/null
+++ b/0011-url-takes-escaped-string.patch
@@ -0,0 +1,30 @@
+From 02ab44ad63b5d6261bdedc12cad4022333018316 Mon Sep 17 00:00:00 2001
+From: Nikola Pajkovsky <npajkovs at redhat.com>
+Date: Thu, 8 Dec 2011 17:35:37 +0100
+Subject: [PATCH 11/11] url takes escaped string
+
+Signed-off-by: Nikola Pajkovsky <npajkovs at redhat.com>
+---
+ src/plugins/abrt-bodhi.c |    6 +++++-
+ 1 files changed, 5 insertions(+), 1 deletions(-)
+
+diff --git a/src/plugins/abrt-bodhi.c b/src/plugins/abrt-bodhi.c
+index 11c6d02..43a3b42 100644
+--- a/src/plugins/abrt-bodhi.c
++++ b/src/plugins/abrt-bodhi.c
+@@ -421,7 +421,11 @@ int main(int argc, char **argv)
+     }
+ 
+     if (argv[optind])
+-        query = strbuf_append_strf(query, "package=%s&", argv[optind]);
++    {
++        char *escaped = g_uri_escape_string(argv[optind], NULL, 0);
++        query = strbuf_append_strf(query, "package=%s&", escaped);
++        free(escaped);
++    }
+ 
+     if (query->buf[query->len - 1] == '&')
+         query->buf[query->len - 1] = '\0';
+-- 
+1.7.7.3
+
diff --git a/libreport.spec b/libreport.spec
index 0897eac..faa21e4 100644
--- a/libreport.spec
+++ b/libreport.spec
@@ -5,7 +5,7 @@
 Summary: Generic library for reporting various problems
 Name: libreport
 Version: 2.0.8
-Release: 2%{?dist}
+Release: 3%{?dist}
 License: GPLv2+
 Group: System Environment/Libraries
 URL: https://fedorahosted.org/abrt/
@@ -16,6 +16,9 @@ Patch2: 0003-search-only-by-duphash-for-selinux.patch
 Patch3: 0004-reorganize-comments-for-bugzilla-message-body-comes-.patch
 Patch4: 0005-do-not-insert-duplicate-comment-to-bugzilla.patch
 Patch5: 0006-if-OSRelease-environ-is-empty-load-OSRelease-from-pr.patch
+Patch6: 0009-bodhi-sync-enum-with-parse_opt.patch
+Patch7: 0010-inicializing-rpm-more-then-once-leads-to-sigsegv-in-.patch
+Patch8: 0011-url-takes-escaped-string.patch
 BuildRequires: dbus-devel
 BuildRequires: gtk2-devel
 BuildRequires: curl-devel
@@ -222,6 +225,9 @@ Plugin to report bugs into anonymous FTP site associated with ticketing system.
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
 
 %build
 autoconf
@@ -384,6 +390,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
 %config(noreplace) %{_sysconfdir}/libreport/events.d/uploader_event.conf
 
 %changelog
+* Fri Dec 09 2011 Jiri Moskovcak <jmoskovc at redhat.com> 2.0.8-3
+- fixed few crashes in bodhi plugin
+
 * Thu Dec 08 2011 Jiri Moskovcak <jmoskovc at redhat.com> 2.0.8-2
 - fixed crash in bodhi plugin
 - re-upload better backtrace if available
@@ -431,7 +440,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
 
 * Mon Sep 26 2011 Jiri Moskovcak <jmoskovc at redhat.com> 2.0.5.982-1
 - re-fix rhbz#730887
-- re-ffixed prgname (nice icons in gnome3) rhbz#741231
+- re-fixed prgname (nice icons in gnome3) rhbz#741231
 - Resolves: #741231 #730887
 
 * Thu Sep 22 2011 Jiri Moskovcak <jmoskovc at redhat.com> 2.0.5-9


More information about the scm-commits mailing list