Compare commits

...

17 Commits
rawhide ... f23

Author SHA1 Message Date
Matej Habrnal 933436886c Translation updates + some bug fixes
- use findmnt to get mountpoint abrt_harvest_vmcore.py
- correct handling of DebuginfoLocation in a-a-install-debuginfo
- koops: do not assume version has 3 levels
- a-dump-journal-xorg: add '_COMM=gnome-shell' to journal filter

Resolves: #1334084, #1343826

Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2016-07-18 15:58:18 +02:00
Matej Habrnal 6036ecae87 revert "CCpp-turn-off-compat-cores" commit
The commit 10a3ff45b150fe426624080abf903242af3ac201 was accidentally backported
to f23. It make sense only if systemd>=229.

Resolves #1330734

Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2016-04-27 09:50:29 +02:00
Matej Habrnal 6ea6b80612 Fix BrokenPipe error in a-a-install-debuginfo
Related to #1255259

Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2016-04-08 17:20:38 +02:00
Matej Habrnal 928092fdd4 Blacklist Firefox's plugin-container and turn off compat cores 2016-02-23 16:09:42 +01:00
Matej Habrnal d64d53d848 Drop %e from the core_pattern
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2016-02-10 10:53:15 +01:00
Matej Habrnal fafda1e6e1 New version 2.8.0
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2016-02-03 15:08:03 +01:00
Matej Habrnal 8d43d4cf0a New version 2.7.2
esolves: #1277872, #1287302, #1291976

Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2016-02-02 14:45:28 +01:00
Jakub Filak 1684aef22e New upstream release 2.7.1
CVE-2015-5273, CVE-2015-5287

Resolves: #1262252, #1284557
2015-11-23 18:39:51 +01:00
Jakub Filak e95b9d4bf0 Fix broken problem details in abrt-cli/gnome-abrt
Resolves: #1256456
2015-10-28 00:37:52 +01:00
Matej Habrnal 1d09193382 New version 2.7.0
Resolves #1264739

Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2015-10-16 10:11:35 +02:00
Matej Habrnal 740ee7d77f bodhi: fix a segfault when testing an os-release opt for 'rawhide'
and actualize the abrt-bodhi man page

Resolves: rhbz#1260259

Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2015-09-17 11:19:52 +02:00
Kalev Lember c0ac6bf7d0 Rebuilt for librpm soname bump 2015-09-05 13:56:58 +02:00
Matej Habrnal 51750f1acd Bug fixes
- introduce bodhi2 to abrt-bodhi
- don't start reporting of not-reportable problems
- add hawkey to BRs of abrt-bodhi
- add bash on the package blacklist

Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2015-08-26 17:48:03 +02:00
Matej Habrnal 3674e68fe2 Fix bugs in a-auto-reporting, dbus, a-hook-ccpp and abrt-cli
Correct usage of abrt-gdb-exploitable.

Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2015-08-17 10:07:47 +02:00
Matej Habrnal c40d958f7b Fixes related to transition to Python 3 and fix in abrt-merge-pstoreoops
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2015-07-24 15:22:08 +02:00
Matej Habrnal 7a4635b808 Use gettext instead of lgettext in all python scripts
Resolves: #1245600

Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
2015-07-22 18:34:11 +02:00
Jakub Filak 92444bf967 New upstream release 2.6.2
Resolves: #1192080

Signed-off-by: Jakub Filak <jfilak@redhat.com>
2015-07-20 16:40:01 +02:00
27 changed files with 123652 additions and 46 deletions

3
.gitignore vendored
View File

@ -43,3 +43,6 @@ abrt-1.1.13.tar.gz
/abrt-2.5.1.tar.gz
/abrt-2.6.0.tar.gz
/abrt-2.6.1.tar.gz
/abrt-2.6.2.tar.gz
/abrt-2.7.0.tar.gz
/abrt-2.7.1.tar.gz

View File

