From 64ebe51b43be034d3b4b7b7aa347db01efce35e4 Mon Sep 17 00:00:00 2001 From: Jiri Date: Fri, 9 Dec 2011 10:28:04 +0100 Subject: [PATCH] fixed few crashes in bodhi plugin --- 0009-bodhi-sync-enum-with-parse_opt.patch | 40 +++++++++++++++++++ ...-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(-) create mode 100644 0009-bodhi-sync-enum-with-parse_opt.patch create mode 100644 0010-inicializing-rpm-more-then-once-leads-to-sigsegv-in-.patch create mode 100644 0011-url-takes-escaped-string.patch 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 +Date: Thu, 8 Dec 2011 16:53:40 +0100 +Subject: [PATCH 09/11] bodhi: sync enum with parse_opt + +Signed-off-by: Nikola Pajkovsky +--- + 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 +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 +--- + 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 +Date: Thu, 8 Dec 2011 17:35:37 +0100 +Subject: [PATCH 11/11] url takes escaped string + +Signed-off-by: Nikola Pajkovsky +--- + 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 2.0.8-3 +- fixed few crashes in bodhi plugin + * Thu Dec 08 2011 Jiri Moskovcak 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 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 2.0.5-9