Update to 2.14.0

This commit is contained in:
Ernestas Kulik 2020-02-07 08:45:18 +01:00
commit c84c5d2738
10 changed files with 7 additions and 761 deletions

1
.gitignore vendored
View file

@ -68,3 +68,4 @@ abrt-1.1.13.tar.gz
/abrt-2.12.1.tar.gz
/abrt-2.12.2.tar.gz
/abrt-2.13.0.tar.gz
/abrt-2.14.0.tar.gz

View file

@ -1,70 +0,0 @@
From 3f5003af92d2b2b0e4f5565ccd90b29e32e6b30b Mon Sep 17 00:00:00 2001
From: Ernestas Kulik <ekulik@redhat.com>
Date: Thu, 16 Jan 2020 10:53:47 +0100
Subject: [PATCH] Stop using parse_list
It will be gone from libreport before you know it.
---
src/daemon/abrt-action-save-package-data.c | 12 ++++++------
src/plugins/abrt-dump-journal-xorg.c | 2 +-
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/src/daemon/abrt-action-save-package-data.c b/src/daemon/abrt-action-save-package-data.c
index e52b3d55..30e8fd73 100644
--- a/src/daemon/abrt-action-save-package-data.c
+++ b/src/daemon/abrt-action-save-package-data.c
@@ -49,20 +49,20 @@ static void ParseCommon(map_string_t *settings, const char *conf_filename)
value = get_map_string_item_or_NULL(settings, "BlackList");
if (value)
{
- settings_setBlackListedPkgs = parse_list(value);
+ settings_setBlackListedPkgs = parse_delimited_list(value, ",");
remove_map_string_item(settings, "BlackList");
}
else
- settings_setBlackListedPkgs = parse_list(DEFAULT_BLACKLISTED_PKGS);
+ settings_setBlackListedPkgs = parse_delimited_list(DEFAULT_BLACKLISTED_PKGS, ",");
value = get_map_string_item_or_NULL(settings, "BlackListedPaths");
if (value)
{
- settings_setBlackListedPaths = parse_list(value);
+ settings_setBlackListedPaths = parse_delimited_list(value, ",");
remove_map_string_item(settings, "BlackListedPaths");
}
else
- settings_setBlackListedPaths = parse_list(DEFAULT_BLACKLISTED_PATHS);
+ settings_setBlackListedPaths = parse_delimited_list(DEFAULT_BLACKLISTED_PATHS, ",");
value = get_map_string_item_or_NULL(settings, "ProcessUnpackaged");
if (value)
@@ -74,11 +74,11 @@ static void ParseCommon(map_string_t *settings, const char *conf_filename)
value = get_map_string_item_or_NULL(settings, "Interpreters");
if (value)
{
- settings_Interpreters = parse_list(value);
+ settings_Interpreters = parse_delimited_list(value, ",");
remove_map_string_item(settings, "Interpreters");
}
else
- settings_Interpreters = parse_list(DEFAULT_INTERPRETERS);
+ settings_Interpreters = parse_delimited_list(DEFAULT_INTERPRETERS, ",");
map_string_iter_t iter;
const char *name;
diff --git a/src/plugins/abrt-dump-journal-xorg.c b/src/plugins/abrt-dump-journal-xorg.c
index 92d19661..351bbae4 100644
--- a/src/plugins/abrt-dump-journal-xorg.c
+++ b/src/plugins/abrt-dump-journal-xorg.c
@@ -261,7 +261,7 @@ int main(int argc, char *argv[])
conf_journal_filters = XORG_DEFAULT_JOURNAL_FILTERS;
}
- xorg_journal_filter = parse_list(conf_journal_filters);
+ xorg_journal_filter = parse_delimited_list(conf_journal_filters, ",");
/* list data will be free by g_list_free_full */
free_filter_list_data = true;
free_map_string(settings);
--
2.25.0

View file