@ -0,0 +1,99 @@
From 51531e9ea72af09571688a20f00e55cad5fe9c3a Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Tue, 9 Feb 2016 17:55:29 +0100
Subject: [PATCH] ccpp: drop %e from the core_pattern
The argument is no longer need and it must be placed either at the end
of the command or enclosed with '' as it can contain white space.
Threads can have an arbitrary name:
man 3 pthread_setname_np
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
src/hooks/abrt-hook-ccpp.c | 16 ++++++++--------
src/hooks/abrt-install-ccpp-hook.in | 12 +-----------
2 files changed, 9 insertions(+), 19 deletions(-)
diff --git a/src/hooks/abrt-hook-ccpp.c b/src/hooks/abrt-hook-ccpp.c
index 8f1b813..dfe9526 100644
--- a/src/hooks/abrt-hook-ccpp.c
+++ b/src/hooks/abrt-hook-ccpp.c
@@ -143,9 +143,9 @@ static struct dump_dir *dd;
* %u - uid
* %g - gid
* %t - UNIX time of dump
- * %e - executable filename
- * %i - crash thread tid
* %P - global pid
+ * %I - crash thread tid
+ * %e - executable filename (can contain white spaces)
* %% - output one "%"
*/
/* Hook must be installed with exactly the same sequence of %c specifiers.
@@ -661,9 +661,9 @@ int main(int argc, char** argv)
if (argc < 8)
{
- /* percent specifier: %s %c %p %u %g %t %e %P %i*/
- /* argv: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]*/
- error_msg_and_die("Usage: %s SIGNO CORE_SIZE_LIMIT PID UID GID TIME BINARY_NAME GLOBAL_PID [TID]", argv[0]);
+ /* percent specifier: %s %c %p %u %g %t %P %T */
+ /* argv: [0] [1] [2] [3] [4] [5] [6] [7] [8] */
+ error_msg_and_die("Usage: %s SIGNO CORE_SIZE_LIMIT PID UID GID TIME GLOBAL_PID GLOBAL_TID", argv[0]);
}
/* Not needed on 2.6.30.
@@ -704,8 +704,8 @@ int main(int argc, char** argv)
/* set to max possible >0 value */
ulimit_c = ~((off_t)1 << (sizeof(off_t)*8-1));
}
- const char *global_pid_str = argv[8];
- pid_t pid = xatoi_positive(argv[8]);
+ const char *global_pid_str = argv[7];
+ pid_t pid = xatoi_positive(argv[7]);
user_pwd = get_cwd(pid); /* may be NULL on error */
log_notice("user_pwd:'%s'", user_pwd);
@@ -867,7 +867,7 @@ int main(int argc, char** argv)
signal_no, signame, "dumping core");
pid_t tid = -1;
- const char *tid_str = argv[9];
+ const char *tid_str = argv[8];
if (tid_str)
{
tid = xatoi_positive(tid_str);
diff --git a/src/hooks/abrt-install-ccpp-hook.in b/src/hooks/abrt-install-ccpp-hook.in
index 707c57d..660c209 100755
--- a/src/hooks/abrt-install-ccpp-hook.in
+++ b/src/hooks/abrt-install-ccpp-hook.in
@@ -11,9 +11,7 @@ SAVED_PATTERN_DIR="@VAR_RUN@/abrt"
SAVED_PATTERN_FILE="@VAR_RUN@/abrt/saved_core_pattern"
HOOK_BIN="@libexecdir@/abrt-hook-ccpp"
# Must match percent_specifiers[] order in abrt-hook-ccpp.c:
-PATTERN="|$HOOK_BIN %s %c %p %u %g %t %e %P %I"
-# Same, but with bogus "executable name" parameter
-PATTERN1="|$HOOK_BIN %s %c %p %u %g %t e %P %I"
+PATTERN="|$HOOK_BIN %s %c %p %u %g %t %P %I"
# core_pipe_limit specifies how many dump_helpers can run at the same time
# 0 - means unlimited, but it's not guaranteed that /proc/<pid> of crashing
@@ -39,14 +37,6 @@ start() {
cur=`cat "$PATTERN_FILE"`
cur_first=`printf "%s" "$cur" | sed 's/ .*//'`
- # Is there a %e (executable name) in old pattern anywhere?
- if test x"${cur#*%e}" = x"${cur}"; then
- # No. Can use PATTERN with less risk of overflow
- # on expansion (executable names can be LONG).
- # Overflow would cause kernel to abort coredump. BAD.
- PATTERN="$PATTERN1"
- fi
-
$verbose && printf "cur:'%s'\n" "$cur"
# Is it already installed?
if test x"$cur_first" != x"|$HOOK_BIN"; then # no
--
2.5.0

92383
0003-Translation-updates.patch Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,26 @@
From 0a918dd4d1aee2a90de212f932c01081c73791cd Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Thu, 11 Feb 2016 15:26:27 +0100
Subject: [PATCH] translations: add missing new line
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
po/km.po | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/po/km.po b/po/km.po
index 84bb1b1..ab7a684 100644
--- a/po/km.po
+++ b/po/km.po
@@ -137,7 +137,7 @@ msgid ""
"\n"
"Applet which notifies user when new problems are detected by ABRT\n"
msgstr ""
-"Applet ដែលបានជូនដំណឹងអ្នកប្រើនៅពេលដែលមានបញ្ហាថ្មីត្រូវបានរកឃើញដោយ ABRT"
+"Applet ដែលបានជូនដំណឹងអ្នកប្រើនៅពេលដែលមានបញ្ហាថ្មីត្រូវបានរកឃើញដោយ ABRT\n"
#: ../src/configuration-gui/abrt-config-widget.c:483
msgid ""
--
2.5.0

View File

@ -0,0 +1,25 @@
From 7dca143dd91229e0dad78bcdead6748ecf27cbd3 Mon Sep 17 00:00:00 2001
From: Yuri Chornoivan <yurchor@ukr.net>
Date: Fri, 12 Feb 2016 22:51:18 +0200
Subject: [PATCH] Fix minor typo: possition -> position
---
src/plugins/abrt-dump-journal-xorg.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/plugins/abrt-dump-journal-xorg.c b/src/plugins/abrt-dump-journal-xorg.c
index 87dfe13..1ede56f 100644
--- a/src/plugins/abrt-dump-journal-xorg.c
+++ b/src/plugins/abrt-dump-journal-xorg.c
@@ -147,7 +147,7 @@ int main(int argc, char *argv[])
"-c and -e options conflicts because both specifies the first read message.\n"
"\n"
"-e is useful only for -f because the following of journal starts by reading \n"
- "the entire journal if the last seen possition is not available.\n"
+ "the entire journal if the last seen position is not available.\n"
"\n"
"The last seen position is saved in %s\n"
"\n"
--
2.5.0

View File

@ -0,0 +1,33 @@
From a136d0c7b8aa72e7cf60e1255504191f1e9ac800 Mon Sep 17 00:00:00 2001
From: Matej Habrnal <mhabrnal@redhat.com>
Date: Tue, 16 Feb 2016 10:53:06 +0100
Subject: [PATCH] a-a-save-package-data: blacklist
/usr/lib(64)/firefox/plugin-container
/usr/lib(64)/firefox/plugin-container is a sandbox/launcher for Firefox
plug-ins. When it crases Firefox loads it again so we don't want those crashes
reported.
Related to: rhbz#1308840
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
---
src/daemon/abrt-action-save-package-data.conf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/daemon/abrt-action-save-package-data.conf b/src/daemon/abrt-action-save-package-data.conf
index 58f5061..f3a808f 100644
--- a/src/daemon/abrt-action-save-package-data.conf
+++ b/src/daemon/abrt-action-save-package-data.conf
@@ -15,7 +15,7 @@ ProcessUnpackaged = yes
# Blacklisted executable paths (shell patterns)
#
-BlackListedPaths = /usr/share/doc/*, */example*, /usr/bin/nspluginviewer
+BlackListedPaths = /usr/share/doc/*, */example*, /usr/bin/nspluginviewer, /usr/lib*/firefox/plugin-container
# interpreters names
Interpreters = python2, python2.7, python, python3, python3.3, python3.4, python3.5, perl, perl5.16.2
--
2.5.0

View File

@ -0,0 +1,85 @@
From 715fcfb5d83faa29f8d221d0e2d800b08261810a Mon Sep 17 00:00:00 2001
From: Matej Habrnal <mhabrnal@redhat.com>
Date: Tue, 8 Mar 2016 16:42:31 +0100
Subject: [PATCH] a-a-install-debuginfo: make tmpdir variable global
Function clean_up() has one required parameter tmpdir.
Without this commit clean_up() function raises an exception because it was
called without the parameter.
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
---
src/plugins/abrt-action-install-debuginfo.in | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/plugins/abrt-action-install-debuginfo.in b/src/plugins/abrt-action-install-debuginfo.in
index f70ebcd..7818ffd 100644
--- a/src/plugins/abrt-action-install-debuginfo.in
+++ b/src/plugins/abrt-action-install-debuginfo.in
@@ -20,7 +20,8 @@ import problem
RETURN_OK = 0
# serious problem, should be logged somewhere
RETURN_FAILURE = 2
-
+# path to tmp directory has to be global because of clean_up()
+TMPDIR = None
GETTEXT_PROGNAME = "abrt"
import locale
@@ -43,11 +44,11 @@ def init_gettext():
gettext.textdomain(GETTEXT_PROGNAME)
def sigterm_handler(signum, frame):
- clean_up()
+ clean_up(TMPDIR)
exit(RETURN_OK)
def sigint_handler(signum, frame):
- clean_up()
+ clean_up(TMPDIR)
print("\n{0}".format(_("Exiting on user command")))
sys.stdout.flush()
# ??! without "sys.", I am getting segv!
@@ -63,7 +64,6 @@ if __name__ == "__main__":
fbuild_ids = "build_ids"
cachedirs = []
size_mb = 4096
- tmpdir = None
keeprpms = False
noninteractive = False
b_ids = []
@@ -135,7 +135,7 @@ if __name__ == "__main__":
except:
pass
elif opt == "--tmpdir":
- tmpdir = arg
+ TMPDIR = arg
elif opt == "--keeprpms":
keeprpms = True
# --exact takes precendece over --ids
@@ -159,11 +159,11 @@ if __name__ == "__main__":
if not cachedirs:
cachedirs = ["/var/cache/abrt-di"]
- if not tmpdir:
+ if not TMPDIR:
# security people prefer temp subdirs in app's private dir, like /var/run/abrt
# and we switched to /tmp but Fedora feature tmp-on-tmpfs appeared, hence we must
# not use /tmp for potential big data anymore
- tmpdir = "@LARGE_DATA_TMP_DIR@/abrt-tmp-debuginfo-%s.%u" % (time.strftime("%Y-%m-%d-%H:%M:%S"), os.getpid())
+ TMPDIR = "@LARGE_DATA_TMP_DIR@/abrt-tmp-debuginfo-%s.%u" % (time.strftime("%Y-%m-%d-%H:%M:%S"), os.getpid())
if missing == None:
@@ -235,7 +235,7 @@ if __name__ == "__main__":
sys.exit(RETURN_FAILURE)
# TODO: should we pass keep_rpms=keeprpms to DebugInfoDownload here??
- downloader = download_class(cache=cachedirs[0], tmp=tmpdir,
+ downloader = download_class(cache=cachedirs[0], tmp=TMPDIR,
noninteractive=noninteractive,
repo_pattern=repo_pattern)
try:
--
2.5.5

View File

@ -0,0 +1,49 @@
From a999c2e9c25a46ffeff0c67ad9b9177d640a4b87 Mon Sep 17 00:00:00 2001
From: Matej Habrnal <mhabrnal@redhat.com>
Date: Tue, 8 Mar 2016 16:45:36 +0100
Subject: [PATCH] a-a-install-debuginfo: fix BrokenPipe error
While debug info is downloading and stop button is pressed the BrokenPipe
error appears.
If the stop button is pressed, gui wizard sends SIGTERM to all
processes with the same group ID so abrt-action-install-debuginfo got SIGTERM
as well. It has its own SIGTERM handler which calls clean_up() function and it
takes a while before the tool is terminated.
abrt-action-install-debuginfo tries to write some messages to the closed socket
during the clean_up process and it raises a BrokenPipe exception. We must
ensure that no message will be printed after SIGTERM is recieved.
Related to: #1255259
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
---
src/plugins/abrt-action-install-debuginfo.in | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/plugins/abrt-action-install-debuginfo.in b/src/plugins/abrt-action-install-debuginfo.in
index 7818ffd..e4a7dfd 100644
--- a/src/plugins/abrt-action-install-debuginfo.in
+++ b/src/plugins/abrt-action-install-debuginfo.in
@@ -44,7 +44,7 @@ def init_gettext():
gettext.textdomain(GETTEXT_PROGNAME)
def sigterm_handler(signum, frame):
- clean_up(TMPDIR)
+ clean_up(TMPDIR, silent=True)
exit(RETURN_OK)
def sigint_handler(signum, frame):
@@ -241,6 +241,9 @@ if __name__ == "__main__":
try:
result = downloader.download(missing, download_exact_files=exact_fls)
except Exception as ex:
+ if ex.errno == errno.EPIPE:
+ clean_up(TMPDIR, silent=True)
+ exit(RETURN_FAILURE)
error_msg_and_die("Can't download debuginfos: %s", ex)
if exact_fls:
--
2.5.5

View File

@ -0,0 +1,282 @@
From 92c847ef13cd721a37187c5878a05b54df48114a Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Sat, 20 Feb 2016 08:27:32 +0100
Subject: [PATCH] Add basic documentation
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
CONTRIBUTING.md | 94 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
INSTALL | 7 -----
INSTALL.md | 56 ++++++++++++++++++++++++++++++++++
Makefile.am | 2 ++
README | 11 -------
README.md | 48 +++++++++++++++++++++++++++++
6 files changed, 200 insertions(+), 18 deletions(-)
create mode 100644 CONTRIBUTING.md
delete mode 100644 INSTALL
create mode 100644 INSTALL.md
delete mode 100644 README
create mode 100644 README.md
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..4b27138
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,94 @@
+# Contributing to ABRT
+
+Adopted from http://www.contribution-guide.org/
+
+BSD, Copyright (c) 2015 Jeff Forcier
+
+## Submitting bugs
+
+### Due diligence
+
+Before submitting a bug, please do the following:
+
+* Perform **basic troubleshooting** steps:
+
+ * **Make sure you're on the latest version.** If you're not on the most
+ recent version, your problem may have been solved already! Upgrading is
+ always the best first step.
+ * **Try older versions.** If you're already *on* the latest release, try
+ rolling back a few minor versions (e.g. if on 1.7, try 1.5 or 1.6) and
+ see if the problem goes away. This will help the devs narrow down when
+ the problem first arose in the commit log.
+ * **Try switching up dependency versions.** If the software in question has
+ dependencies (other libraries, etc) try upgrading/downgrading those as
+ well.
+
+* **Search the project's bug/issue tracker** to make sure it's not a known issue.
+* If you don't find a pre-existing issue, consider **checking with the mailing
+ list and/or IRC channel** in case the problem is non-bug-related.
+* Consult [README.md](README.md) for links to bugtracker, mailinglist or IRC.
+
+### What to put in your bug report
+
+Make sure your report gets the attention it deserves: bug reports with missing
+information may be ignored or punted back to you, delaying a fix. The below
+constitutes a bare minimum; more info is almost always better:
+
+* **What version of the core programming language interpreter/compiler are you
+ using?** For example, if it's a Python project, are you using Python 2.7.3?
+ Python 3.3.1? PyPy 2.0?
+* **What operating system are you on?** Make sure to include release and distribution.
+* **Which version or versions of the software are you using?** Ideally, you
+ followed the advice above and have ruled out (or verified that the problem
+ exists in) a few different versions.
+* **How can the developers recreate the bug on their end?** If possible,
+ include a copy of your code, the command you used to invoke it, and the full
+ output of your run (if applicable.)
+
+ * A common tactic is to pare down your code until a simple (but still
+ bug-causing) "base case" remains. Not only can this help you identify
+ problems which aren't real bugs, but it means the developer can get to
+ fixing the bug faster.
+
+
+## Contributing changes
+
+It would be the best if you could discuss your plans with us on #abrt or on our
+mailinig list crash-catcher@lists.fedorahosted.org before you spent too much
+energy and time.
+
+Before contributing, please, make yourself familiar with git. You can [try git
+online](https://try.github.io/). Things would be easier for all of us if you do
+your changes on a branch. Use a single commit for every logical reviewable
+change, without unrelated modifications (that will help us if need to revert a
+particular commit). Please avoid adding commits fixing your previous
+commits, do amend or rebase instead.
+
+Every commit must have either comprehensive commit message saying what is being
+changed and why or a link (an issue number on Github) to a bug report where
+this information is available. It is also useful to include notes about
+negative decisions - i.e. why you decided to not do particular things. Please
+bare in mind that other developers might not understand what the original
+problem was.
+
+### Full example
+
+Here's an example workflow for a project `abrt` hosted on Github
+Your username is `yourname` and you're submitting a basic bugfix or feature.
+
+* Hit 'fork' on Github, creating e.g. `yourname/abrt`.
+* `git clone git@github.com:yourname/abrt`
+* `cd abrt`
+* `git checkout -b foo_the_bars` to create new local branch named foo_the_bars
+* Hack, hack, hack
+* Run `make check`
+* `git status`
+* `git add`
+* `git commit -s -m "Foo the bars"`
+* `git push -u origin HEAD` to create foo_the_bars branch in your fork
+* Visit your fork at Github and click handy "Pull request" button.
+* In the description field, write down issue number (if submitting code fixing
+ an existing issue) or describe the issue + your fix (if submitting a wholly
+ new bugfix).
+* Hit 'submit'! And please be patient - the maintainers will get to you when
+ they can.
diff --git a/INSTALL b/INSTALL
deleted file mode 100644
index 799a4a6..0000000
--- a/INSTALL
+++ /dev/null
@@ -1,7 +0,0 @@
-How to install
-==============
-
-1. autogen.sh
-2. ./configure
-3. make
-4. make install
diff --git a/INSTALL.md b/INSTALL.md
new file mode 100644
index 0000000..96d42c4
--- /dev/null
+++ b/INSTALL.md
@@ -0,0 +1,56 @@
+# How to install
+
+### Development dependencies
+
+Build dependencies can be listed by:
+
+ $ ./autogen.sh sysdeps
+
+or installed by:
+
+ $ ./autogen.sh sysdeps --install
+
+The dependency installer gets the data from [the rpm spec file](abrt.spec.in)
+
+### Building from sources
+
+When you have all dependencies installed run the following commands:
+
+ $ ./autogen.sh --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --sharedstatedir=/var/lib
+
+ $ make
+
+or if you want to debug ABRT run:
+
+ $ CFLAGS="-g -g3 -ggdb -ggdb3 -O0" ./autogen.sh --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --sharedstatedir=/var/lib \
+ --enable-debug
+
+ $ make
+
+### Checking
+
+ABRT uses [Autotest](http://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Using-Autotest.html)
+to validate source codes. Run the test by:
+
+ $ make check
+
+If you want to search for memory issues, build ABRT with debug options and then
+run:
+
+ $ make maintainer-check
+
+### Installing
+
+If you need an rpm package, run:
+
+ $ make rpm
+
+otherwise run:
+
+ $ make install
diff --git a/Makefile.am b/Makefile.am
index 01b8a97..e528c93 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -36,6 +36,8 @@ EXTRA_DIST = doc/coding-style abrt.spec.in abrt.pc.in \
abrt-version asciidoc.conf init-scripts/* $(TESTSUITE_FILES) \
augeas/test_abrt.aug
+dist_doc_DATA = README.md
+
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = abrt.pc
diff --git a/README b/README
deleted file mode 100644
index 26cbbcb..0000000
--- a/README
+++ /dev/null
@@ -1,11 +0,0 @@
-These sources are in early stages. They are changing every day :-)...
-Anyway, patches are welcome.
-
-** Using Valgrind
-
-When running ABRT under memcheck, GLib's environment variables should
-be set to turn off glib's memory optimization, so valgrind is not
-confused:
-
-G_SLICE=always-malloc G_DEBUG=gc-friendly valgrind --tool=memcheck \
- --leak-check=full abrtd -dvvv
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..e58a499
--- /dev/null
+++ b/README.md
@@ -0,0 +1,48 @@
+# ABRT
+
+**A set of tools to help users detect and report application crashes.**
+
+### About
+
+Its main purpose is to ease the process of reporting an issue and finding a
+solution.
+
+The solution in this context might be a bugzilla ticket, knowledge base article
+or a suggestion to update a package to a version containing a fix.
+
+### Documentation
+
+Every ABRT program and configuration file has a man page describing it. It is
+also possible to [read the ABRT documentation](http://abrt.readthedocs.org/)
+online. For contributors and developers, there are also [wiki
+pages](https://github.com/abrt/abrt/wiki) describing some topics to deeper
+technical details.
+
+### Development
+
+ * IRC Channel: #abrt on FreeNode
+ * [Mailing List](https://lists.fedorahosted.org/admin/lists/crash-catcher.lists.fedorahosted.org/)
+ * [Bug Reports and RFEs](https://github.com/abrt/abrt/issues)
+ * [Contributing to ABRT](CONTRIBUTING.md)
+ * [Install and run ABRT](INSTALL.md)
+
+
+### Running
+
+ABRT consist of several services and many small utilities. While The utilities
+can be successfully run from the source directories after build, the services
+often uses the utilities to do actions and expect the utilities installed in
+the system directories. Hence to run the services, it is recommended to install
+ABRT first and run them as system services. The instructions how to build
+and install ABRT can be found in [INSTALL.md](INSTALL.md)
+
+### Technologies
+
+* [libreport](https://github.com/abrt/libreport) - problem data format, reporting
+* [satyr](https://github.com/abrt/satyr) - backtrace processing, micro-reports
+* [Python3](https://www.python.org/)
+* [GLib2](https://developer.gnome.org/glib/)
+* [Gtk3](https://developer.gnome.org/gtk3)
+* [D-Bus](https://www.freedesktop.org/wiki/Software/dbus/)
+* [SELinux](https://github.com/SELinuxProject/selinux/wiki)
+* [systemd](https://www.freedesktop.org/wiki/Software/systemd/)
--
2.5.5

View File

@ -0,0 +1,350 @@
From 193f2898d9bf3c7f971d2e37a846b61857e7eb77 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Tue, 5 Apr 2016 15:09:39 +0200
Subject: [PATCH] Merge a-a-save-kernel-data with a-a-save-package-data
I forgot to do this while working on commit
650822d0d2438825515c0e41f06cd9fb77a18334
I do not think creating another tool doing almost the same thing was a
good idea. I believe we must keep relevant bits together and not to
spread functionality among myriads of tools just because someone do not
want to code in C.
I failed to find any justification for creating
'abrt-action-save-kernel-data' instead of teaching
'abrt-action-save-package-data' to do that job:
130dee46d601f3af6bb196d99a5c911335506adf
This commit changes contents of 'package' file from 'kernel' to
'kernel-$version' string. It should not break anything as I could not
find any justification for the 'kernel' string except the original
author's believe it should be like that (probably because of efficiency).
Just for the record, we do not need the version in 'package' file
because the version is already included in 'kernel' file.
This commit enables GPGCheck and ProcessUnpackaged options for
Kerneloopses and VMcores.
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
doc/Makefile.am | 1 -
doc/abrt-action-save-kernel-data.txt | 33 -------------
src/daemon/abrt-action-save-package-data.c | 63 ++++++++++++++++--------
src/plugins/Makefile.am | 2 -
src/plugins/abrt-action-save-kernel-data | 78 ------------------------------
src/plugins/koops_event.conf | 3 +-
src/plugins/vmcore_event.conf | 2 +-
7 files changed, 46 insertions(+), 136 deletions(-)
delete mode 100644 doc/abrt-action-save-kernel-data.txt
delete mode 100755 src/plugins/abrt-action-save-kernel-data
diff --git a/doc/Makefile.am b/doc/Makefile.am
index d3184c4..4a5d94c 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -32,7 +32,6 @@ MAN1_TXT += abrt-merge-pstoreoops.txt
MAN1_TXT += abrt-server.txt
MAN1_TXT += abrt-cli.txt
MAN1_TXT += abrt-action-save-package-data.txt
-MAN1_TXT += abrt-action-save-kernel-data.txt
MAN1_TXT += abrt-install-ccpp-hook.txt
MAN1_TXT += abrt-action-analyze-ccpp-local.txt
MAN1_TXT += abrt-watch-log.txt
diff --git a/doc/abrt-action-save-kernel-data.txt b/doc/abrt-action-save-kernel-data.txt
deleted file mode 100644
index f82fa35..0000000
--- a/doc/abrt-action-save-kernel-data.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-abrt-action-save-kernel-data(1)
-================================
-
-NAME
-----
-abrt-action-save-kernel-data - Creates uReport mandatory files for kernel oopses.
-
-SYNOPSIS
---------
-'abrt-action-save-kernel-data'
-
-DESCRIPTION
------------
-The tool reads problem directory DIR. It analyzes contents of 'kernel' element,
-checks database of installed packages, and creates new elements
-'pkg_name', 'pkg_arch', 'pkg_version', 'pkg_release'.
-
-These files are required by reporter-ureporter (mandatory in uReport).
-
-Integration with ABRT events
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-This tool can be used as an ABRT reporter. Example
-fragment for /etc/libreport/report_event.conf:
-
-------------
-# Determine in which package/component the crash happened (if not yet done):
-EVENT=post-create analyzer=Kerneloops
- abrt-action-save-kernel-data
-------------
-
-AUTHORS
--------
-* ABRT team
diff --git a/src/daemon/abrt-action-save-package-data.c b/src/daemon/abrt-action-save-package-data.c
index 72c9878..6f8c80d 100644
--- a/src/daemon/abrt-action-save-package-data.c
+++ b/src/daemon/abrt-action-save-package-data.c
@@ -217,14 +217,7 @@ static int SavePackageDescriptionToDebugDump(const char *dump_dir_name, const ch
return 1;
char *type = dd_load_text(dd, FILENAME_TYPE);
- if (!strcmp(type, "Kerneloops"))
- {
- dd_save_text(dd, FILENAME_PACKAGE, "kernel");
- dd_save_text(dd, FILENAME_COMPONENT, "kernel");
- dd_close(dd);
- free(type);
- return 0;
- }
+ bool kernel_oops = !strcmp(type, "Kerneloops") || !strcmp(type, "vmcore");
free(type);
char *cmdline = NULL;
@@ -233,12 +226,32 @@ static int SavePackageDescriptionToDebugDump(const char *dump_dir_name, const ch
char *package_short_name = NULL;
struct pkg_envra *pkg_name = NULL;
char *component = NULL;
+ char *kernel = NULL;
int error = 1;
/* note: "goto ret" statements below free all the above variables,
* but they don't dd_close(dd) */
- cmdline = dd_load_text_ext(dd, FILENAME_CMDLINE, DD_FAIL_QUIETLY_ENOENT);
- executable = dd_load_text(dd, FILENAME_EXECUTABLE);
+ if (kernel_oops)
+ {
+ kernel = dd_load_text(dd, FILENAME_KERNEL);
+ if (!kernel)
+ {
+ log("File 'kernel' containing kernel version not "
+ "found in current directory");
+ goto ret;
+ }
+ /* Trim trailing white-spaces. */
+ strchrnul(kernel, ' ')[0] = '\0';
+
+ log_info("Looking for kernel package");
+ executable = xasprintf("/boot/vmlinuz-%s", kernel);
+ }
+ else
+ {
+ cmdline = dd_load_text_ext(dd, FILENAME_CMDLINE, DD_FAIL_QUIETLY_ENOENT);
+ executable = dd_load_text(dd, FILENAME_EXECUTABLE);
+ }
+
/* Do not implicitly query rpm database in process's root dir, if
* ExploreChroots is disabled. */
@@ -249,8 +262,12 @@ static int SavePackageDescriptionToDebugDump(const char *dump_dir_name, const ch
/* Close dd while we query package database. It can take some time,
* don't want to keep dd locked longer than necessary */
dd_close(dd);
+ dd = NULL;
- if (is_path_blacklisted(executable))
+ /* The check for kernel_oops is there because it could be an unexpected
+ * behaviour. If one wants to ignore kernel oops, she/he should disable
+ * the corresponding services. */
+ if (!kernel_oops && is_path_blacklisted(executable))
{
log("Blacklisted executable '%s'", executable);
goto ret; /* return 1 (failure) */
@@ -265,13 +282,17 @@ static int SavePackageDescriptionToDebugDump(const char *dump_dir_name, const ch
"proceeding without packaging information", executable);
goto ret0; /* no error */
}
- log("Executable '%s' doesn't belong to any package"
- " and ProcessUnpackaged is set to 'no'",
- executable
- );
+ if (kernel_oops)
+ log("Can't find kernel package corresponding to '%s'", kernel);
+ else
+ log("Executable '%s' doesn't belong to any package"
+ " and ProcessUnpackaged is set to 'no'", executable);
goto ret; /* return 1 (failure) */
}
+ if (kernel_oops)
+ goto skip_interperter;
+
/* Check well-known interpreter names */
const char *basename = strrchr(executable, '/');
if (basename)
@@ -314,11 +335,14 @@ static int SavePackageDescriptionToDebugDump(const char *dump_dir_name, const ch
pkg_name = script_pkg;
}
+skip_interperter:
package_short_name = xasprintf("%s", pkg_name->p_name);
log_info("Package:'%s' short:'%s'", pkg_name->p_nvr, package_short_name);
-
- if (g_list_find_custom(settings_setBlackListedPkgs, package_short_name, (GCompareFunc)g_strcmp0))
+ /* The check for kernel_oops is there because it could be an unexpected
+ * behaviour. If one wants to ignore kernel oops, she/he should disable
+ * the corresponding services. */
+ if (!kernel_oops && g_list_find_custom(settings_setBlackListedPkgs, package_short_name, (GCompareFunc)g_strcmp0))
{
log("Blacklisted package '%s'", package_short_name);
goto ret; /* return 1 (failure) */
@@ -358,11 +382,12 @@ static int SavePackageDescriptionToDebugDump(const char *dump_dir_name, const ch
if (component)
dd_save_text(dd, FILENAME_COMPONENT, component);
- dd_close(dd);
-
ret0:
error = 0;
ret:
+ if (dd)
+ dd_close(dd);
+
free(cmdline);
free(executable);
free(rootdir);
diff --git a/src/plugins/Makefile.am b/src/plugins/Makefile.am
index 005cc9d..2c9028b 100644
--- a/src/plugins/Makefile.am
+++ b/src/plugins/Makefile.am
@@ -6,7 +6,6 @@ bin_SCRIPTS = \
abrt-action-analyze-vulnerability \
abrt-action-list-dsos \
abrt-action-perform-ccpp-analysis \
- abrt-action-save-kernel-data \
abrt-action-analyze-ccpp-local \
abrt-action-notify
@@ -101,7 +100,6 @@ EXTRA_DIST = \
analyze_RetraceServer.xml.in \
abrt-action-analyze-core.in \
abrt-action-generate-machine-id \
- abrt-action-save-kernel-data \
abrt-action-ureport \
abrt-gdb-exploitable \
https-utils.h \
diff --git a/src/plugins/abrt-action-save-kernel-data b/src/plugins/abrt-action-save-kernel-data
deleted file mode 100755
index f8b18f0..0000000
--- a/src/plugins/abrt-action-save-kernel-data
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/bin/bash
-#
-# Save pkg_{name, arch, version, release} for kernel oopses.
-#
-# These files are required by reporter-ureporter (mandatory
-# in uReport).
-#
-
-function print_usage
-{
- echo "Usage: abrt-action-save-package-data [OPTION]"
- echo ""
- echo " -r, --root ROOT use ROOT as top level directory"
- echo " -h, --help Show this help message"
-}
-
-ROOT="/"
-
-while [ $# -gt 0 ];
-do
- case "$1" in
- "-r"|"--root")
- if [ -z "$2" ]; then
- >&2
- echo "$1: requires argument"
- print_usage
- exit 1
- fi
-
- ROOT=$2
- shift
- ;;
-
- "-h"|"--help")
- echo "Save pkg_{name, arch, version, release} for kernel oopses."
- echo ""
- echo "These files are required by reporter-ureporter (mandatory"
- echo "in uReport)."
-
- print_usage
- exit 0
- ;;
-
- *)
- >&2
- echo "$1: unknown option"
- echo
- print_usage
- exit 1
- ;;
- esac
-
- shift
-done
-
-if [ ! -f kernel ]; then
- echo "File 'kernel' containing kernel version not found in current directory"
- exit 1
-fi
-
-echo "Looking for kernel package"
-kernel_version="$( sed 's/ .*//' kernel )"
-
-package="$( rpm --root $ROOT -qf "/boot/vmlinuz-$kernel_version" )"
-if [ $? != 0 ]; then
- echo "Can't find kernel package corresponding to '$kernel_version'"
- echo "Can't record package version data (pkg_version, pkg_release, ...)."
- exit 1
-fi
-
-echo "Kernel package $package found"
-rpm --root $ROOT -q --qf "%{name}\n" "$package" > pkg_name
-rpm --root $ROOT -q --qf "%{arch}\n" "$package" > pkg_arch
-rpm --root $ROOT -q --qf "%{version}\n" "$package" > pkg_version
-rpm --root $ROOT -q --qf "%{release}\n" "$package" > pkg_release
-epoch="$( rpm --root $ROOT -q --qf "%{epoch}" "$package" )"
-test "$epoch" = "(none)" && epoch=0
-echo "$epoch" > pkg_epoch
diff --git a/src/plugins/koops_event.conf b/src/plugins/koops_event.conf
index df7e446..f273ba2 100644
--- a/src/plugins/koops_event.conf
+++ b/src/plugins/koops_event.conf
@@ -16,8 +16,7 @@ EVENT=post-create type=Kerneloops remote!=1
if test ! -f uuid -a ! -f duphash; then
abrt-action-analyze-oops || exit 1
fi
- } &&
- abrt-action-save-kernel-data
+ }
# If you want behavior similar to one provided by kerneloops daemon
diff --git a/src/plugins/vmcore_event.conf b/src/plugins/vmcore_event.conf
index ae4dc9f..61bc9d1 100644
--- a/src/plugins/vmcore_event.conf
+++ b/src/plugins/vmcore_event.conf
@@ -34,7 +34,7 @@ EVENT=post-create type=vmcore remote!=1
# analyze
EVENT=analyze_VMcore type=vmcore
abrt-action-analyze-oops &&
- abrt-action-save-kernel-data
+ abrt-action-save-package-data
# If you want behavior similar to one provided by kerneloops daemon
# distributed by kerneloops.org - that is, if you want
--
2.7.4

View File

@ -0,0 +1,28 @@
From 293f42b82ef4ac23b8d5327d32697f7308c3f76b Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Tue, 26 Apr 2016 08:18:36 +0200
Subject: [PATCH] a-retrace-client: format security
https://github.com/pld-linux/abrt/blob/d3f5b5cc7b5d86f4a4912d980a99d4c90024440d/format_security.patch
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
src/plugins/abrt-retrace-client.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/plugins/abrt-retrace-client.c b/src/plugins/abrt-retrace-client.c
index 540cdc9..ae5ef83 100644
--- a/src/plugins/abrt-retrace-client.c
+++ b/src/plugins/abrt-retrace-client.c
@@ -760,7 +760,7 @@ static int create(bool delete_temp_archive,
if (response_code == 500 || response_code == 507)
{
alert_server_error(cfg.url);
- error_msg_and_die(http_body);
+ error_msg_and_die("%s", http_body);
}
else if (response_code == 403)
{
--
2.7.4

View File

@ -0,0 +1,25 @@
From 553bd2b7842a1f23510f4083b7a4762396381edb Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Tue, 26 Apr 2016 08:24:13 +0200
Subject: [PATCH] a-console-notification: do not leak variables
https://github.com/pld-linux/abrt/blob/adb4721f7f60f7c00f7f5e4f5f382207636140f3/profile.sh.patch
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
src/cli/abrt-console-notification.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/cli/abrt-console-notification.sh b/src/cli/abrt-console-notification.sh
index a98f164..f1a79ff 100755
--- a/src/cli/abrt-console-notification.sh
+++ b/src/cli/abrt-console-notification.sh
@@ -40,3 +40,5 @@ if [ -f "$TMPPATH" ]; then
fi
timeout 10s abrt-cli status --since="$SINCE" 2>"$ABRT_DEBUG_LOG" || echo "'abrt-cli status' timed out"
+
+unset ABRT_DEBUG_LOG LPATHDIR SINCEFILE TMPPATH SINCE
--
2.7.4

View File

@ -0,0 +1,64 @@
From 16a8cbb75b69c36b7858004d605c24edc6806763 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Wed, 27 Apr 2016 09:36:10 +0200
Subject: [PATCH] a-a-install-debuginfo: correct handling of DebuginfoLocation
DebuginfoLocation is a list of colon separated file systemd paths, where
the first path is a directory for storing downloaded debuginfo data.
Related #1135
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
src/hooks/CCpp.conf | 10 +++++++++-
src/plugins/abrt-action-install-debuginfo.in | 6 ++++--
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/src/hooks/CCpp.conf b/src/hooks/CCpp.conf
index 025189a..2466aff 100644
--- a/src/hooks/CCpp.conf
+++ b/src/hooks/CCpp.conf
@@ -31,7 +31,15 @@ SaveFullCore = yes
# Used for debugging the hook
#VerboseLog = 2
-# Specify where you want to store debuginfos (default: /var/cache/abrt-di)
+# Specify directories where ABRT should look for non-system debuginfos.
+#
+# Add a colon separated list of file system paths.
+#
+# Beware the first path in the list is used by ABRT to save downloaded
+# debuginfos, therefore the first path in the list must be _writable_, the
+# rest of the list can be read-only.
+#
+# (default: /var/cache/abrt-di)
#
#DebuginfoLocation = /var/cache/abrt-di
diff --git a/src/plugins/abrt-action-install-debuginfo.in b/src/plugins/abrt-action-install-debuginfo.in
index e4a7dfd..ad7a8d3 100644
--- a/src/plugins/abrt-action-install-debuginfo.in
+++ b/src/plugins/abrt-action-install-debuginfo.in
@@ -100,7 +100,9 @@ if __name__ == "__main__":
" -y Noninteractive, assume 'Yes' to all questions\n"
" --ids Default: build_ids\n"
" --tmpdir Default: @LARGE_DATA_TMP_DIR@/abrt-tmp-debuginfo-RANDOM_SUFFIX\n"
- " --cache Default: /var/cache/abrt-di\n"
+ " --cache Colon separated list of directories. The first one is used for\n"
+ " saving installed debuginfos.\n"
+ " Default: /var/cache/abrt-dir\n"
" --size_mb Default: 4096\n"
" --pkgmgr Default: PackageManager from CCpp.conf or 'dnf'\n"
" -e,--exact Download only specified files\n"
@@ -155,7 +157,7 @@ if __name__ == "__main__":
except OSError as ex:
print(ex)
else:
- cachedirs = conf.get("DebuginfoLocation", None)
+ cachedirs = conf.get("DebuginfoLocation", None).split(":")
if not cachedirs:
cachedirs = ["/var/cache/abrt-di"]
--
2.7.4

View File

@ -0,0 +1,74 @@
From 9cfcc3a1417e8d7730312ecd4f3d16a01cffe5ef Mon Sep 17 00:00:00 2001
From: Matej Habrnal <mhabrnal@redhat.com>
Date: Fri, 29 Apr 2016 13:29:56 +0200
Subject: [PATCH] doc: improve documentation of AllowedGroups, AllowedUsers and
IgnoredPaths
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
---
doc/abrt-CCpp.conf.txt | 10 ++++++----
src/hooks/CCpp.conf | 14 +++++++++++---
2 files changed, 17 insertions(+), 7 deletions(-)
diff --git a/doc/abrt-CCpp.conf.txt b/doc/abrt-CCpp.conf.txt
index b05aefc..bcefc4d 100644
--- a/doc/abrt-CCpp.conf.txt
+++ b/doc/abrt-CCpp.conf.txt
@@ -42,18 +42,20 @@ SaveFullCore = 'yes' / 'no' ...::
Default is 'yes'.
IgnoredPaths = /path/to/ignore/*, */another/ignored/path* ...::
- ABRT will ignore crashes in executables whose absolute path matches one of
- specified patterns.
+ ABRT will ignore crashes in executables whose absolute path matches
+ any of the glob patterns listed in the comma separated list.
-AllowedUsers = root, ...::
+AllowedUsers = root, wheel, ...::
ABRT will process only crashes of either allowed users 'AllowedUsers' or
users who are members of allowed group 'AllowedGroups'. If no allowed users
nor allowed group are specified ABRT will process crashes of all users.
+ 'AllowedUsers' is a comma separated list.
-AllowedGroups = root, ...::
+AllowedGroups = root, wheel, ...::
ABRT will process only crashes of either allowed users 'AllowedUsers' or
users who are members of allowed group 'AllowedGroups'. If no allowed users
nor allowed group are specified ABRT will process crashes of all users.
+ 'AllowedGroups' is a comma separated list.
VerboseLog = NUM::
Used to make the hook more verbose
diff --git a/src/hooks/CCpp.conf b/src/hooks/CCpp.conf
index 2466aff..82c6b78 100644
--- a/src/hooks/CCpp.conf
+++ b/src/hooks/CCpp.conf
@@ -58,14 +58,22 @@ SaveFullCore = yes
#
# StandaloneHook = yes
-# ABRT will ignore crashes in executables whose absolute path matches one of
-# specified patterns.
+# ABRT will ignore crashes in executables whose absolute path matches
+# one of any of the glob patterns listed in the comma separated list.
+#
+# For example:
+# IgnoredPaths = /path/to/ignore/*, */another/ignored/path*
#
#IgnoredPaths =
# ABRT will process only crashes of either allowed users or users who are
# members of allowed group. If no allowed users nor allowed group are specified
-# ABRT will process crashes of all users.
+# ABRT will process crashes of all users. Both AllowedUsers and AllowedGroups
+# are a comma sepparated list.
+#
+# For example:
+# AllowedUsers = root, wheel, ...
+# AllowedGroups = root, wheel, ...
#
#AllowedUsers =
#AllowedGroups =
--
2.7.4

View File

@ -0,0 +1,39 @@
From ec20077b4a1ddc3fbd7c3d91c10712f15e312777 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Fri, 13 May 2016 13:31:35 +0200
Subject: [PATCH] a-a-install-debuginfo: do not try to split None
Bug introduced in commit bb653b71a9261c0b58a9256761bf034b24c2e1ad
Related #1135
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
src/plugins/abrt-action-install-debuginfo.in | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/src/plugins/abrt-action-install-debuginfo.in b/src/plugins/abrt-action-install-debuginfo.in
index ad7a8d3..a3ef3da 100644
--- a/src/plugins/abrt-action-install-debuginfo.in
+++ b/src/plugins/abrt-action-install-debuginfo.in
@@ -152,15 +152,14 @@ if __name__ == "__main__":
set_verbosity(verbose)
if not cachedirs:
+ cachedirs = ["/var/cache/abrt-di"]
try:
conf = problem.load_plugin_conf_file("CCpp.conf")
except OSError as ex:
print(ex)
else:
- cachedirs = conf.get("DebuginfoLocation", None).split(":")
+ cachedirs = conf.get("DebuginfoLocation", cachedirs[0]).split(":")
- if not cachedirs:
- cachedirs = ["/var/cache/abrt-di"]
if not TMPDIR:
# security people prefer temp subdirs in app's private dir, like /var/run/abrt
# and we switched to /tmp but Fedora feature tmp-on-tmpfs appeared, hence we must
--
2.7.4

View File

@ -0,0 +1,57 @@
From 8b0a7a0c8dd7df477c3408298aa1f7126799da65 Mon Sep 17 00:00:00 2001
From: Matej Habrnal <mhabrnal@redhat.com>
Date: Tue, 17 May 2016 12:13:00 +0200
Subject: [PATCH] a-dump-journal-xorg: add '_COMM=gnome-shell' to journal
filter
'/usr/bin/Xwayland' crashes from gnome-shell are logged to journal with
'_COMM=gnome-shell'.
In case ABRT cannot get executable from journal backtrace (path to binary file
containting substring "bin/X") the default one /usr/bin/X(org) is used instead.
It means if wayland crashes and /usr/bin/Xwayland is not mentioned in
backtrace, the executable is /usr/bin/X(org) even it is a wayland crash.
Tried to figure out how to find out if it is a wayland or xorg crash with
wayland guys on irc and they said there is no easy and reasonable way how to
achieve this.
Because the /usr/bin/Xwayland and the /usr/bin/Xorg executable are placed under
the same xorg-x11-server bugzilla component I decided no to change the default
executable. Also all wayland backtraces I've seen contained /usr/bin/Xwayland
executable so the right executable was used.
Related to: #1336618
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
---
src/plugins/xorg-utils.c | 2 +-
src/plugins/xorg.conf | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/plugins/xorg-utils.c b/src/plugins/xorg-utils.c
index 8f121f8..6039acd 100644
--- a/src/plugins/xorg-utils.c
+++ b/src/plugins/xorg-utils.c
@@ -21,7 +21,7 @@
*/
#define IGNORE_RESULT(func_call) do { if (func_call) /* nothing */; } while (0)
-#define DEFAULT_XORG_CRASH_REASON "Xorg server crashed"
+#define DEFAULT_XORG_CRASH_REASON "Display server crashed"
int abrt_xorg_signaled_sleep(int seconds)
{
diff --git a/src/plugins/xorg.conf b/src/plugins/xorg.conf
index 28f3ee1..8834e23 100644
--- a/src/plugins/xorg.conf
+++ b/src/plugins/xorg.conf
@@ -4,4 +4,4 @@
BlacklistedXorgModules = nvidia, fglrx, vboxvideo
# List of filters which is used for searching Xorg crashes in jounral
-JournalFilters = _COMM=gdm-x-session
+JournalFilters = _COMM=gdm-x-session, _COMM=gnome-shell
--
2.7.4

View File

@ -0,0 +1,38 @@
From 19863406cee41c1f806397173d04701b21e65478 Mon Sep 17 00:00:00 2001
From: Matej Habrnal <mhabrnal@redhat.com>
Date: Fri, 20 May 2016 15:50:05 +0200
Subject: [PATCH] a-dump-journal-xorg: allow *libexec/X* to be executable
element
Analyzed lot of xorg backtraces extracted from journal by ABRT and figured out
almost all crashes are from '/usr/libexec/Xorg' executable but default
executable /usr/bin/X(org) is wrongly used instead.
The rest of backtaces contain the substring 'bin/X' hence the
executable is determined right.
Allow executable element with "libexec/X" substring should limit using the
default executable wrongly.
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
---
src/plugins/xorg-utils.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/plugins/xorg-utils.c b/src/plugins/xorg-utils.c
index 6039acd..a8dfc51 100644
--- a/src/plugins/xorg-utils.c
+++ b/src/plugins/xorg-utils.c
@@ -224,8 +224,8 @@ struct xorg_crash_info *process_xorg_bt(char *(*get_next_line)(void *), void *da
char *filename_end = skip_non_whitespace(filename);
char sv = *filename_end;
*filename_end = '\0';
- /* Does it look like "[/usr]/[s]bin/Xfoo"? */
- if (strstr(filename, "bin/X"))
+ /* Does it look like "[/usr]/[s]bin/Xfoo" or [/usr]/libexec/Xfoo"? */
+ if (strstr(filename, "bin/X") || strstr(filename, "libexec/X"))
exe = xstrdup(filename);
*filename_end = sv;
}
--
2.7.4

View File

@ -0,0 +1,48 @@
From 5c011b291a65f88036884bf388859e68fe7162a9 Mon Sep 17 00:00:00 2001
From: Matej Habrnal <mhabrnal@redhat.com>
Date: Thu, 26 May 2016 10:15:07 +0200
Subject: [PATCH] abrt-hook-ccpp: save get_fsuid() return values in int
variables
int because get_fsuid() returns negative values in case of error
Revealed by coverity.
Related to: #1337186
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
---
src/hooks/abrt-hook-ccpp.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/hooks/abrt-hook-ccpp.c b/src/hooks/abrt-hook-ccpp.c
index dfe9526..10f137b 100644
--- a/src/hooks/abrt-hook-ccpp.c
+++ b/src/hooks/abrt-hook-ccpp.c
@@ -725,7 +725,8 @@ int main(int argc, char** argv)
char *proc_pid_status = xmalloc_xopen_read_close(path, /*maxsz:*/ NULL);
uid_t fsuid = uid;
- uid_t tmp_fsuid = get_fsuid(proc_pid_status);
+ /* int because get_fsuid() returns negative values in case of error */
+ int tmp_fsuid = get_fsuid(proc_pid_status);
if (tmp_fsuid < 0)
{
error_msg_ignore_crash(pid_str, NULL, (long unsigned)uid, signal_no,
@@ -742,12 +743,12 @@ int main(int argc, char** argv)
}
int suid_policy = dump_suid_policy();
- if (tmp_fsuid != uid)
+ if ((uid_t)tmp_fsuid != uid)
{
/* use root for suided apps unless it's explicitly set to UNSAFE */
fsuid = 0;
if (suid_policy == DUMP_SUID_UNSAFE)
- fsuid = tmp_fsuid;
+ fsuid = (uid_t)tmp_fsuid;
else
{
g_user_core_flags = O_EXCL;
--
2.7.4

View File

@ -0,0 +1,65 @@
From f55250179f7ca74ae0a80ec0c4f6cf3bb341b5df Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Wed, 25 May 2016 13:35:28 +0200
Subject: [PATCH] koops: do not assume version has 3 levels
Correct commit 9023d77ad5539433146b59e5ac80e3cefcb20cf7
Some ancient kernel versions have 4 levels. This commit allows version
string to have any level equal or greater than 3. The first 3 levels
must be numbers and the rest can be almost anything - it just must
follow the logical structure of levels (i.e. dot something dot
something) - this should allow a git hash in the version string.
In order to eliminate possible false positives introduced by the
flexibility of version levels the commit adds checks for
the prefixes ' ', '(' or 'kernel-' and the suffix ' #' or ') #'.
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
src/lib/kernel.c | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/src/lib/kernel.c b/src/lib/kernel.c
index dde3d28..720dc7d 100644
--- a/src/lib/kernel.c
+++ b/src/lib/kernel.c
@@ -571,7 +571,10 @@ char *koops_extract_version(const char *linepointer)
|| strstr(linepointer, "REGS")
|| strstr(linepointer, "EFLAGS")
) {
- const char *regexp = "([0-9]+\\.[0-9]+\\.[0-9]+-[^ \\)]+)[ \\)]";
+ /* "(4.7.0-2.x86_64.fc25) #" */
+ /* " 4.7.0-2.x86_64.fc25 #" */
+ /* " 2.6.3.4.5-2.x86_64.fc22 #" */
+ const char *regexp = "([ \\(]|kernel-)([0-9]+\\.[0-9]+\\.[0-9]+(\\.[^.-]+)*-[^ \\)]+)\\)? #";
regex_t re;
int r = regcomp(&re, regexp, REG_EXTENDED);
if (r != 0)
@@ -582,8 +585,8 @@ char *koops_extract_version(const char *linepointer)
return NULL;
}
- regmatch_t matchptr[2];
- r = regexec(&re, linepointer, 2, matchptr, 0);
+ regmatch_t matchptr[3];
+ r = regexec(&re, linepointer, sizeof(matchptr)/sizeof(matchptr[0]), matchptr, 0);
if (r != 0)
{
if (r != REG_NOMATCH)
@@ -602,7 +605,11 @@ char *koops_extract_version(const char *linepointer)
return NULL;
}
- char *ret = xstrndup(linepointer + matchptr[1].rm_so, matchptr[1].rm_eo - matchptr[1].rm_so);
+ /* 0: entire string */
+ /* 1: version prefix */
+ /* 2: version string */
+ const regmatch_t *const ver = matchptr + 2;
+ char *ret = xstrndup(linepointer + ver->rm_so, ver->rm_eo - ver->rm_so);
regfree(&re);
return ret;
--
2.7.4

View File

@ -0,0 +1,39 @@
From a2bdf944c8855dd53b4df5f6829442f9f2f6bd14 Mon Sep 17 00:00:00 2001
From: Matej Habrnal <mhabrnal@redhat.com>
Date: Wed, 8 Jun 2016 17:50:18 +0200
Subject: [PATCH] a-a-install-debuginfo: Exception may not have an argument
errno
Also BrokenPipe error can appear even in download_class(), moving it to try
block.
Related to #1343826, #1343664
Signed-off-by: Matej Habrnal <mhabrnal@redhat.com>
---
src/plugins/abrt-action-install-debuginfo.in | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/plugins/abrt-action-install-debuginfo.in b/src/plugins/abrt-action-install-debuginfo.in
index a3ef3da..be45bc6 100644
--- a/src/plugins/abrt-action-install-debuginfo.in
+++ b/src/plugins/abrt-action-install-debuginfo.in
@@ -236,12 +236,12 @@ if __name__ == "__main__":
sys.exit(RETURN_FAILURE)
# TODO: should we pass keep_rpms=keeprpms to DebugInfoDownload here??
- downloader = download_class(cache=cachedirs[0], tmp=TMPDIR,
+ try:
+ downloader = download_class(cache=cachedirs[0], tmp=TMPDIR,
noninteractive=noninteractive,
repo_pattern=repo_pattern)
- try:
result = downloader.download(missing, download_exact_files=exact_fls)
- except Exception as ex:
+ except OSError as ex:
if ex.errno == errno.EPIPE:
clean_up(TMPDIR, silent=True)
exit(RETURN_FAILURE)
--
2.7.4

View File

@ -0,0 +1,91 @@
From 57c975dfda165098502cdb9e2525bc7877301a12 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Mon, 13 Jun 2016 09:43:21 +0200
Subject: [PATCH] vmcore: fix finding partitions by UUID and LABEL
In kdump.conf fs partition can be specified by UUID or LABEL but mtab
uses only file system node path. Hence, we need to translate the ID to
its node path.
Related: rhbz#1147053
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
configure.ac | 2 ++
src/hooks/Makefile.am | 1 +
src/hooks/abrt_harvest_vmcore.py.in | 27 +++++++++++++++++++++++++++
3 files changed, 30 insertions(+)
diff --git a/configure.ac b/configure.ac
index 98e2564..8e13524 100644
--- a/configure.ac
+++ b/configure.ac
@@ -263,6 +263,8 @@ AC_ARG_ENABLE(doxygen-docs,
[enable_doxygen_docs=no]
)
+AC_PATH_PROG([BLKID], [BLKID], [/usr/sbin/blkid], [$PATH:/usr/sbin:/sbin])
+
# Doxygen Documentation
AC_PATH_PROG(DOXYGEN, doxygen, no)
diff --git a/src/hooks/Makefile.am b/src/hooks/Makefile.am
index bf68994..c0255d9 100644
--- a/src/hooks/Makefile.am
+++ b/src/hooks/Makefile.am
@@ -119,6 +119,7 @@ abrt-install-ccpp-hook: abrt-install-ccpp-hook.in
abrt-harvest-vmcore: abrt_harvest_vmcore.py.in
sed -e s,\@CONF_DIR\@,\$(CONF_DIR)\,g \
-e s,\@DEFAULT_DUMP_LOCATION\@,$(DEFAULT_DUMP_LOCATION),g \
+ -e s,\@BLKID\@,$(BLKID),g \
$< >$@
abrt-harvest-pstoreoops: abrt-harvest-pstoreoops.in
diff --git a/src/hooks/abrt_harvest_vmcore.py.in b/src/hooks/abrt_harvest_vmcore.py.in
index 61a6e57..ab976dc 100644
--- a/src/hooks/abrt_harvest_vmcore.py.in
+++ b/src/hooks/abrt_harvest_vmcore.py.in
@@ -13,6 +13,7 @@ import shutil
import time
import hashlib
import augeas
+from subprocess import Popen, PIPE
import problem
import report
@@ -38,6 +39,32 @@ def get_mount_point(part_id):
part_id - device node, label or uuid
"""
+ idtypes = {"UUID=":"-U", "PARTUUID=":"-U", "LABEL=":"-L", "PARTLABEL=":"-L"}
+
+ for typ, switch in idtypes.items():
+ if not part_id.startswith(typ):
+ continue
+
+ idf = part_id[len(typ):]
+ try:
+ proc = Popen(["@BLKID@", switch, idf], stdout=PIPE, stderr=PIPE)
+ out, err = proc.communicate()
+ if err:
+ sys.stderr.write("Failed 'blkid {0} {1}': {2}\n"
+ .format(switch, idf, err))
+ sys.exit(1)
+ if not out:
+ sys.stderr.write("No results from 'blkid {0} {1}'\n"
+ .format(switch, idf))
+ sys.exit(1)
+
+ part_id = out.decode().strip()
+ break
+ except OSError as ex:
+ sys.stderr.write("Cannot run 'blkid {0} {1}': {2}\n"
+ .format(switch, idf, str(ex)))
+ sys.exit(1)
+
# look up the identifier in /etc/mtab
result = get_augeas("Fstab", "/etc/mtab").get("/files/etc/mtab/*"
"[spec=\"" + part_id + "\"]/file")
--
2.7.4

View File

@ -0,0 +1,130 @@
From 0fcf4fdd56970ca333f36d7fcfda2d6ecb14c8f2 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Thu, 16 Jun 2016 14:21:28 +0200
Subject: [PATCH] vmcore: use findmnt to get mountpoint
findmnt solves both problems:
* UUID=/LABEL=
* different device links
Related: rhbz#1147053
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
configure.ac | 2 +-
src/hooks/Makefile.am | 2 +-
src/hooks/abrt_harvest_vmcore.py.in | 59 ++++++++++++++-----------------------
3 files changed, 24 insertions(+), 39 deletions(-)
diff --git a/configure.ac b/configure.ac
index 8e13524..98fbebc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -263,7 +263,7 @@ AC_ARG_ENABLE(doxygen-docs,
[enable_doxygen_docs=no]
)
-AC_PATH_PROG([BLKID], [BLKID], [/usr/sbin/blkid], [$PATH:/usr/sbin:/sbin])
+AC_PATH_PROG([FINDMNT], [findmnt], [/usr/bin/findmnt], [$PATH:/usr/sbin:/sbin])
# Doxygen Documentation
diff --git a/src/hooks/Makefile.am b/src/hooks/Makefile.am
index c0255d9..8e73bdc 100644
--- a/src/hooks/Makefile.am
+++ b/src/hooks/Makefile.am
@@ -119,7 +119,7 @@ abrt-install-ccpp-hook: abrt-install-ccpp-hook.in
abrt-harvest-vmcore: abrt_harvest_vmcore.py.in
sed -e s,\@CONF_DIR\@,\$(CONF_DIR)\,g \
-e s,\@DEFAULT_DUMP_LOCATION\@,$(DEFAULT_DUMP_LOCATION),g \
- -e s,\@BLKID\@,$(BLKID),g \
+ -e s,\@FINDMNT\@,$(FINDMNT),g \
$< >$@
abrt-harvest-pstoreoops: abrt-harvest-pstoreoops.in
diff --git a/src/hooks/abrt_harvest_vmcore.py.in b/src/hooks/abrt_harvest_vmcore.py.in
index ab976dc..1cceea7 100644
--- a/src/hooks/abrt_harvest_vmcore.py.in
+++ b/src/hooks/abrt_harvest_vmcore.py.in
@@ -19,6 +19,12 @@ import problem
import report
+def errx(message, code=1):
+ sys.stderr.write(message)
+ sys.stderr.write("\n")
+ sys.stderr.flush()
+ sys.exit(code)
+
def get_augeas(module, file_path):
"""
A function for efficient configuration of Augeas.
@@ -33,49 +39,28 @@ def get_augeas(module, file_path):
def get_mount_point(part_id):
"""
- A function used to look up a mount point in mtab using
- the provided identifier.
+ A function used to look up a mount point of the provided identifier
+ using 'findmnt' system utility.
part_id - device node, label or uuid
"""
- idtypes = {"UUID=":"-U", "PARTUUID=":"-U", "LABEL=":"-L", "PARTLABEL=":"-L"}
-
- for typ, switch in idtypes.items():
- if not part_id.startswith(typ):
- continue
-
- idf = part_id[len(typ):]
- try:
- proc = Popen(["@BLKID@", switch, idf], stdout=PIPE, stderr=PIPE)
- out, err = proc.communicate()
- if err:
- sys.stderr.write("Failed 'blkid {0} {1}': {2}\n"
- .format(switch, idf, err))
- sys.exit(1)
- if not out:
- sys.stderr.write("No results from 'blkid {0} {1}'\n"
- .format(switch, idf))
- sys.exit(1)
-
- part_id = out.decode().strip()
- break
- except OSError as ex:
- sys.stderr.write("Cannot run 'blkid {0} {1}': {2}\n"
- .format(switch, idf, str(ex)))
- sys.exit(1)
+ try:
+ proc = Popen(["@FINDMNT@", "--noheadings", "--first-only", "--raw",
+ "--evaluate", "--output", "TARGET", part_id],
+ stdout=PIPE, stderr=PIPE)
+ out, err = proc.communicate()
+ if err:
+ errx("Error finding mountpoint of '{0}': {1}"
+ .format(devpath, err.decode()))
+
+ result = out.decode().strip()
+ if proc.returncode != 0 or not result:
+ errx("Cannot find mountpoint of '{0}'".format(part_id))
- # look up the identifier in /etc/mtab
- result = get_augeas("Fstab", "/etc/mtab").get("/files/etc/mtab/*"
- "[spec=\"" + part_id + "\"]/file")
- if result:
return result
- else:
- # identifier not in the table
- sys.stderr.write("Error: Cannot access partition '" + part_id +
- "', mount point not found in /etc/mtab!\n")
- sys.exit(1)
-
+ except OSError as ex:
+ errx("Cannot run 'findmnt': {1}".format(str(ex)))
def parse_kdump():
"""
--
2.7.4

View File

@ -0,0 +1,28 @@
From 5122aef69fb303022609dc6ca53a11e30842ad6e Mon Sep 17 00:00:00 2001
From: Wes Lindauer <wesley.lindauer@gmail.com>
Date: Wed, 13 Jul 2016 16:20:51 -0400
Subject: [PATCH] abrt-hook-ccpp: Fix mismatching argument
The calling code in abrt-install-ccpp-hook was passing in --test-config.
This was only working due to the misuse of strcmp, so it was accepting
any string other than --config-test.
---
src/hooks/abrt-hook-ccpp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hooks/abrt-hook-ccpp.c b/src/hooks/abrt-hook-ccpp.c
index 10f137b..9e82ff9 100644
--- a/src/hooks/abrt-hook-ccpp.c
+++ b/src/hooks/abrt-hook-ccpp.c
@@ -656,7 +656,7 @@ int main(int argc, char** argv)
free_map_string(settings);
}
- if (argc == 2 && strcmp(argv[1], "--config-test"))
+ if (argc == 2 && !strcmp(argv[1], "--test-config"))
return test_configuration(setting_SaveFullCore, setting_CreateCoreBacktrace);
if (argc < 8)
--
2.7.4

29384
0037-Translation-updates.patch Normal file

File diff suppressed because it is too large Load Diff

225
abrt.spec
View File

@ -43,22 +43,57 @@
%define docdirversion -%{version}
%endif
%define libreport_ver 2.6.1
%define libreport_ver 2.6.4-2
%define satyr_ver 0.19
Summary: Automatic bug detection and reporting tool
Name: abrt
Version: 2.6.1
Release: 1%{?dist}
Version: 2.8.0
Release: 6%{?dist}
License: GPLv2+
Group: Applications/System
URL: https://abrt.readthedocs.org/
Source: https://fedorahosted.org/released/%{name}/%{name}-%{version}.tar.gz
# don't remove this patch, packages in rawhide are not signed!
Patch0: disable-OpenGPGCheck-in-Fedora-Rawhide.patch
# git format-patch %%{Version} --topo-order -N -M;
# i=1; for p in `ls 0*.patch`; do printf "Patch%04d: %s\n" $i $p; ((i++)); done
Patch0001: 0001-ccpp-drop-e-from-the-core_pattern.patch
#Patch0002: 0002-translations-update-zanata-configuration.patch
Patch0003: 0003-Translation-updates.patch
Patch0004: 0004-translations-add-missing-new-line.patch
Patch0005: 0005-Fix-minor-typo-possition-position.patch
Patch0006: 0006-a-a-save-package-data-blacklist-usr-lib-64-firefox-p.patch
#Patch0007: 0007-testsuite-add-concurrent-processing-test-for-abrtd.patch
#Patch0008: 0008-CCpp-turn-off-compat-cores.patch - revert
Patch0009: 0009-a-a-install-debuginfo-make-tmpdir-variable-global.patch
Patch0010: 0010-a-a-install-debuginfo-fix-BrokenPipe-error.patch
Patch0011: 0011-Add-basic-documentation.patch
#Patch0012: 0012-spec-README-README.md.patch
#Patch0013: 0013-testsuite-fix-ccpp-plugin-debug-test.patch
#Patch0014: 0014-testsuite-rlAssertRpm-doesn-t-work-with-abrt-addon.patch
#Patch0015: 0015-testsuite-compat-cores-add-include-to-the-loop.c-fil.patch
#Patch0016: 0016-testsuite-changes-due-to-turn-off-compat-cores.patch
#Patch0017: 0017-testsuite-yum-to-dnf.patch
#Patch0018: 0018-testsuite-avoid-unintentional-removal-of-package-man.patch
#Patch0019: 0019-testsuite-tell-the-runner-about-problem-sub-director.patch
#Patch0020: 0020-testsuite-add-a-per-test-timeout-for-15m.patch
Patch0021: 0021-Merge-a-a-save-kernel-data-with-a-a-save-package-dat.patch
#Patch0022: 0022-spec-drop-abrt-action-save-kernel-data-bits.patch
Patch0023: 0023-a-retrace-client-format-security.patch
Patch0024: 0024-a-console-notification-do-not-leak-variables.patch
Patch0025: 0025-a-a-install-debuginfo-correct-handling-of-DebuginfoL.patch
Patch0026: 0026-doc-improve-documentation-of-AllowedGroups-AllowedUs.patch
Patch0027: 0027-a-a-install-debuginfo-do-not-try-to-split-None.patch
Patch0028: 0028-a-dump-journal-xorg-add-_COMM-gnome-shell-to-journal.patch
Patch0029: 0029-a-dump-journal-xorg-allow-libexec-X-to-be-executable.patch
Patch0030: 0030-abrt-hook-ccpp-save-get_fsuid-return-values-in-int-v.patch
Patch0031: 0031-koops-do-not-assume-version-has-3-levels.patch
Patch0032: 0032-a-a-install-debuginfo-Exception-may-not-have-an-argu.patch
Patch0033: 0033-vmcore-fix-finding-partitions-by-UUID-and-LABEL.patch
#Patch0034: 0034-spec-add-utils-linux-to-vmcore-s-Require.patch
Patch0035: 0035-vmcore-use-findmnt-to-get-mountpoint.patch
Patch0036: 0036-abrt-hook-ccpp-Fix-mismatching-argument.patch
Patch0037: 0037-Translation-updates.patch
# '%%autosetup -S git' -> git
BuildRequires: git
@ -83,9 +118,15 @@ BuildRequires: xmlto
BuildRequires: libreport-devel >= %{libreport_ver}
BuildRequires: satyr-devel >= %{satyr_ver}
BuildRequires: systemd-python
BuildRequires: systemd-python3
BuildRequires: python3-systemd
BuildRequires: augeas
BuildRequires: libselinux-devel
BuildRequires: python-argcomplete
BuildRequires: python3-argcomplete
BuildRequires: python-argh
BuildRequires: python3-argh
BuildRequires: python-humanize
BuildRequires: python3-humanize
Requires: libreport >= %{libreport_ver}
Requires: satyr >= %{satyr_ver}
@ -95,10 +136,10 @@ Requires: systemd-units
%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: %{name}-libs = %{version}-%{release}
Requires: %{name}-python = %{version}-%{release}
Requires: %{name}-python3 = %{version}-%{release}
Requires(pre): shadow-utils
Requires: python-dbus
Requires: python-dmidecode
Requires: python3-dbus
Requires: python3-dmidecode
Requires: libreport-plugin-ureport >= %{libreport_ver}
%description
@ -180,7 +221,7 @@ Requires: %{name}-retrace-client
Requires: %{name} = %{version}-%{release}
Requires: abrt-libs = %{version}-%{release}
Requires: %{name}-addon-coredump-helper = %{version}-%{release}
Requires: libreport-python
Requires: libreport-python3
%description addon-ccpp
This package contains %{name}'s C/C++ analyzer plugin.
@ -238,8 +279,9 @@ Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
Requires: abrt-addon-kerneloops
Requires: kexec-tools
Requires: abrt-python
Requires: python-augeas
Requires: abrt-python3
Requires: python3-augeas
Requires: util-linux
%description addon-vmcore
This package contains plugin for collecting kernel crash information from
@ -263,6 +305,7 @@ BuildRequires: json-c-devel
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
BuildRequires: libreport-web-devel >= %{libreport_ver}
BuildRequires: hawkey-devel
Obsoletes: libreport-plugin-bodhi > 0.0.1
Provides: libreport-plugin-bodhi
@ -286,7 +329,7 @@ Summary: %{name}'s addon for catching and analyzing Python 3 exceptions
Group: System Environment/Libraries
Requires: python3
Requires: %{name} = %{version}-%{release}
Requires: systemd-python3
Requires: python3-systemd
Requires: abrt-python3
%description addon-python3
@ -305,6 +348,22 @@ Requires: abrt-dbus
This package contains a simple command line client for processing abrt reports
in command line environment.
%package cli-ng
Summary: %{name}'s improved command line interface
Group: User Interface/Desktops
Requires: %{name} = %{version}-%{release}
Requires: libreport-cli >= %{libreport_ver}
Requires: abrt-libs = %{version}-%{release}
Requires: abrt-dbus
Requires: abrt-python
Requires: abrt-addon-ccpp
Requires: python-argh
Requires: python-argcomplete
Requires: python-humanize
%description cli-ng
New generation command line interface for ABRT
%package cli
Summary: Virtual package to make easy default installation on non-graphical environments
Group: Applications/System
@ -316,7 +375,6 @@ Requires: abrt-addon-pstoreoops
Requires: abrt-addon-vmcore
%endif
Requires: abrt-addon-ccpp
Requires: abrt-addon-python
Requires: abrt-addon-python3
Requires: abrt-addon-xorg
%if 0%{?rhel}
@ -351,7 +409,6 @@ Requires: abrt-addon-pstoreoops
Requires: abrt-addon-vmcore
%endif
Requires: abrt-addon-ccpp
Requires: abrt-addon-python
Requires: abrt-addon-python3
Requires: abrt-addon-xorg
# Default config of addon-ccpp requires gdb
@ -701,7 +758,7 @@ killall abrt-dbus >/dev/null 2>&1 || :
%files -f %{name}.lang
%defattr(-,root,root,-)
%doc README COPYING
%doc README.md COPYING
%if %{with systemd}
%{_unitdir}/abrtd.service
%{_tmpfilesdir}/abrt.conf
@ -735,7 +792,7 @@ killall abrt-dbus >/dev/null 2>&1 || :
%{_mandir}/man5/abrt_event.conf.5.gz
%config(noreplace) %{_sysconfdir}/libreport/events.d/smart_event.conf
%{_mandir}/man5/smart_event.conf.5.gz
%dir %attr(0751, abrt, abrt) %{_localstatedir}/spool/%{name}
%dir %attr(0751, root, abrt) %{_localstatedir}/spool/%{name}
%dir %attr(0700, abrt, abrt) %{_localstatedir}/spool/%{name}-upload
# abrtd runs as root
%dir %attr(0755, root, root) %{_localstatedir}/run/%{name}
@ -865,6 +922,7 @@ killall abrt-dbus >/dev/null 2>&1 || :
%{_mandir}/man*/abrt-action-analyze-core.*
%{_mandir}/man*/abrt-action-analyze-vulnerability.*
%{_mandir}/man*/abrt-action-perform-ccpp-analysis.*
%{_mandir}/man*/abrt-dump-journal-core.*
%files addon-upload-watch
%defattr(-,root,root,-)
@ -901,11 +959,9 @@ killall abrt-dbus >/dev/null 2>&1 || :
%{_bindir}/abrt-dump-oops
%{_bindir}/abrt-dump-journal-oops
%{_bindir}/abrt-action-analyze-oops
%{_bindir}/abrt-action-save-kernel-data
%{_mandir}/man1/abrt-dump-oops.1*
%{_mandir}/man1/abrt-dump-journal-oops.1*
%{_mandir}/man1/abrt-action-analyze-oops.1*
%{_mandir}/man1/abrt-action-save-kernel-data.1*
%{_mandir}/man5/abrt-oops.conf.5*
%files addon-xorg
@ -918,7 +974,9 @@ killall abrt-dbus >/dev/null 2>&1 || :
%{_initrddir}/abrt-xorg
%endif
%{_bindir}/abrt-dump-xorg
%{_bindir}/abrt-dump-journal-xorg
%{_mandir}/man1/abrt-dump-xorg.1*
%{_mandir}/man1/abrt-dump-journal-xorg.1*
%if %{?have_kexec_tools} == 1
%files addon-vmcore
@ -936,6 +994,7 @@ killall abrt-dbus >/dev/null 2>&1 || :
%{_sbindir}/abrt-harvest-vmcore
%{_bindir}/abrt-action-analyze-vmcore
%{_bindir}/abrt-action-check-oops-for-hw-error
%{_bindir}/abrt-action-check-oops-for-alt-component
%{_mandir}/man1/abrt-harvest-vmcore.1*
%{_mandir}/man5/abrt-vmcore.conf.5*
%{_mandir}/man1/abrt-action-analyze-vmcore.1*
@ -983,6 +1042,13 @@ killall abrt-dbus >/dev/null 2>&1 || :
%{_bindir}/abrt-cli
%{_mandir}/man1/abrt-cli.1.gz
%files cli-ng
%defattr(-,root,root,-)
%config(noreplace) %{_sysconfdir}/bash_completion.d/abrt.bash_completion
%{_bindir}/abrt
%{python_sitearch}/abrtcli/
%{_mandir}/man1/abrt.1.gz
%files desktop
%defattr(-,root,root,-)
@ -1001,7 +1067,9 @@ killall abrt-dbus >/dev/null 2>&1 || :
%files plugin-bodhi
%defattr(-,root,root,-)
%{_bindir}/abrt-bodhi
%{_bindir}/abrt-action-find-bodhi-update
%{_mandir}/man1/abrt-bodhi.1.gz
%{_mandir}/man1/abrt-action-find-bodhi-update.1.gz
%files dbus
%defattr(-,root,root,-)
@ -1046,6 +1114,125 @@ killall abrt-dbus >/dev/null 2>&1 || :
%config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh
%changelog
* Mon Jul 18 2016 Matej Habrnal <mhabrnal@redhat.com> 2.8.0.6
- Translation updates
- vmcore: use findmnt to get mountpoint
- vmcore: fix finding partitions by UUID and LABEL
- a-a-install-debuginfo: Exception may not have an argument errno
- koops: do not assume version has 3 levels
- a-dump-journal-xorg: allow *libexec/X* to be executable element
- a-dump-journal-xorg: add '_COMM=gnome-shell' to journal filter
- doc: improve documentation of AllowedGroups, AllowedUsers and IgnoredPaths
- a-a-install-debuginfo: correct handling of DebuginfoLocation
- a-console-notification: do not leak variables
- Merge a-a-save-kernel-data with a-a-save-package-data
- Resolves: #1334084, #1343826
* Wed Apr 27 2016 Matej Habrnal <mhabrnal@redhat.com> 2.8.0.5
- revert: turn off compat cores
- Resolves: #1330734
* Fri Apr 08 2016 Matej Habrnal <mhabrnal@redhat.com> 2.8.0.4
- spec: README -> README.md
- Add basic documentation
- a-a-install-debuginfo: fix BrokenPipe error
- a-a-install-debuginfo: make tmpdir variable global
- Resolves: #1255259
* Tue Feb 23 2016 Matej Habrnal <mhabrnal@redhat.com> 2.8.0-3
- translation updates
- blacklist Firefox's plugin-container
- turn off compat cores
* Wed Feb 10 2016 Matej Habrnal <mhabrnal@redhat.com> 2.8.0-2
- drop %e from the core_pattern
* Wed Feb 03 2016 Matej Habrnal <mhabrnal@redhat.com> 2.8.0-1
- a-a-save-package-data: do not blacklist firefox
* Tue Feb 02 2016 Matej Habrnal <mhabrnal@redhat.com> 2.7.2-1
- ccpp: add AllowedUsers and AllowedGroups feature
- ccpp: use executable name from pid
- a-a-c-o-f-hw-error: do not crash on invalid unicode
- configui: link GUI library with libabrt.so
- ccpp: unify log message of ignored crashes
- ccpp: add IgnoredPath option
- Resolves: #1277872, #1287302, #1291976
* Mon Nov 23 2015 Jakub Filak <jfilak@redhat.com> 2.7.1-1
- CVE-2015-5287: switch owner of /var/spool/abrt to 'root'
- CVE-2015-5287: ccpp: save abrt core files only if DebugLevel > 0
- CVE-2015-5287: ccpp: save abrt core files only to new files
- CVE-2015-5287: abrt configuration: introduce DebugLevel
- CVE-2015-5273: a-a-i-d-to-abrt-cache: make own random temporary directory
- ccpp: make crashes of processes with locked memory not-reportable
- xorg: introduce tool abrt-dump-journal-xorg
- abrt-xorg.service: change due to abrt-dump-journal-xorg
- a-d-journal-core: set root owner for created dump directory
- spec: add missing man page for abrt-dump-journal-core
- Resolves: #1262252, #1284557
* Wed Oct 28 2015 Jakub Filak <jfilak@redhat.com> 2.7.0-2
- Fix broken problem details in abrt-cli/gnome-abrt
- Resolves: #1256456
* Fri Oct 16 2015 Matej Habrnal <mhabrnal@redhat.com> 2.7.0-1
- cli-ng: initial
- bodhi: introduce wrapper for 'reporter-bugzilla -h' and 'abrt-bodhi'
- handle-event: remove obsolete workaround
- remove 'not needed' code
- doc: change /var/tmp/abrt to /var/spool/abrt
- doc: fix default DumpLocation in abrt.conf man page
- abrt-dump-xorg: support Xorg log backtraces prefixed by (EE)
- Resolves #1264739
* Tue Sep 15 2015 Matej Habrnal <mhabrnal@redhat.com> 2.6.2-7
- doc: actualize the abrt-bodhi man page
- bodhi: fix a segfault when testing an os-release opt for 'rawhide'
- Resolves: #1260259
* Sat Sep 05 2015 Kalev Lember <klember@redhat.com> - 2.6.2-6
- Rebuilt for librpm soname bump
* Wed Aug 26 2015 Matej Habrnal <mhabrnal@redhat.com> 2.6.2-5
- bodhi: add parsing of error responses
- bodhi: add ignoring of Rawhide
- do not break the reporting if a-bodhi fails
- spec: add hawkey to BRs of abrt-bodhi
- introduce bodhi2 to abrt-bodhi
- convert all 'ex.message' stmts to 'str(ex)'
- don't start reporting of not-reportable problems
- add bash on the package blacklist
* Fri Aug 14 2015 Matej Habrnal <mhabrnal@redhat.com> 2.6.2-4
- ccpp - use global TID
- fix comment related to 'MakeCompatCore' option in CCpp.conf
- fix testing of DBus API return codes
- dbus-api: unify reporting of errors
- fix related to conditional compilation of man page
- abrt-auto-reporting: fix related to conditional compilation
- correct usage of abrt-gdb-exploitable
- Resolves: #1245600, #1252590
* Fri Jul 24 2015 Matej Habrnal <mhabrnal@redhat.com> 2.6.2-3
- read vmcore by chunks
- pass encoded Unicode to hashlib.sha1.update()
- abrt-merge-pstoreoops: merge files in descending order
* Wed Jul 22 2015 Matej Habrnal <mhabrnal@redhat.com> 2.6.2-2
- use gettext instead of lgettext in all python scripts
- Resolves: #1245600
* Fri Jul 17 2015 Jakub Filak <jfilak@redhat.com> 2.6.2-1
- switch to Python 3
- reassign components of certain Kernel oopses to xorg-x11-drv-*
- de-prioritize post-mortem processes
- applet: do not crash if the new problem has no command_line
- abrt-hook-ccpp: do not crash if generate_core_backtrace fails
- cli: enable authentication for all commands
- Resolves: #1192080
* Fri Jul 03 2015 Matej Habrnal <mhabrnal@redhat.com> 2.6.1-1
- keep the polkit authorization for all clients
- enable polkit authentication on command line

View File

@ -1,26 +0,0 @@
From 1ef034096efe367af85f568bc982af969124003b Mon Sep 17 00:00:00 2001
From: rpm-build <rpm-build>
Date: Mon, 10 Feb 2014 09:39:07 +0100
Subject: [PATCH] disable OpenGPGCheck in Fedora Rawhide
Packages in Fedora Rawhide are not signed.
---
src/daemon/abrt-action-save-package-data.conf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/daemon/abrt-action-save-package-data.conf b/src/daemon/abrt-action-save-package-data.conf
index 3d35bb6..e3f724a 100644
--- a/src/daemon/abrt-action-save-package-data.conf
+++ b/src/daemon/abrt-action-save-package-data.conf
@@ -3,7 +3,7 @@
# the list of public keys used to check the signature is
# in the file gpg_keys
#
-OpenGPGCheck = yes
+OpenGPGCheck = no
# Blacklisted packages
#
--
1.8.3.1

View File

@ -1 +1 @@
936fa2b51d58d5c00729b8512ffa2a68 abrt-2.6.1.tar.gz
ab0744ee52a36c0d647ae1af9a356090 abrt-2.8.0.tar.gz