| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
| |
Sort of preparatory patch: will soon convert it to
abrt_action.conf use...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
| |
abrt_action.conf provides a way to configure that behaviour.
This change adds a commented-out example how to do it
for kerneloops.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
| |
It is not needed anymore since we report to web using separate applications.
And they reinitialize resolver on startup.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
specified event
Some reworking of run_action() API was needed
to make it possible to put it into libABRT.
abrt-handle-crashdump has no -l option yet:
$ abrt-handle-crashdump
Usage: abrt-handle-crashdump [-vs] -d DIR -e EVENT
Handle crash dump according to rules in abrt_action.conf
-v, --verbose be verbose
-s Log to syslog
-d DIR Crash dump directory
-e EVENT Event
Can (will) extend it later.
Run-tested: performed "analyze" step by hand with
abrt-handle-crashdump -e analyze -d CRASH_DUMP_DIR
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch replaces only the post-create step with new logic
(the step which happens when abrtd detects fresh crash dump dir
and needs to decide what to do with it), but it turns out
this step is one of hard ones: it needs special handling
of UUID. So a good chunk of hard-ish stuff is already in this patch.
It also contains logic to collect the log from actions,
even though so far it is simply logged. Other steps
(like reporting step) will pipe it to clients.
post-create step simply has no client to pipe output to.
But the code is there already.
GetLocalUUID() members in all plugins are unused now
and are deleted from all classes.
Next patches will move run_event() function into libABRT,
so that it can be used from e.g. abrt-handle-crashdump utility
if/when we will write it, from clients directly and so on.
For now, it lives in MiddleWare.cpp since it is only used there.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Was:
linux-vdso.so.1 => (0x00007fff4e4a0000)
libABRTUtils.so.0 => /usr/lib64/libABRTUtils.so.0 (0x00007f64316c0000)
libABRTdUtils.so.0 => /usr/lib64/libABRTdUtils.so.0 (0x00007f64314b6000)
libpolkit-gobject-1.so.0 => /usr/lib64/libpolkit-gobject-1.so.0 (0x0000003c2c600000)
libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x0000003c20a00000)
libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x0000003c1f600000)
libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0 (0x0000003c20600000)
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x0000003c1fa00000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x0000003c1f200000)
libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x0000003c28200000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f64312b2000)
libdbus-1.so.3 => /lib64/libdbus-1.so.3 (0x0000003c1fe00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6431096000)
librt.so.1 => /lib64/librt.so.1 (0x00007f6430e8e000)
libxmlrpc.so.3 => /usr/lib64/libxmlrpc.so.3 (0x0000003c22e00000)
libxmlrpc_util.so.3 => /usr/lib64/libxmlrpc_util.so.3 (0x0000003c23600000)
libxmlrpc_client.so.3 => /usr/lib64/libxmlrpc_client.so.3 (0x0000003c23a00000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000003c2c200000)
libm.so.6 => /lib64/libm.so.6 (0x00007f6430c0a000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003c28e00000)
libc.so.6 => /lib64/libc.so.6 (0x00007f643088b000)
libeggdbus-1.so.0 => /usr/lib64/libeggdbus-1.so.0 (0x0000003c30200000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f6430671000)
libz.so.1 => /lib64/libz.so.1 (0x0000003c1e600000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f6430452000)
/lib64/ld-linux-x86-64.so.2 (0x00007f64318d0000)
libcurl.so.4 => /usr/lib64/libcurl.so.4 (0x00007f64301f6000)
libdbus-glib-1.so.2 => /usr/lib64/libdbus-glib-1.so.2 (0x00007f642ffd3000)
libidn.so.11 => /lib64/libidn.so.11 (0x0000003c21200000)
liblber-2.4.so.2 => /usr/lib64/liblber-2.4.so.2 (0x00007f642fdc5000)
libldap-2.4.so.2 => /usr/lib64/libldap-2.4.so.2 (0x00007f642fb80000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f642f951000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f642f694000)
libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f642f468000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x0000003c29200000)
libssl3.so => /usr/lib64/libssl3.so (0x00007f642f234000)
libsmime3.so => /usr/lib64/libsmime3.so (0x00007f642f009000)
libnss3.so => /usr/lib64/libnss3.so (0x00007f642eccf000)
libnssutil3.so => /usr/lib64/libnssutil3.so (0x00007f642eab0000)
libplds4.so => /lib64/libplds4.so (0x00007f642e8ad000)
libplc4.so => /lib64/libplc4.so (0x00007f642e6a9000)
libnspr4.so => /lib64/libnspr4.so (0x00007f642e46c000)
libssh2.so.1 => /usr/lib64/libssh2.so.1 (0x0000003c21600000)
libsasl2.so.2 => /usr/lib64/libsasl2.so.2 (0x0000003c34e00000)
libssl.so.10 => /usr/lib64/libssl.so.10 (0x0000003c2d600000)
libcrypto.so.10 => /lib64/libcrypto.so.10 (0x0000003c29a00000)
libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f642e263000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x0000003c2aa00000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f642e02c000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f642ddcf000)
Now:
linux-vdso.so.1 => (0x00007fff187ff000)
libABRTUtils.so.0 => /usr/lib64/libABRTUtils.so.0 (0x00007fb12b24e000)
libdbus-1.so.3 => /lib64/libdbus-1.so.3 (0x0000003c1fe00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fb12b032000)
libABRTdUtils.so.0 => /usr/lib64/libABRTdUtils.so.0 (0x00007fb12ae2b000)
libpolkit-gobject-1.so.0 => /usr/lib64/libpolkit-gobject-1.so.0 (0x0000003c2c600000)
libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x0000003c20a00000)
libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x0000003c1f600000)
libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0 (0x0000003c20600000)
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x0000003c1fa00000)
librt.so.1 => /lib64/librt.so.1 (0x00007fb12ac23000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x0000003c1f200000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fb12aa1f000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000003c2c200000)
libm.so.6 => /lib64/libm.so.6 (0x00007fb12a79b000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003c28e00000)
libc.so.6 => /lib64/libc.so.6 (0x00007fb12a41c000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb12b45e000)
libeggdbus-1.so.0 => /usr/lib64/libeggdbus-1.so.0 (0x0000003c30200000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fb12a202000)
libz.so.1 => /lib64/libz.so.1 (0x0000003c1e600000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fb129fe3000)
libdbus-glib-1.so.2 => /usr/lib64/libdbus-glib-1.so.2 (0x00007fb129dc0000)
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
| |
This fixes problems of having long lines truncated - and we do have very long lines
sometimes - curl errors with HTML, list of debuginfos etc.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
| |
Bad boy Karel "improved" it incorrectly, and did not revert it.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Also adjusts abrt-action-print to return better error message:
'/tmp' is not a crash dump directory
1
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Usage: abrt-action-print [v] -d DIR
Print information about the crash to standard output
-v, --verbose be verbose
-d DIR Crash dump directory
As you can see, it simply writes crash dump information
to stdout, not to a file.
Logger plugin spawns a child abrt-action-print -d DIR
and pipes its output to log file.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The tool works similarly to abrt-action-bugzilla:
Usage: abrt-action-rhtsupport -c CONFFILE -d DIR [-vs]
Report a crash to RHTSupport
Options:
-c FILE Configuration file (may be given many times)
-d DIR Crash dump directory
-v Verbose
-s Log to syslog
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Usage: abrt-action-analyze-oops [-vs] -d DIR
Calculates and saves UUID and DUPHASH of oops crash dumps
-v, --verbose be verbose
-d DIR Crash dump directory
-s Log to syslog
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch splits off uuid generation for Python
to a separate program:
Usage: abrt-action-analyze-python [-vs] -d DIR
Calculates and saves UUID and DUPHASH of python crash dumps
-v, --verbose be verbose
-d DIR Crash dump directory
-s Log to syslog
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch splits off uuid generation for CCpp
to a separate program:
Usage: abrt-action-analyze-c [-v] -d DIR
Calculates and saves UUID
-v, --verbose be verbose
-d DIR Crash dump directory
Run tested.
Thus, now entire cycle of coredump processing/reporting
consists of external programs:
abrt-action-analyze-c
abrt-action-save-package-data
abrt-action-install-debuginfo
abrt-action-generate-backtrace
abrt-action-bugzilla
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch makes it easier to analyze "bool" type options -
now they are all just bits in a single return value,
no need to have an integer variable for each option.
The previous behavior is retained too: it is useful for
"cumulative" options like -vvv.
The patch also removes all OPT_GROUPs.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch splits off Bugzilla plugin's bugzilla submission
generation into a separate tool:
abrt-action-bugzilla: invalid option -- 'z'
Usage: abrt-action-bugzilla -c CONFFILE -d DIR [-vs]
Report a crash to Bugzilla
Options:
-c FILE Configuration file (may be given many times)
-d DIR Crash dump directory
-v Verbose
-s Log to syslog
This change is bigger than previous similar patches:
I needed to find a way to pass settings to the child
and get back reporting result - all without breaking
current interface.
I decided to pass configuration via -c CONFFILE:
(1) it is trivial to pass /etc/abrt/bugzilla.conf to it,
and
(2) I can use "-c -" to parse config from stdin.
abrtd simply write per-reporting settings to child's stdin.
The log and reporting result (success/failure) is
taken from child's stdout.
After a few more such patches, we can remove XMLRPC
and HTTP code and library dependencies from abrtd.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
|
| |
The mext commit will be much more readable:
insted of huge insert, you will actually see that there are
very few changes to actual bz code in that file.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
| |
This is needed to make duplicate hash visible for separate programs
looking at crash dumps.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, usage is an array of pointers to string.
It is meant to support this:
usage: foo --bar
or: foo --baz
or: foo -z
The patch removes this and makes usage just a string:
usage: foo --bar
Why remove this?
(1) We can achieve old format by using the usage string with many lines:
usage = "foo --bar\n"
" or: foo --baz\n"
" or: foo -z";
(2) We don't use multi-line usage anyway.
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
|
|
|
| |
This patch removes the need to add --help option to every program.
It is added (and handled) by parse_opts().
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
|
|
|
|
| |
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
|
|
|
|
| |
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
|
|
|
|
| |
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
|
|
|
|
| |
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
|
|
|
|
| |
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
|
|
|
|
| |
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
|
|
|
|
| |
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
|