@ -1,168 +0,0 @@
From 16468b57579997971c056687ecc8438a406d57c2 Mon Sep 17 00:00:00 2001
From: Ernestas Kulik <ekulik@redhat.com>
Date: Tue, 14 Jan 2020 16:36:21 +0100
Subject: [PATCH] Use GChecksum to compute checksums
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
d605ffeaa6ae411ef396160ffd67b7a6fd27c6ba in libreport removed some
convenience API for hashing data, so lets just go with what GLib has in
store.
---
src/dbus/abrt_problems2_service.c | 33 +++++++++++----------
src/plugins/abrt-action-analyze-backtrace.c | 8 +++--
src/plugins/abrt-action-analyze-c.c | 7 +++--
src/plugins/abrt-action-analyze-python.c | 9 +++---
4 files changed, 32 insertions(+), 25 deletions(-)
diff --git a/src/dbus/abrt_problems2_service.c b/src/dbus/abrt_problems2_service.c
index 2511136f..a0d2a3ce 100644
--- a/src/dbus/abrt_problems2_service.c
+++ b/src/dbus/abrt_problems2_service.c
@@ -572,9 +572,11 @@ static AbrtP2Object *session_object_register(AbrtP2Service *service,
static char *session_object_caller_to_path(const char *caller)
{
- char hash_str[SHA1_RESULT_LEN*2 + 1];
- str_to_sha1str(hash_str, caller);
- return xasprintf(ABRT_P2_PATH"/Session/%s", hash_str);
+ g_autofree char *checksum = NULL;
+
+ checksum = g_compute_checksum_for_string(G_CHECKSUM_SHA1, caller, -1);
+
+ return xasprintf(ABRT_P2_PATH"/Session/%s", checksum);
}
static AbrtP2Object *abrt_p2_service_get_session_for_caller(
@@ -1323,9 +1325,11 @@ static void entry_object_destructor(AbrtP2Object *obj)
static char *entry_object_dir_name_to_path(const char *dd_dirname)
{
- char hash_str[SHA1_RESULT_LEN*2 + 1];
- str_to_sha1str(hash_str, dd_dirname);
- return xasprintf(ABRT_P2_PATH"/Entry/%s", hash_str);
+ g_autofree char *checksum = NULL;
+
+ checksum = g_compute_checksum_for_string(G_CHECKSUM_SHA1, dd_dirname, -1);
+
+ return xasprintf(ABRT_P2_PATH"/Entry/%s", checksum);
}
static AbrtP2Object *entry_object_register_dump_dir(AbrtP2Service *service,
@@ -1480,8 +1484,10 @@ char *abrt_p2_service_save_problem( AbrtP2Service *service,
else
{
/* start hash */
- sha1_ctx_t sha1ctx;
- sha1_begin(&sha1ctx);
+ g_autoptr(GChecksum) checksum = NULL;
+ const char *digest;
+
+ checksum = g_checksum_new(G_CHECKSUM_SHA1);
/*
* To avoid spurious hash differences, sort keys so that elements are
@@ -1500,19 +1506,16 @@ char *abrt_p2_service_save_problem( AbrtP2Service *service,
gsize size = 0;
const char *content = g_variant_get_string(element, &size);
- sha1_hash(&sha1ctx, content, size);
+
+ g_checksum_update(checksum, (const unsigned char *)content, size);
g_variant_unref(element);
}
g_list_free_full(list, free);
- /* end hash */
- char hash_bytes[SHA1_RESULT_LEN];
- sha1_end(&sha1ctx, hash_bytes);
- char hash_str[SHA1_RESULT_LEN*2 + 1];
- bin2hex(hash_str, hash_bytes, SHA1_RESULT_LEN)[0] = '\0';
+ digest = g_checksum_get_string(checksum);
- g_variant_dict_insert(&pd, FILENAME_UUID, "s", hash_str);
+ g_variant_dict_insert(&pd, FILENAME_UUID, "s", digest);
}
}
diff --git a/src/plugins/abrt-action-analyze-backtrace.c b/src/plugins/abrt-action-analyze-backtrace.c
index 622d7953..20e71945 100644
--- a/src/plugins/abrt-action-analyze-backtrace.c
+++ b/src/plugins/abrt-action-analyze-backtrace.c
@@ -82,6 +82,8 @@ int main(int argc, char **argv)
/* Store backtrace hash */
if (!backtrace)
{
+ g_autofree char *checksum = NULL;
+
/*
* The parser failed. Compute the duphash from the executable
* instead of a backtrace.
@@ -98,10 +100,10 @@ int main(int argc, char **argv)
strbuf_prepend_str(emptybt, component);
log_debug("Generating duphash: %s", emptybt->buf);
- char hash_str[SHA1_RESULT_LEN*2 + 1];
- str_to_sha1str(hash_str, emptybt->buf);
- dd_save_text(dd, FILENAME_DUPHASH, hash_str);
+ checksum = g_compute_checksum_for_string(G_CHECKSUM_SHA1, emptybt->buf, -1);
+
+ dd_save_text(dd, FILENAME_DUPHASH, checksum);
/*
* Other parts of ABRT assume that if no rating is available,
* it is ok to allow reporting of the bug. To be sure no bad
diff --git a/src/plugins/abrt-action-analyze-c.c b/src/plugins/abrt-action-analyze-c.c
index 08e48779..4a6d34d4 100644
--- a/src/plugins/abrt-action-analyze-c.c
+++ b/src/plugins/abrt-action-analyze-c.c
@@ -235,10 +235,11 @@ int main(int argc, char **argv)
log_debug("String to hash: %s", string_to_hash);
- char hash_str[SHA1_RESULT_LEN*2 + 1];
- str_to_sha1str(hash_str, string_to_hash);
+ g_autofree char *checksum = NULL;
- dd_save_text(dd, FILENAME_UUID, hash_str);
+ checksum = g_compute_checksum_for_string(G_CHECKSUM_SHA1, string_to_hash, -1);
+
+ dd_save_text(dd, FILENAME_UUID, checksum);
/* Create crash_function element from core_backtrace */
char *core_backtrace_json = dd_load_text_ext(dd, FILENAME_CORE_BACKTRACE,
diff --git a/src/plugins/abrt-action-analyze-python.c b/src/plugins/abrt-action-analyze-python.c
index 0dd55750..10589cbb 100644
--- a/src/plugins/abrt-action-analyze-python.c
+++ b/src/plugins/abrt-action-analyze-python.c
@@ -26,6 +26,8 @@
int main(int argc, char **argv)
{
+ g_autofree char *checksum = NULL;
+
/* I18n */
setlocale(LC_ALL, "");
#if ENABLE_NLS
@@ -91,13 +93,12 @@ int main(int argc, char **argv)
char *bt_end = strchrnul(bt, '\n');
*bt_end = '\0';
- char hash_str[SHA1_RESULT_LEN*2 + 1];
- str_to_sha1str(hash_str, bt);
+ checksum = g_compute_checksum_for_string(G_CHECKSUM_SHA1, bt, -1);
free(bt);
- dd_save_text(dd, FILENAME_UUID, hash_str);
- dd_save_text(dd, FILENAME_DUPHASH, hash_str);
+ dd_save_text(dd, FILENAME_UUID, checksum);
+ dd_save_text(dd, FILENAME_DUPHASH, checksum);
dd_close(dd);
return 0;
--
2.25.0

View file

@ -1,187 +0,0 @@
From 5284fd63f1d2d9da09fd1793e49ab734557ea046 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mat=C4=9Bj=20Grabovsk=C3=BD?= <mgrabovs@redhat.com>
Date: Thu, 23 Jan 2020 13:47:50 +0100
Subject: [PATCH] koops: Avoid explicit dependency on hash size
Change the API so that koops_hash_str and koops_hash_str_ext return the
heap-allocated encoded digest instead of taking a pointer and returning
a status code.
This eliminates the need to know the size of the resulting hash in
advance, which should solve the build problems following recent
libreport changes.
---
src/include/libabrt.h | 4 +--
src/lib/kernel.c | 39 +++++++++-----------------
src/plugins/abrt-action-analyze-oops.c | 11 ++++----
tests/koops-parser.at | 14 ++++-----
4 files changed, 27 insertions(+), 41 deletions(-)
diff --git a/src/include/libabrt.h b/src/include/libabrt.h
index 33a1c5af..ab0bf6aa 100644
--- a/src/include/libabrt.h
+++ b/src/include/libabrt.h
@@ -138,9 +138,9 @@ char *kernel_tainted_short(const char *kernel_bt);
#define kernel_tainted_long abrt_kernel_tainted_long
char *kernel_tainted_long(const char *tainted_short);
#define koops_hash_str_ext abrt_koops_hash_str_ext
-int koops_hash_str_ext(char hash_str[SHA1_RESULT_LEN*2 + 1], const char *oops_buf, int frame_count, int duphas_flags);
+char *koops_hash_str_ext(const char *oops_buf, int frame_count, int duphas_flags);
#define koops_hash_str abrt_koops_hash_str
-int koops_hash_str(char hash_str[SHA1_RESULT_LEN*2 + 1], const char *oops_buf);
+char *koops_hash_str(const char *oops_buf);
#define koops_line_skip_level abrt_koops_line_skip_level
diff --git a/src/lib/kernel.c b/src/lib/kernel.c
index 7b831dac..c95bf7f9 100644
--- a/src/lib/kernel.c
+++ b/src/lib/kernel.c
@@ -586,18 +586,16 @@ void koops_extract_oopses_from_lines(GList **oops_list, const struct abrt_koops_
}
}
-int koops_hash_str_ext(char result[SHA1_RESULT_LEN*2 + 1], const char *oops_buf, int frame_count, int duphash_flags)
+char *koops_hash_str_ext(const char *oops_buf, int frame_count, int duphash_flags)
{
- char *hash_str = NULL, *error = NULL;
- int bad = 0;
+ g_autofree char *error = NULL;
+ char *digest = NULL;
struct sr_stacktrace *stacktrace = sr_stacktrace_parse(SR_REPORT_KERNELOOPS,
oops_buf, &error);
if (!stacktrace)
{
log_debug("Failed to parse koops: %s", error);
- free(error);
- bad = 1;
goto end;
}
@@ -605,43 +603,34 @@ int koops_hash_str_ext(char result[SHA1_RESULT_LEN*2 + 1], const char *oops_buf,
if (!thread)
{
log_debug("Failed to find crash thread");
- bad = 1;
goto end;
}
if (g_verbose >= 3)
{
- hash_str = sr_thread_get_duphash(thread, frame_count, NULL,
- duphash_flags|SR_DUPHASH_NOHASH);
- if (hash_str)
- log_warning("Generating duphash: '%s'", hash_str);
+ digest = sr_thread_get_duphash(thread, frame_count, NULL,
+ duphash_flags|SR_DUPHASH_NOHASH);
+ if (digest)
+ {
+ log_warning("Generating duphash: '%s'", digest);
+ free(digest);
+ }
else
log_warning("Nothing useful for duphash");
-
-
- free(hash_str);
}
- hash_str = sr_thread_get_duphash(thread, frame_count, NULL, duphash_flags);
- if (hash_str)
- {
- strncpy(result, hash_str, SHA1_RESULT_LEN*2);
- result[SHA1_RESULT_LEN*2] = '\0';
- free(hash_str);
- }
- else
- bad = 1;
+ digest = sr_thread_get_duphash(thread, frame_count, NULL, duphash_flags);
end:
sr_stacktrace_free(stacktrace);
- return bad;
+ return digest;
}
-int koops_hash_str(char result[SHA1_RESULT_LEN*2 + 1], const char *oops_buf)
+char *koops_hash_str(const char *oops_buf)
{
const int frame_count = 6;
const int duphash_flags = SR_DUPHASH_NONORMALIZE|SR_DUPHASH_KOOPS_COMPAT;
- return koops_hash_str_ext(result, oops_buf, frame_count, duphash_flags);
+ return koops_hash_str_ext(oops_buf, frame_count, duphash_flags);
}
char *koops_extract_version(const char *linepointer)
diff --git a/src/plugins/abrt-action-analyze-oops.c b/src/plugins/abrt-action-analyze-oops.c
index d7fe6886..ddd1c46d 100644
--- a/src/plugins/abrt-action-analyze-oops.c
+++ b/src/plugins/abrt-action-analyze-oops.c
@@ -60,9 +60,8 @@ int main(int argc, char **argv)
load_abrt_plugin_conf_file("oops.conf", settings);
char *oops = dd_load_text(dd, FILENAME_BACKTRACE);
- char hash_str[SHA1_RESULT_LEN*2 + 1];
- int bad = koops_hash_str(hash_str, oops);
- if (bad)
+ g_autofree char *hash_str = koops_hash_str(oops);
+ if (!hash_str)
{
error_msg("Can't find a meaningful backtrace for hashing in '%s'", dump_dir_name);
@@ -87,7 +86,7 @@ int main(int argc, char **argv)
/* We need UUID file for the local duplicates look-up and DUPHASH */
/* file is also useful because user can force ABRT to report */
/* the oops into a bug tracking system (Bugzilla). */
- bad = koops_hash_str_ext(hash_str, oops,
+ hash_str = koops_hash_str_ext(oops,
/* use no frame count limit */-1,
/* use every frame in stacktrace */0);
@@ -97,7 +96,7 @@ int main(int argc, char **argv)
free(oops);
- if (!bad)
+ if (hash_str)
{
dd_save_text(dd, FILENAME_UUID, hash_str);
dd_save_text(dd, FILENAME_DUPHASH, hash_str);
@@ -107,5 +106,5 @@ int main(int argc, char **argv)
free_map_string(settings);
- return bad;
+ return NULL != hash_str;
}
diff --git a/tests/koops-parser.at b/tests/koops-parser.at
index 4f9087ab..51a45e62 100644
--- a/tests/koops-parser.at
+++ b/tests/koops-parser.at
@@ -125,16 +125,14 @@ AT_TESTFUN([koops_hash_improve],
int run_test(const struct test_struct *test)
{
- char *oops1 = fread_full(test->filename);
- char *oops2 = fread_full(test->expected_results);
+ g_autofree char *oops1 = fread_full(test->filename);
+ g_autofree char *oops2 = fread_full(test->expected_results);
- char hash_oops1[SHA1_RESULT_LEN*2 + 1];
- koops_hash_str(hash_oops1, oops1);
- free(oops1);
+ g_autofree char *hash_oops1 = koops_hash_str(oops1);
+ g_autofree char *hash_oops2 = koops_hash_str(oops2);
- char hash_oops2[SHA1_RESULT_LEN*2 + 1];
- koops_hash_str(hash_oops2, oops2);
- free(oops2);
+ if (NULL == hash_oops1 || NULL == hash_oops2)
+ return 1;
if (!strcmp(hash_oops1, hash_oops2))
return 0;
--
2.25.0

View file

@ -1,96 +0,0 @@
From 57c0042ead87249bed5964eeec45b97543674060 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mat=C4=9Bj=20Grabovsk=C3=BD?= <mgrabovs@redhat.com>
Date: Wed, 16 Oct 2019 11:27:54 +0200
Subject: [PATCH] python: Use correct paths for installed modules
Non-compiled (without C bits) Python modules should be installed into
architecture-independent directory (/usr/lib/python3.x/site-packages
in the case of Fedora).
This commit fixes both
* the spec file, where %{python3_sitelib} should be used rather than
%{python3_sitearch} which is to be used for compiled extensions; and
* the automake scripts, where $(pythondir) should be used in place of
$(pyexecdir) for the same reason.
This is a follow-up to 20dcf7fb4.
---
abrt.spec.in | 14 +++++++-------
src/cli/abrtcli/Makefile.am | 2 +-
src/cli/abrtcli/cli/Makefile.am | 2 +-
src/hooks/Makefile.am | 2 +-
4 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/abrt.spec.in b/abrt.spec.in
index 1c6c48ad..fe0b2278 100644
--- a/abrt.spec.in
+++ b/abrt.spec.in
@@ -935,14 +935,14 @@ killall abrt-dbus >/dev/null 2>&1 || :
%{_journalcatalogdir}/python3_abrt.catalog
%config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_python3_format.conf
%{_mandir}/man5/python3_event.conf.5*
-%{python3_sitearch}/abrt3.pth
-%{python3_sitearch}/abrt_exception_handler3.py
-%{python3_sitearch}/__pycache__/abrt_exception_handler3.*
+%{python3_sitelib}/abrt3.pth
+%{python3_sitelib}/abrt_exception_handler3.py
+%{python3_sitelib}/__pycache__/abrt_exception_handler3.*
%files -n python3-abrt-container-addon
-%{python3_sitearch}/abrt3_container.pth
-%{python3_sitearch}/abrt_exception_handler3_container.py
-%{python3_sitearch}/__pycache__/abrt_exception_handler3_container.*
+%{python3_sitelib}/abrt3_container.pth
+%{python3_sitelib}/abrt_exception_handler3_container.py
+%{python3_sitelib}/__pycache__/abrt_exception_handler3_container.*
%endif # with python3
%files plugin-sosreport
@@ -959,7 +959,7 @@ killall abrt-dbus >/dev/null 2>&1 || :
%config(noreplace) %{_sysconfdir}/bash_completion.d/abrt.bash_completion
%{_bindir}/abrt
%{_bindir}/abrt-cli
-%{python3_sitearch}/abrtcli/
+%{python3_sitelib}/abrtcli/
%{_mandir}/man1/abrt.1*
%{_mandir}/man1/abrt-cli.1*
%endif # with python3
diff --git a/src/cli/abrtcli/Makefile.am b/src/cli/abrtcli/Makefile.am
index d11355a2..a599d0b5 100644
--- a/src/cli/abrtcli/Makefile.am
+++ b/src/cli/abrtcli/Makefile.am
@@ -9,7 +9,7 @@ PYFILES= \
utils.py
abrtcli_PYTHON = $(PYFILES)
-abrtclidir = $(pyexecdir)/abrtcli
+abrtclidir = $(pythondir)/abrtcli
config.py: config.py.in
sed -e s,\@LOCALE_DIR\@,$(localedir),g \
diff --git a/src/cli/abrtcli/cli/Makefile.am b/src/cli/abrtcli/cli/Makefile.am
index 17ff216b..c796074d 100644
--- a/src/cli/abrtcli/cli/Makefile.am
+++ b/src/cli/abrtcli/cli/Makefile.am
@@ -10,4 +10,4 @@ abrtclicommands_PYTHON = \
retrace.py \
status.py
-abrtclicommandsdir = $(pyexecdir)/abrtcli/cli
+abrtclicommandsdir = $(pythondir)/abrtcli/cli
diff --git a/src/hooks/Makefile.am b/src/hooks/Makefile.am
index 6e35887f..bdef0329 100644
--- a/src/hooks/Makefile.am
+++ b/src/hooks/Makefile.am
@@ -35,7 +35,7 @@ EXTRA_DIST = \
ALL_DEPENDENCES =
if BUILD_PYTHON3
-py3hookdir = $(pyexecdir)
+py3hookdir = $(pythondir)
dist_pluginsconf_DATA += python3.conf
ALL_DEPENDENCES += abrt_exception_handler3.py
--
2.21.0

View file

@ -1,165 +0,0 @@
From f58c435e4e4f5030af44d2cde8042bcf10d24615 Mon Sep 17 00:00:00 2001
From: Michal Fabik <mfabik@redhat.com>
Date: Tue, 28 Jan 2020 13:45:14 +0100
Subject: [PATCH] Fix build failure with gcc -fno-common
Signed-off-by: Michal Fabik <mfabik@redhat.com>
---
src/configuration-gui/abrt-config-widget.c | 2 +-
src/dbus/abrt_problems2_service.c | 4 ++--
src/dbus/abrt_problems2_service.h | 8 ++++----
src/dbus/abrt_problems2_session.c | 2 +-
src/dbus/abrt_problems2_task.c | 2 +-
src/plugins/oops-utils.c | 2 ++
src/plugins/oops-utils.h | 2 +-
src/plugins/xorg-utils.c | 2 ++
src/plugins/xorg-utils.h | 2 +-
9 files changed, 15 insertions(+), 11 deletions(-)
diff --git a/src/configuration-gui/abrt-config-widget.c b/src/configuration-gui/abrt-config-widget.c
index aa3b5c01b..518ecd1d0 100644
--- a/src/configuration-gui/abrt-config-widget.c
+++ b/src/configuration-gui/abrt-config-widget.c
@@ -109,7 +109,7 @@ G_DEFINE_TYPE_WITH_PRIVATE(AbrtConfigWidget, abrt_config_widget, GTK_TYPE_BOX)
enum {
SN_CHANGED,
SN_LAST_SIGNAL
-} SignalNumber;
+};
static guint s_signals[SN_LAST_SIGNAL] = { 0 };
diff --git a/src/dbus/abrt_problems2_service.c b/src/dbus/abrt_problems2_service.c
index a0d2a3ce6..a1e7ae322 100644
--- a/src/dbus/abrt_problems2_service.c
+++ b/src/dbus/abrt_problems2_service.c
@@ -1589,7 +1589,7 @@ AbrtP2Object *abrt_p2_service_get_entry_object(AbrtP2Service *service,
AbrtP2Object *abrt_p2_service_get_entry_for_problem(AbrtP2Service *service,
const char *problem_id,
- int flags,
+ AbrtP2ServiceEntryLookupFlags flags,
GError **error)
{
char *entry_path = entry_object_dir_name_to_path(problem_id);
@@ -2062,7 +2062,7 @@ GVariant *abrt_p2_service_callers_session(AbrtP2Service *service,
GVariant *abrt_p2_service_get_problems(AbrtP2Service *service,
uid_t caller_uid,
- gint32 flags,
+ AbrtP2ServiceGetProblemsFlags flags,
GVariant *options,
GError **error)
{
diff --git a/src/dbus/abrt_problems2_service.h b/src/dbus/abrt_problems2_service.h
index f82cf503a..22b97a6e8 100644
--- a/src/dbus/abrt_problems2_service.h
+++ b/src/dbus/abrt_problems2_service.h
@@ -86,14 +86,14 @@ GVariant *abrt_p2_service_entry_problem_data(AbrtP2Service *service,
GError **error);
-enum {
+typedef enum {
ABRT_P2_SERVICE_ENTRY_LOOKUP_NOFLAGS = 0x0, ///< return with error if not found
ABRT_P2_SERVICE_ENTRY_LOOKUP_OPTIONAL = 0x1, ///< return NULL if not found
-} AbrtP2ServiceEntryLookupFlag;
+} AbrtP2ServiceEntryLookupFlags;
AbrtP2Object *abrt_p2_service_get_entry_for_problem(AbrtP2Service *service,
const char *problem_id,
- int flags,
+ AbrtP2ServiceEntryLookupFlags flags,
GError **error);
struct _AbrtP2Entry;
@@ -145,7 +145,7 @@ typedef enum
GVariant *abrt_p2_service_get_problems(AbrtP2Service *service,
uid_t caller_uid,
- gint32 flags,
+ AbrtP2ServiceGetProblemsFlags flags,
GVariant *options,
GError **error);
diff --git a/src/dbus/abrt_problems2_session.c b/src/dbus/abrt_problems2_session.c
index 96db4ccc5..85ee78887 100644
--- a/src/dbus/abrt_problems2_session.c
+++ b/src/dbus/abrt_problems2_session.c
@@ -97,7 +97,7 @@ struct check_auth_cb_params
enum {
SN_AUTHORIZATION_CHANGED,
SN_LAST_SIGNAL
-} SignalNumber;
+};
static guint s_signals[SN_LAST_SIGNAL] = { 0 };
diff --git a/src/dbus/abrt_problems2_task.c b/src/dbus/abrt_problems2_task.c
index cba6b469a..e6ae171c7 100644
--- a/src/dbus/abrt_problems2_task.c
+++ b/src/dbus/abrt_problems2_task.c
@@ -21,7 +21,7 @@
enum {
SN_STATUS_CHANGED,
SN_LAST_SIGNAL
-} SignalNumber;
+};
static guint s_signals[SN_LAST_SIGNAL] = { 0 };
diff --git a/src/plugins/oops-utils.c b/src/plugins/oops-utils.c
index caa1d8d5d..a77b4424f 100644
--- a/src/plugins/oops-utils.c
+++ b/src/plugins/oops-utils.c
@@ -22,6 +22,8 @@
#include "oops-utils.h"
#include "libabrt.h"
+int g_abrt_oops_sleep_woke_up_on_signal;
+
int abrt_oops_process_list(GList *oops_list, const char *dump_location, const char *analyzer, int flags)
{
unsigned errors = 0;
diff --git a/src/plugins/oops-utils.h b/src/plugins/oops-utils.h
index 5181f91c7..bdd61cac2 100644
--- a/src/plugins/oops-utils.h
+++ b/src/plugins/oops-utils.h
@@ -33,7 +33,7 @@ enum {
ABRT_OOPS_PRINT_STDOUT = 1 << 2,
};
-int g_abrt_oops_sleep_woke_up_on_signal;
+extern int g_abrt_oops_sleep_woke_up_on_signal;
int abrt_oops_process_list(GList *oops_list, const char *dump_location, const char *analyzer, int flags);
unsigned abrt_oops_create_dump_dirs(GList *oops_list, const char *dump_location, const char *analyzer, int flags);
diff --git a/src/plugins/xorg-utils.c b/src/plugins/xorg-utils.c
index a8dfc512a..4ecf8cb63 100644
--- a/src/plugins/xorg-utils.c
+++ b/src/plugins/xorg-utils.c
@@ -23,6 +23,8 @@
#define DEFAULT_XORG_CRASH_REASON "Display server crashed"
+int g_abrt_xorg_sleep_woke_up_on_signal;
+
int abrt_xorg_signaled_sleep(int seconds)
{
sigset_t set;
diff --git a/src/plugins/xorg-utils.h b/src/plugins/xorg-utils.h
index c53bc460d..d9f44681a 100644
--- a/src/plugins/xorg-utils.h
+++ b/src/plugins/xorg-utils.h
@@ -35,7 +35,7 @@ enum {
ABRT_XORG_PRINT_STDOUT = 1 << 2,
};
-int g_abrt_xorg_sleep_woke_up_on_signal;
+extern int g_abrt_xorg_sleep_woke_up_on_signal;
int abrt_xorg_signaled_sleep(int seconds);
/*
--
2.24.1

View file

@ -1,32 +0,0 @@
From c6562f15f2b72348aa447e3acbb91de5cf221695 Mon Sep 17 00:00:00 2001
From: Martin Kutlak <mkutlak@redhat.com>
Date: Thu, 30 Jan 2020 16:19:51 +0100
Subject: [PATCH] bodhi: Initialize karma values with default
During a rebuilt on s390x this error came up:
bodhi.c:340:12:
error:
'unstable_karma' may be used uninitialized in this function
Signed-off-by: Martin Kutlak <mkutlak@redhat.com>
---
src/plugins/bodhi.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/plugins/bodhi.c b/src/plugins/bodhi.c
index 14d65ad37..9b5177be9 100644
--- a/src/plugins/bodhi.c
+++ b/src/plugins/bodhi.c
@@ -334,7 +334,8 @@ static GHashTable *bodhi_parse_json(json_object *json, const char *release)
if (!builds_item) /* broken json */
continue;
- int karma, unstable_karma;
+ int karma = 0;
+ int unstable_karma = 0;
bodhi_read_value(updates_item, "karma", &karma, BODHI_READ_INT);
bodhi_read_value(updates_item, "unstable_karma", &unstable_karma, BODHI_READ_INT);
if (karma <= unstable_karma)
--
2.24.1

View file

@ -1,29 +0,0 @@
From f81bbaa60ad6c5c99dba499044255fdde5d5ed4a Mon Sep 17 00:00:00 2001
From: Martin Kutlak <mkutlak@redhat.com>
Date: Fri, 31 Jan 2020 10:12:37 +0100
Subject: [PATCH] dbus: Fix possibly uninitialized variable
abrt_problems2_task.c:419:21: error:
'response' may be used uninitialized in this function [-Werror=maybe-uninitialized]
Signed-off-by: Martin Kutlak <mkutlak@redhat.com>
---
src/dbus/abrt_problems2_task.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/dbus/abrt_problems2_task.c b/src/dbus/abrt_problems2_task.c
index e6ae171c7..af47660aa 100644
--- a/src/dbus/abrt_problems2_task.c
+++ b/src/dbus/abrt_problems2_task.c
@@ -403,7 +403,7 @@ static void abrt_p2_task_autonomous_cb(AbrtP2Task *task,
case ABRT_P2_TASK_STATUS_FAILED:
{
- GVariant *response;
+ GVariant *response = NULL;
gint32 code;
GError *error = NULL;
abrt_p2_task_finish(task, &response, &code, &error);
--
2.24.1

View file

@ -48,23 +48,12 @@
Summary: Automatic bug detection and reporting tool
Name: abrt
Version: 2.13.0
Release: 5%{?dist}
Version: 2.14.0
Release: 1%{?dist}
License: GPLv2+
URL: https://abrt.readthedocs.org/
Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz
Patch0001: 0001-python-Use-correct-paths-for-installed-modules.patch
Patch0002: 0002-Fix-build-failure-with-gcc-fno-common.patch
Patch0003: 0003-bodhi-Initialize-karma-values-with-default.patch
Patch0004: 0004-dbus-Fix-possibly-uninitialized-variable.patch
# https://github.com/abrt/abrt/commit/16468b57579997971c056687ecc8438a406d57c2
Patch0005: 0001-Use-GChecksum-to-compute-checksums.patch
# https://github.com/abrt/abrt/commit/439fe1daddd62d53bf2ee72c45b631f5248daf5d
Patch0006: 0001-koops-Avoid-explicit-dependency-on-hash-size.patch
# https://github.com/abrt/abrt/commit/3f5003af92d2b2b0e4f5565ccd90b29e32e6b30b
Patch0007: 0001-Stop-using-parse_list.patch
BuildRequires: git-core
BuildRequires: %{dbus_devel}
BuildRequires: hostname
@ -1026,6 +1015,9 @@ killall abrt-dbus >/dev/null 2>&1 || :
%config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh
%changelog
* Fri Feb 07 2020 Ernestas Kulik <ekulik@redhat.com> - 2.14.0-1
- Update to 2.14.0
* Fri Feb 07 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.13.0-5
- Rebuild for satyr 0.30

View file

@ -1 +1 @@
SHA512 (abrt-2.13.0.tar.gz) = 936c83293dcb71051b8dd89e84718cf0f76c7d7998b414a2c41d43b8e2a4dc6718f42d8fd47186bd15bac3ea06081f411ab3a7ed3729343da9e6e91edb046568
SHA512 (abrt-2.14.0.tar.gz) = 2d817b7761d5afdca00a825281b759bc084a17d7393fcdf87df1a901b5c1a75595e3a733e481b30b02d068a123f8eac26163e2e55366e7cc20266a95e863967e