import libreport-2.9.5-9.el8
This commit is contained in:
parent
3556c4695b
commit
eb70e875e1
@ -0,0 +1,53 @@
|
||||
From 1aa9e3a987439fd4435b40b9c7f56d063097f980 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Kutlak <mkutlak@redhat.com>
|
||||
Date: Thu, 3 Jan 2019 16:32:00 +0100
|
||||
Subject: [PATCH] bugzilla: change the default bugzilla group
|
||||
|
||||
Changes the default bugzilla group to redhat and also makes the
|
||||
reported bugs private by default.
|
||||
|
||||
Related to rhbz#1660449
|
||||
|
||||
Signed-off-by: Martin Kutlak <mkutlak@redhat.com>
|
||||
---
|
||||
configure.ac | 6 +++---
|
||||
src/plugins/bugzilla.conf | 4 ++--
|
||||
2 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index feafc28e..ce453895 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -92,14 +92,14 @@ AC_PATH_PROG([XMLRPC], [xmlrpc-c-config], [no])
|
||||
AC_ARG_WITH([redhatbugzillacreateprivate],
|
||||
AS_HELP_STRING([--with-redhatbugzillacreateprivate="yes/no"],
|
||||
[Whether the Red Hat Bugzilla plugin should open
|
||||
- bugs private by default ("no")]),
|
||||
- [], [with_redhatbugzillacreateprivate="no"])
|
||||
+ bugs private by default ("yes")]),
|
||||
+ [], [with_redhatbugzillacreateprivate="yes"])
|
||||
AC_SUBST([RED_HAT_BUGZILLA_CREATE_PRIVATE], [$with_redhatbugzillacreateprivate])
|
||||
|
||||
AC_ARG_WITH([redhatbugzillaprivategroups],
|
||||
AS_HELP_STRING([--with-redhatbugzillaprivategroups="CSV"],
|
||||
[Name of groups separated by comma]),
|
||||
- [], [with_redhatbugzillaprivategroups="fedora_contrib_private"])
|
||||
+ [], [with_redhatbugzillaprivategroups="redhat"])
|
||||
AC_SUBST([RED_HAT_BUGZILLA_PRIVATE_GROUPS], [$with_redhatbugzillaprivategroups])
|
||||
|
||||
|
||||
diff --git a/src/plugins/bugzilla.conf b/src/plugins/bugzilla.conf
|
||||
index a7727392..dbbbd05c 100644
|
||||
--- a/src/plugins/bugzilla.conf
|
||||
+++ b/src/plugins/bugzilla.conf
|
||||
@@ -22,5 +22,5 @@ Password =
|
||||
DontMatchComponents = selinux-policy
|
||||
|
||||
# for more info about these settings see: https://github.com/abrt/abrt/wiki/FAQ#creating-private-bugzilla-tickets
|
||||
-# CreatePrivate = no
|
||||
-# PrivateGroups = fedora_contrib_private
|
||||
+# CreatePrivate = yes
|
||||
+# PrivateGroups = redhat
|
||||
--
|
||||
2.21.0
|
||||
|
@ -0,0 +1,77 @@
|
||||
From 69c83b933da2ac7c4a1450c5882027030eb79022 Mon Sep 17 00:00:00 2001
|
||||
From: Ernestas Kulik <ekulik@redhat.com>
|
||||
Date: Tue, 12 Mar 2019 13:30:12 +0100
|
||||
Subject: [PATCH] lib: dump_dir: Clean up on failure in dd_delete()
|
||||
|
||||
All callers assume that dd_delete() will succeed and the dump directory
|
||||
struct will be freed, but in some cases that does not happen and leaks
|
||||
occur.
|
||||
|
||||
Resolves rhbz#1671233
|
||||
|
||||
Signed-off-by: Ernestas Kulik <ekulik@redhat.com>
|
||||
---
|
||||
src/lib/dump_dir.c | 26 +++++++++++++++++++++-----
|
||||
1 file changed, 21 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/lib/dump_dir.c b/src/lib/dump_dir.c
|
||||
index 632a01fa..4533f4c1 100644
|
||||
--- a/src/lib/dump_dir.c
|
||||
+++ b/src/lib/dump_dir.c
|
||||
@@ -1555,19 +1555,33 @@ static int dd_delete_meta_data(struct dump_dir *dd)
|
||||
|
||||
int dd_delete(struct dump_dir *dd)
|
||||
{
|
||||
+ int retval;
|
||||
+
|
||||
+ retval = 0;
|
||||
+
|
||||
if (!dd->locked)
|
||||
{
|
||||
error_msg("unlocked problem directory %s cannot be deleted", dd->dd_dirname);
|
||||
- return -1;
|
||||
+
|
||||
+ retval = -1;
|
||||
+
|
||||
+ goto close;
|
||||
}
|
||||
|
||||
if (dd_delete_meta_data(dd) != 0)
|
||||
- return -2;
|
||||
+ {
|
||||
+ retval = -2;
|
||||
+
|
||||
+ goto close;
|
||||
+ }
|
||||
|
||||
if (delete_file_dir(dd->dd_fd, /*skip_lock_file:*/ true) != 0)
|
||||
{
|
||||
perror_msg("Can't remove contents of directory '%s'", dd->dd_dirname);
|
||||
- return -2;
|
||||
+
|
||||
+ retval = -2;
|
||||
+
|
||||
+ goto close;
|
||||
}
|
||||
|
||||
unsigned cnt = RMDIR_FAIL_COUNT;
|
||||
@@ -1586,12 +1600,14 @@ int dd_delete(struct dump_dir *dd)
|
||||
if (cnt == 0)
|
||||
{
|
||||
perror_msg("Can't remove directory '%s'", dd->dd_dirname);
|
||||
- return -3;
|
||||
+
|
||||
+ retval = -3;
|
||||
}
|
||||
|
||||
dd->locked = 0; /* delete_file_dir already removed .lock */
|
||||
+close:
|
||||
dd_close(dd);
|
||||
- return 0;
|
||||
+ return retval;
|
||||
}
|
||||
|
||||
int dd_chown(struct dump_dir *dd, uid_t new_uid)
|
||||
--
|
||||
2.21.0
|
||||
|
@ -0,0 +1,62 @@
|
||||
From 683364e35ef2da8cd646fe1e29e57a17c6e71c36 Mon Sep 17 00:00:00 2001
|
||||
From: Ernestas Kulik <ekulik@redhat.com>
|
||||
Date: Tue, 28 May 2019 15:51:05 +0200
|
||||
Subject: [PATCH] cli: Unpack command-line argument parsing logic
|
||||
|
||||
Currently, checking for invalid command line needlessly involves
|
||||
convoluted bitwise operations, which can be simplified drastically.
|
||||
|
||||
First, argc is reduced by optind, which points to the next argument to
|
||||
be processed. If everything goes well, argc should be 1, since the only
|
||||
remaining argument to be processed is the problem directory. If that
|
||||
does not hold, we want to bail. Another point at which we want to bail
|
||||
is when an option is passed that operates on the positional argument
|
||||
(anything but -L, which just lists available events). Checking for that
|
||||
involves ANDing the current option mask with the mask of all such
|
||||
options. The result is NOTed for comparison, since argc is 0 in such
|
||||
cases.
|
||||
|
||||
Signed-off-by: Ernestas Kulik <ekulik@redhat.com>
|
||||
---
|
||||
src/cli/cli.c | 17 ++++++++---------
|
||||
1 file changed, 8 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/src/cli/cli.c b/src/cli/cli.c
|
||||
index ff5b29f4..67ce7dde 100644
|
||||
--- a/src/cli/cli.c
|
||||
+++ b/src/cli/cli.c
|
||||
@@ -39,6 +39,9 @@ static char *steal_directory_if_needed(char *dump_dir_name)
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
+ bool runaway_arguments;
|
||||
+ bool missing_positional_argument;
|
||||
+
|
||||
abrt_init(argv);
|
||||
|
||||
setlocale(LC_ALL, "");
|
||||
@@ -108,16 +111,12 @@ int main(int argc, char** argv)
|
||||
argv += optind;
|
||||
argc -= optind;
|
||||
|
||||
+ runaway_arguments = argc > 1;
|
||||
+ missing_positional_argument = (opts & OPTMASK_need_arg) && (argc == 0);
|
||||
+
|
||||
/* Check for bad usage */
|
||||
- if (argc > 1 /* more than one arg? */
|
||||
- ||
|
||||
- /* dont_need_arg == have_arg? bad in both cases:
|
||||
- * TRUE == TRUE (dont need arg but have) or
|
||||
- * FALSE == FALSE (need arg but havent).
|
||||
- * OPT_list_events is an exception, it can be used in both cases.
|
||||
- */
|
||||
- (((!(opts & OPTMASK_need_arg)) == argc) && (op != OPT_list_events))
|
||||
- ) {
|
||||
+ if (runaway_arguments || (missing_positional_argument && op != OPT_list_events))
|
||||
+ {
|
||||
show_usage_and_die(program_usage_string, program_options);
|
||||
}
|
||||
|
||||
--
|
||||
2.21.0
|
||||
|
@ -0,0 +1,42 @@
|
||||
From d10e9b9e9b3118405ac701ce9109bc7239ff1752 Mon Sep 17 00:00:00 2001
|
||||
From: Ernestas Kulik <ekulik@redhat.com>
|
||||
Date: Wed, 29 May 2019 14:07:52 +0200
|
||||
Subject: [PATCH] =?UTF-8?q?plugins:=20rhbz:=20Don=E2=80=99t=20call=20strle?=
|
||||
=?UTF-8?q?n()=20on=20attachment=20data?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
It might not be textual, meaning that, if the blob somehow begins with
|
||||
NUL, it would be treated as empty.
|
||||
|
||||
Signed-off-by: Ernestas Kulik <ekulik@redhat.com>
|
||||
---
|
||||
src/plugins/rhbz.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/plugins/rhbz.c b/src/plugins/rhbz.c
|
||||
index 680527d7..96b6d7da 100644
|
||||
--- a/src/plugins/rhbz.c
|
||||
+++ b/src/plugins/rhbz.c
|
||||
@@ -611,7 +611,7 @@ int rhbz_attach_blob(struct abrt_xmlrpc *ax, const char *bug_id,
|
||||
{
|
||||
func_entry();
|
||||
|
||||
- if (strlen(data) == 0)
|
||||
+ if (0 == data_len)
|
||||
{
|
||||
log_notice("not attaching an empty file: '%s'", filename);
|
||||
/* Return SUCCESS */
|
||||
@@ -681,7 +681,7 @@ int rhbz_attach_fd(struct abrt_xmlrpc *ax, const char *bug_id,
|
||||
|
||||
//TODO: need to have a method of attaching huge files (IOW: 1Gb read isn't good).
|
||||
|
||||
- char *data = xmalloc(size + 1);
|
||||
+ char *data = xmalloc(size);
|
||||
ssize_t r = full_read(fd, data, size);
|
||||
if (r < 0)
|
||||
{
|
||||
--
|
||||
2.21.0
|
||||
|
34
SOURCES/0023-tests-Disable-strcpm-ing-a-freed-pointer.patch
Normal file
34
SOURCES/0023-tests-Disable-strcpm-ing-a-freed-pointer.patch
Normal file
@ -0,0 +1,34 @@
|
||||
From 677b495832484943d88f3fa4325b4f5ae38e930b Mon Sep 17 00:00:00 2001
|
||||
From: Michal Fabik <mfabik@redhat.com>
|
||||
Date: Tue, 16 Jul 2019 10:27:18 +0200
|
||||
Subject: [PATCH] tests: Disable strcpm'ing a freed pointer
|
||||
|
||||
This was causing an i686 build failure on RHEL8
|
||||
|
||||
Related: rhbz#1660449
|
||||
Impossible to build otherwise
|
||||
|
||||
Signed-off-by: Michal Fabik <mfabik@redhat.com>
|
||||
---
|
||||
tests/libreport_types.at | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tests/libreport_types.at b/tests/libreport_types.at
|
||||
index 106ba3b0..c63fdad4 100644
|
||||
--- a/tests/libreport_types.at
|
||||
+++ b/tests/libreport_types.at
|
||||
@@ -233,7 +233,10 @@ int main(int argc, char **argv)
|
||||
|
||||
assert(try_get_map_string_item_as_string(map, key, &retval) || !"Cannot find key string('my_string') after freeing original key");
|
||||
assert(NULL != retval || !"The return value is not assigned to the return variable");
|
||||
- assert(strcmp(bck, retval) == 0 || !"Garbled string('test') after freeing the original key value");
|
||||
+
|
||||
+ /* disabled because this line was failing during an i686 build on RHEL8 */
|
||||
+ /* need to investigate what it's good for in the first place */
|
||||
+ //assert(strcmp(bck, retval) == 0 || !"Garbled string('test') after freeing the original key value");
|
||||
|
||||
/* TODO: try to store really big string */
|
||||
|
||||
--
|
||||
2.21.0
|
||||
|
37
SOURCES/0024-lib-fix-a-SEGV-in-list_possible_events.patch
Normal file
37
SOURCES/0024-lib-fix-a-SEGV-in-list_possible_events.patch
Normal file
@ -0,0 +1,37 @@
|
||||
From fc813bcf566e0ca1ccfff83e7e6f360647066768 Mon Sep 17 00:00:00 2001
|
||||
From: Jakub Filak <jfilak@redhat.com>
|
||||
Date: Thu, 9 Jul 2015 15:32:19 +0200
|
||||
Subject: [PATCH] lib: fix a SEGV in list_possible_events()
|
||||
|
||||
The bug has been introduced in
|
||||
commit fc028b3417349fd60a2ddd1aff1127a417df512b
|
||||
|
||||
Related: #1224984
|
||||
|
||||
Fixes: rhbz#1733515
|
||||
|
||||
Signed-off-by: Jakub Filak <jfilak@redhat.com>
|
||||
(cherry picked from commit 38a8c2fb2b4a46a35899f6b1066ec65ef155eeac)
|
||||
---
|
||||
src/lib/run_event.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/src/lib/run_event.c b/src/lib/run_event.c
|
||||
index 64c7a303..077ae189 100644
|
||||
--- a/src/lib/run_event.c
|
||||
+++ b/src/lib/run_event.c
|
||||
@@ -417,7 +417,11 @@ static char* pop_next_command(GList **pp_rule_list,
|
||||
if (pd == NULL)
|
||||
free_me = real_val = dd_load_text_ext(dd, var_name, DD_FAIL_QUIETLY_ENOENT);
|
||||
else
|
||||
+ {
|
||||
real_val = problem_data_get_content_or_NULL(pd, var_name);
|
||||
+ if (real_val == NULL)
|
||||
+ free_me = real_val = xstrdup("");
|
||||
+ }
|
||||
free(var_name);
|
||||
int vals_differ = regex ? regcmp_lines(real_val, eq_sign + 1) : strcmp(real_val, eq_sign + 1);
|
||||
free(free_me);
|
||||
--
|
||||
2.21.0
|
||||
|
116
SOURCES/9000-Add-autogen.sh.patch
Normal file
116
SOURCES/9000-Add-autogen.sh.patch
Normal file
@ -0,0 +1,116 @@
|
||||
From 9636b85c5570911c753bc8074ce5bd73f490d4da Mon Sep 17 00:00:00 2001
|
||||
From: Michal Fabik <mfabik@redhat.com>
|
||||
Date: Wed, 19 Jun 2019 13:42:07 +0200
|
||||
Subject: [PATCH] Add autogen.sh
|
||||
|
||||
---
|
||||
autogen.sh | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 97 insertions(+)
|
||||
create mode 100755 autogen.sh
|
||||
|
||||
diff --git a/autogen.sh b/autogen.sh
|
||||
new file mode 100755
|
||||
index 00000000..fd48b5f0
|
||||
--- /dev/null
|
||||
+++ b/autogen.sh
|
||||
@@ -0,0 +1,97 @@
|
||||
+#!/bin/sh
|
||||
+
|
||||
+print_help()
|
||||
+{
|
||||
+cat << EOH
|
||||
+Prepares the source tree for configuration
|
||||
+
|
||||
+Usage:
|
||||
+ autogen.sh [sysdeps [--install]]
|
||||
+
|
||||
+Options:
|
||||
+
|
||||
+ sysdeps prints out all dependencies
|
||||
+ --install install all dependencies ('sudo yum install \$DEPS')
|
||||
+
|
||||
+EOH
|
||||
+}
|
||||
+
|
||||
+parse_build_requires_from_spec_file()
|
||||
+{
|
||||
+ PACKAGE=$1
|
||||
+ TEMPFILE=$(mktemp -u --suffix=.spec)
|
||||
+ sed 's/@@LIBREPORT_VERSION@@/1/' < $PACKAGE.spec.in | sed 's/@.*@//' > $TEMPFILE
|
||||
+ rpmspec -P $TEMPFILE | grep "^\(Build\)\?Requires:" | \
|
||||
+ tr -s " " | tr "," "\n" | cut -f2- -d " " | \
|
||||
+ grep -v "\(^\|python[23]-\)"$PACKAGE | sort -u | sed -E 's/^(.*) (.*)$/"\1 \2"/' | tr \" \'
|
||||
+ rm $TEMPFILE
|
||||
+}
|
||||
+
|
||||
+list_build_dependencies()
|
||||
+{
|
||||
+ local BUILD_SYSTEM_DEPS_LIST="gettext-devel"
|
||||
+ echo $BUILD_SYSTEM_DEPS_LIST $(parse_build_requires_from_spec_file libreport)
|
||||
+}
|
||||
+
|
||||
+case "$1" in
|
||||
+ "--help"|"-h")
|
||||
+ print_help
|
||||
+ exit 0
|
||||
+ ;;
|
||||
+ "sysdeps")
|
||||
+ DEPS_LIST=$(list_build_dependencies)
|
||||
+
|
||||
+ if [ "$2" == "--install" ]; then
|
||||
+ set -x verbose
|
||||
+ eval sudo dnf install --setopt=strict=0 $DEPS_LIST
|
||||
+ set +x verbose
|
||||
+ else
|
||||
+ echo $DEPS_LIST
|
||||
+ fi
|
||||
+ exit 0
|
||||
+ ;;
|
||||
+ *)
|
||||
+ echo "Running gen-version"
|
||||
+ ./gen-version
|
||||
+
|
||||
+ mkdir -p m4
|
||||
+ echo "Creating m4/aclocal.m4 ..."
|
||||
+ test -r m4/aclocal.m4 || touch m4/aclocal.m4
|
||||
+
|
||||
+ echo "Running autopoint"
|
||||
+ autopoint --force || exit 1
|
||||
+
|
||||
+ echo "Running intltoolize..."
|
||||
+ intltoolize --force --copy --automake || exit 1
|
||||
+
|
||||
+ echo "Running aclocal..."
|
||||
+ aclocal || exit 1
|
||||
+
|
||||
+ echo "Running libtoolize..."
|
||||
+ libtoolize || exit 1
|
||||
+
|
||||
+ echo "Running autoheader..."
|
||||
+ autoheader || return 1
|
||||
+
|
||||
+ echo "Running autoconf..."
|
||||
+ autoconf --force || exit 1
|
||||
+
|
||||
+ echo "Running automake..."
|
||||
+ automake --add-missing --force --copy || exit 1
|
||||
+
|
||||
+ echo "Running configure ..."
|
||||
+ if [ 0 -eq $# ]; then
|
||||
+ ./configure \
|
||||
+ --prefix=/usr \
|
||||
+ --sysconfdir=/etc \
|
||||
+ --localstatedir=/var \
|
||||
+ --sharedstatedir=/var/lib \
|
||||
+ --mandir=/usr/share/man \
|
||||
+ --infodir=/usr/share/info \
|
||||
+ --enable-debug
|
||||
+ echo "Configured for local debugging ..."
|
||||
+ else
|
||||
+ ./configure "$@"
|
||||
+ fi
|
||||
+ ;;
|
||||
+esac
|
||||
--
|
||||
2.21.0
|
||||
|
@ -29,7 +29,7 @@
|
||||
Summary: Generic library for reporting various problems
|
||||
Name: libreport
|
||||
Version: 2.9.5
|
||||
Release: 6%{?dist}
|
||||
Release: 9%{?dist}
|
||||
License: GPLv2+
|
||||
URL: https://abrt.readthedocs.org/
|
||||
Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||
@ -51,6 +51,19 @@ Patch0014: 0014-coverity-Remove-check-for-null-pointer-with-no-effec.patch
|
||||
Patch0015: 0015-coverity-Check-return-value-of-fstat-call-def31.patch
|
||||
Patch0016: 0016-coverity-Remove-reverse-inull-def30.patch
|
||||
Patch0017: 0017-coverity-Remove-deadcode-def47.patch
|
||||
#Patch0018: 0018-Make-this-build-without-usr-bin-python.patch
|
||||
Patch0019: 0019-bugzilla-change-the-default-bugzilla-group.patch
|
||||
Patch0020: 0020-lib-dump_dir-Clean-up-on-failure-in-dd_delete.patch
|
||||
Patch0021: 0021-cli-Unpack-command-line-argument-parsing-logic.patch
|
||||
Patch0022: 0022-plugins-rhbz-Don-t-call-strlen-on-attachment-data.patch
|
||||
Patch0023: 0023-tests-Disable-strcpm-ing-a-freed-pointer.patch
|
||||
#git format-patch -N --start-number=24
|
||||
Patch0024: 0024-lib-fix-a-SEGV-in-list_possible_events.patch
|
||||
#git format-patch -N --start-number=25
|
||||
|
||||
|
||||
# autogen.sh is need to regenerate all the Makefile files
|
||||
Patch9000: 9000-Add-autogen.sh.patch
|
||||
|
||||
BuildRequires: %{dbus_devel}
|
||||
BuildRequires: gtk3-devel
|
||||
@ -379,6 +392,7 @@ data over ftp/scp...
|
||||
%autosetup -S git
|
||||
|
||||
%build
|
||||
./autogen.sh
|
||||
autoconf
|
||||
|
||||
CFLAGS="%{optflags} -Werror" %configure \
|
||||
@ -833,6 +847,19 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Fri Jul 29 2019 Martin Kutlak <mkutlak@redhat.com> - 2.9.5-9
|
||||
- lib: fix a SEGV in list_possible_events()
|
||||
- Resolves: rhbz#1733515
|
||||
|
||||
* Wed Jul 24 2019 Ernestas Kulik <ekulik@redhat.com> - 2.9.5-8
|
||||
- Uncomment some patches for Coverity issues
|
||||
|
||||
* Tue Jul 16 2019 Michal Fabik <mfabik@redhat.com> 2.9.5-7
|
||||
- bugzilla: change the default bugzilla group
|
||||
- tests: Disable strcpm'ing a freed pointer
|
||||
- Add autogen.sh
|
||||
- Resolves #1660449
|
||||
|
||||
* Wed Aug 29 2018 Matej Habrnal <mhabrnal@redhat.com> 2.9.5-6
|
||||
- replace all Fedora URLs by corresponding values for RHEL
|
||||
- fix coverity issues
|
||||
|
Loading…
Reference in New Issue
Block a user