summaryrefslogtreecommitdiffstats
path: root/src/daemon/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* remove CCommLayerServer[DBus] classesDenys Vlasenko2011-01-211-2/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Remove CCrashWatcher and CObserver classes; merge libabrt_daemon into abrtdDenys Vlasenko2011-01-211-2/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* convert abrt-action-save-package-data.cpp to CDenys Vlasenko2011-01-201-1/+1
| | | | | | The conversion is trivial: a few tweaks to one header file Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove old plugin machinery. -10k and -1 library dependence in abrtdDenys Vlasenko2011-01-191-1/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* move abrt-action-FOO from /usr/libexec to /usr/binDenys Vlasenko2011-01-111-4/+4
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* rename libabrt.so to libreport.soDenys Vlasenko2010-12-091-4/+4
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* create report-libs-devel package; separate out report headersDenys Vlasenko2010-12-091-4/+4
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* This patch changes crash data to use C structures.Denys Vlasenko2010-12-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The smallest data element is: struct crash_item { char *content; unsigned flags; }; where content is, eh, content, and flags is a bit flag field. crash_data_t is a map of crash_item's, implemented as a pointer to heap-allocated GHashTable. vector_of_crash_data_t is a vector of crash_data_t's, implemented as a pointer to heap-allocated GPtrArray. Most operations have light wrappers around them to hide the nature of the containers. For example, to free vector_of_crash_data, you need to use free_vector_of_crash_data(ptr) instead of open-coding g_ptr_array_free. The wrapper is thin. The goal is not so much to hide the implementation, but more to make it easier to use the correct function. dbus (un)marshalling functions convert crash_item to three-element array of strings, in order to keep compatibility with abrt-gui (python). This can be changed later to use native representation. crash_data_t and vector_of_crash_data_t are represented in "natural" way, no funny stuff there. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* reorganize librariesDenys Vlasenko2010-11-261-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch does not change any code per se, it renames libABRTfoo -> libabrt_bar and moves a few functions around. After the patch, we are left with the following libs: libabrt - the stuff shared among most of abrt (like xmalloc, logging) libabrt_daemon - only daemon-related things are here (should probably be just moved into daemon - later) libabrt_dbus - daemon, cli and applet use this libabrt_web - abrt-action-foo where foo deals with network/web/ftp/... As a result, we have following reductions in dependent libs: /usr/libexec/abrt-hook-ccpp: linux-vdso.so.1 => () - libABRTUtils.so.0 => /usr/lib64/libABRTUtils.so.0 () + libabrt.so.0 => /usr/lib64/libabrt.so.0 () libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 () - libdbus-1.so.3 => /lib64/libdbus-1.so.3 () - libpthread.so.0 => /lib64/libpthread.so.0 () - librt.so.1 => /lib64/librt.so.1 () - libdl.so.2 => /lib64/libdl.so.2 () /usr/libexec/abrt-action-upload: linux-vdso.so.1 => () libtar.so.1 => /usr/lib64/libtar.so.1 () libcurl.so.4 => /usr/lib64/libcurl.so.4 () - libABRTdUtils.so.0 => /usr/lib64/libABRTdUtils.so.0 () - libABRTUtils.so.0 => /usr/lib64/libABRTUtils.so.0 () + libabrt.so.0 => /usr/lib64/libabrt.so.0 () libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 () - libdbus-1.so.3 => /lib64/libdbus-1.so.3 () Similar savings are in almost every abrt-action-foo. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove polkitNikola Pajkovsky2010-11-191-4/+0
| | | | Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* abrt-handle-crashdump: prepend our libexec path to $PATHDenys Vlasenko2010-11-151-0/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* move inc/ and lib/ to src/. No code changesDenys Vlasenko2010-11-151-14/+14
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* move files from lib/plugins to src/pluginsJiri Moskovcak2010-11-101-182/+11
|
* rename abrt_action.conf -> abrt_event.conf (forgot two places)Denys Vlasenko2010-11-021-1/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* abrt-handle-crashdump: new semi-debug utility to run abrt actions for a ↵Denys Vlasenko2010-11-011-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* introduce abrt_action.conf; use it for post-create stepDenys Vlasenko2010-11-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* reduce usage of daemon's library in non-daemon partsDenys Vlasenko2010-10-251-0/+2
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Splitting web-related functions into libABRT_web_utils.soDenys Vlasenko2010-10-251-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* new action tool: abrt-action-kerneloopsDenys Vlasenko2010-10-251-0/+23
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* move logger reporting to a separate program (abrt-action-print)Denys Vlasenko2010-10-201-1/+22
| | | | | | | | | | | | | | | | | 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>
* move rhtsupport reporting to a separate program (abrt-action-rhtsupport)Denys Vlasenko2010-10-201-1/+23
| | | | | | | | | | | | | | | | 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>
* move uuid/duphash generation for Kerneloops to abrt-action-analyze-oopsDenys Vlasenko2010-10-191-0/+19
| | | | | | | | | | | | 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>
* move uuid/duphash generation for python to abrt-action-analyze-pythonDenys Vlasenko2010-10-191-0/+19
| | | | | | | | | | | | | | | 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>
* btparser integration: merge it into ABRT's directory hierarchyKarel Klic2010-10-141-1/+1
|
* btparser initial integrationKarel Klic2010-10-141-1/+2
|
* move uuid generation for CCpp to a separate program (abrt-action-analyze-c)Denys Vlasenko2010-10-141-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* move bugzilla reporting to a separate program (abrt-action-bugzilla)Denys Vlasenko2010-10-111-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* rename abrt-debuginfo-install to abrt-action-install-debuginfoDenys Vlasenko2010-09-231-2/+4
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove unused codeNikola Pajkovsky2010-09-231-2/+0
| | | | | | code is run in abrt-action-save-package-data.cpp Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* This patch splits off abrtd's package/component/descriptionDenys Vlasenko2010-09-221-1/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | generation into a separate tool: abrt-action-save-package-data: invalid option -- 'z' Usage: abrt-action-save-package-data -d DIR [-vs] Query package database and save package name, component, and description Options: -d DIR Crash dump directory -v Verbose -s Log to syslog This also allows for debugging and regression testing of abrt-action-save-package-data - it can be simply run from command-line. Also it provides a better fault isolation - crash in abrt-action-save-package-data does not take down abrtd. Same goes for isolation of memory leaks - old code actually had leaks on a rarely used error path. New code doesn't, but if it would have, it wouldn't matter, since the process is short-lived. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* This patch splits off CCpp's backtrace generation into a separate tool:Denys Vlasenko2010-09-201-1/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | $ abrt-action-generate-backtrace -z abrt-action-generate-backtrace: invalid option -- 'z' Usage: abrt-action-generate-backtrace -d DIR [-i DIR1:DIR2] [-t SECONDS] [-vs] Generate backtrace, its quality rating, hash, and crashed function Options: -d DIR Crash dump directory -i DIR1:DIR2 Additional debuginfo directories -t SECONDS Kill gdb if it runs for more than SECONDS -v Verbose -s Log to syslog This also allows for debugging and regression testing of abrt-action-generate-backtrace separately - it can be simply run from command-line. Also it provides a better fault isolation - crash in abrt-action-generate-backtrace does not take down abrtd. The code is based on CCpp.cpp. CCpp analyzer is made to spawn a child to do the backtrace generation. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* This patch makes abrtd spawn a new process, abrt-server,Denys Vlasenko2010-09-141-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | for every socket client. This allows for simpler timeout handling using SIGALRM, and makes timers for tracking client timeouts unnecessary. This also allows for debugging and regression testing of abrt-server separately - it can be simply run from command-line and fed commands on stdin. Also it provides a better fault isolation - crash in abrt-server does not take down abrtd. The code is based on dumpsocket.{cpp,h}. Most of dumpsocket.cpp goes to abrt-server.c, a small part goes to Daemon.cpp (i.e. to abrtd). This change will not compile - it does not have dumpsocket.cpp renamed to abrt-server.c, which makes the change easier to read. The next change, which I'll commit after this one, contains only the renaming. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* msg_prefix now doesn't need ": " suffixDenys Vlasenko2010-09-141-2/+2
| | | | | | Contains some other trivial changes Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* lower case direcotry(no code changed)Nikola Pajkovsky2010-08-101-0/+65
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>