summaryrefslogtreecommitdiffstats
path: root/src/daemon
Commit message (Collapse)AuthorAgeFilesLines
* abrt-cli -r DIR: copy non-writable DIR into $HOME/abrt/spoolDenys Vlasenko2011-02-011-0/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* use run_state->children_count == 0 check for "event not conf'd" conditionDenys Vlasenko2011-02-012-3/+4
| | | | | | | | | | | | run_event_on_FOO() was returning -1 when it found that not even one program was run on the requested event. Which is not a very natural return value: in many cases this isn't an error. This change makes it return 0 in this case. It is ok since now we have run_state->children_count member which can be checked for 0 by those callers which want to detect this condition. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* preparatory changes for abrt-cli local processing changeDenys Vlasenko2011-01-272-7/+5
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove CCommLayerServer[DBus] classesDenys Vlasenko2011-01-219-144/+39
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* s/QuotaExceed/QuotaExceeded/gDenys Vlasenko2011-01-214-6/+6
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Remove CCrashWatcher and CObserver classes; merge libabrt_daemon into abrtdDenys Vlasenko2011-01-218-91/+150
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove plugin.h, move its only macro into into only userDenys Vlasenko2011-01-203-4/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* add OPT_LIST mechanism to handle multiply occurring optionsDenys Vlasenko2011-01-204-4/+2
| | | | | | | This allowed to convert abrt-action-bugzilla, abrt-action-rhtsupport and abrt-action-kerneloops to parse_opts() Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* make option handling more regular across all toolsDenys Vlasenko2011-01-204-68/+73
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* introduce and use new helper function list_free_with_freeDenys Vlasenko2011-01-205-25/+15
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* disable SetSettings dbus call codeDenys Vlasenko2011-01-203-33/+38
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* convert abrt-action-save-package-data.cpp to CDenys Vlasenko2011-01-204-8/+15
| | | | | | The conversion is trivial: a few tweaks to one header file Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* fixed build against rpm 4.9Jiri Moskovcak2011-01-191-3/+2
| | | | | - we don't use this code, but fixed it anyway, so we don't have to find the fix once we decide to uncomment it
* abrtd: merge pid and lock files into oneDenys Vlasenko2011-01-191-40/+28
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove old plugin machinery. -10k and -1 library dependence in abrtdDenys Vlasenko2011-01-196-395/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* move (de)installation of abrt-hook-ccpp into abrt-ccpp service.Denys Vlasenko2011-01-191-10/+1
| | | | | | | | | Init script is packaged and installed with abrt-addon-ccpp package. In order to not install the hook twice, "old" plugin loading in abrtd is disabled (pending deletion of entire "old" plugin machinery). Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove [ Cron ] handlingDenys Vlasenko2011-01-175-315/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* replace KerneloopsScanner plugin and dumpoops with abrt-dump-oops, use it in ↵Denys Vlasenko2011-01-174-24/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | abrtd Patch adds new tool: $ abrt-dump-oops Usage: abrt-dump-oops [-vsrdow] FILE Extract oops from syslog/dmesg file -v, --verbose Be verbose -s Log to syslog -r Parse kernel's message buffer before parsing FILE -d Create ABRT dump for every oops found -o Print found oopses on standard output -w Do not exit, watch the file for new oopses It extends dumpoops. Extensions: * it can watch the syslog using -w option (uses inotify) * it can scan dmesg buffer too In this way, it also becomes a replacement for KerneloopsScanner plugin: oops-detecting logic is taken verbatim from KerneloopsScanner source. abrtd is changed to start it if it sees this directive in abrt.conf: [ LogScanners ] abrt-dump-oops = abrt-dump-oops -drw /var/log/messages Default abrt.conf is changed to have such line. Patch doesn't remove KerneloopsScanner plugin and dumpoops binary yet, I will do it in a separate trivial patch. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* preliminary cleanup patchesDenys Vlasenko2011-01-141-1/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* fix a SEGV caused by returning NULL instead of empty hash tableDenys Vlasenko2011-01-131-0/+2
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* abrt_event.conf parser is updated to handleDenys Vlasenko2011-01-131-8/+36
| | | | | | | | | | | | | | | "include GLOB_PATTERN" line which expands GLOB_PATTERN and recurses into every matching file. Another small change makes it possible to have one rule to span lines: our current default abrt_event.conf has sosreport invocation which looks very ugly. Sosreport invocation is rewritten in a much more readable multi-line form now. The comment in src/daemon/abrt_event.conf is modified to explain the recognized syntax. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove C++-ism ssprintf from abrtlib.hDenys Vlasenko2011-01-111-5/+8
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* move abrt-action-FOO from /usr/libexec to /usr/binDenys Vlasenko2011-01-114-17/+6
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* 665405 - ABRT's usage of sos does not grab /var/log/messagesNikola Pajkovsky2011-01-051-1/+1
| | | | | | add --only=general --only=x11 Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* extend run_event() to run_event_on_dir_name() and run_event_on_crash_data()Denys Vlasenko2010-12-222-7/+7
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* *: rename *crash_dump.* -> *crash_data.*Denys Vlasenko2010-12-224-6/+6
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Rename foo_crash_dump_dir -> foo_dump_dirDenys Vlasenko2010-12-152-7/+7
| | | | | | | | | | | | | To be exact, these three functions are renamed: load_crash_data_from_crash_dump_dir create_crash_dump_dir delete_crash_dump_dir Rationale: data structure is called "struct dump_dir", not "struct crash_dump_dir" Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* small fixes to map_string_t conversion suggested by KarelDenys Vlasenko2010-12-131-0/+1
| | | | 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>
* add abrt_ prefixes to abrt-internal functions in libabrt.soDenys Vlasenko2010-12-081-1/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* removal of C++isms from libabrt, part 2Denys Vlasenko2010-12-081-12/+16
| | | | | | This patch rewrites a few places where we use C++ strings Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* removal of C++isms from libabrt, part 1Denys Vlasenko2010-12-086-221/+152
| | | | | | | | | | | | | This patch converts libabrt usage of C++ map<string, string> to a glib-based container, GHashTable. It is typedef-ed to map_string_h. We can't typedef it to map_string_t, since other parts of ABRT (daemon, cli) still use that name for C++ container. Also, exceptions are removed everywhere. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* This patch changes crash data to use C structures.Denys Vlasenko2010-12-065-102/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* preparatory patch: add -v to abrt-cli; remove unused func; make func staticDenys Vlasenko2010-12-032-15/+11
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* factor out headers so that "report lib" API is separated out of abrt APIDenys Vlasenko2010-12-011-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch minimally affects code per se - it adds create_crash_dump_dir() function which takes in-memory representation of the dump (map_crash_data_t object) and creates an on-disk representation. Then it returns pointer to struct dump_dir. With this function, it is possible to run an event on a user-constructed map_crash_data_t: map_crash_data_t cd; add_to_crash_data(cd, "foo", "bar"); struct dump_dir *dd = create_crash_dump_dir(cd); char *dir_name = strdup(dd->dd_dir); dd_close(dd); run_event(run_state, dir_name, event); delete_crash_dump_dir(dir_name); which is, basically, what report library is about. The biggest part of the patch is reshuffling of header files, with the following result: three header files which are not cluttered by other ABRT stuff, and expose the following API each: crash_dump.h - in-memory crash dump data structs and ops dump_dir.h - on-disk crash dump data structs and ops run_event.h - run_event() and friends These is a test application, test_report.cpp.cpp, which demonstrates (and tests) usage of these headers. (grep for "test-report" and enable it in build system if you want it to be built). It creates a temporary dump in /var/run/abrt/tmp-NNNN-NNNNN and runs "report" event. Deleting of temp dump is disabled for testing purposes - you might want to see the contents. Here is how the binary looks like: text data bss dec hex filename 3730 668 48 4446 115e /usr/bin/test-report linux-vdso.so.1 => (0x00007ffffa80f000) libabrt.so.0 => /usr/lib64/libabrt.so.0 (0x00007fad1f35e000) libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x0000003c1f200000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000003c2c200000) libm.so.6 => /lib64/libm.so.6 (0x00007fad1f0da000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003c28e00000) libc.so.6 => /lib64/libc.so.6 (0x00007fad1ed5b000) /lib64/ld-linux-x86-64.so.2 (0x00007fad1f570000) Next step would be to clean up the namespace, then rename libabrt.so into libreport.so, then split it into a separate package so that we can install it without installing other two abrt .so files. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* new debuginfo install script rewritten in pythonJiri Moskovcak2010-11-291-2/+2
| | | | | | | | - using python alows us to use the yum API, so we can read the progress, file sizes, requires disk space, etc.. and seems to be faster the using yum --whatprovides + yumdownloader - it's easier to translate - we can drop dependency on yum-utils
* preparatory patch for future factoring out of headers for reportlibDenys Vlasenko2010-11-265-10/+10
| | | | | | Some files and functions are renamed, no logic changes. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* reorganize librariesDenys Vlasenko2010-11-263-6/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* abrtd: suppress spurious warning about missing coredump and inform_allDenys Vlasenko2010-11-252-8/+13
| | | | | | Also plugs two memory leaks Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove sqlite DBDenys Vlasenko2010-11-2311-441/+268
| | | | | | | | | | | | | | | | | | | | | | This change removes sqlite database. Database was used to find dump dirs by [UID:]UUID. This patch uses more natural way: dump dirs are addressed by their directory names. DB was also used to produce a list of dump dirs. Now it is done by iterating over the /var/spool/abrt directory. And finally, DB was also used to find duplicate UUIDs. Now it is done by iterating over the /var/spool/abrt directory. Crash count, "inform all" and reporting result message are moved from DB field to a file in dump dir. "Reported" DB field is deleted - if message != "", then this dump was reported. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Merge branch 'remove-polkit'Nikola Pajkovsky2010-11-226-146/+0
|\ | | | | | | | | | | * remove-polkit: remove PLUGIN_DYNAMIC_LOAD_UNLOAD remove polkit
| * remove PLUGIN_DYNAMIC_LOAD_UNLOADNikola Pajkovsky2010-11-193-91/+0
| | | | | | | | | | | | it contains polkit Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
| * remove polkitNikola Pajkovsky2010-11-194-55/+0
| | | | | | | | Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* | preraratory patch for database removalDenys Vlasenko2010-11-222-16/+16
| | | | | | | | | | | | | | I splitted bits from a large "database removal" patch which are simple and non-contentiouns. They are in this change. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* | Improve some comments. No code changesDenys Vlasenko2010-11-221-0/+4
|/ | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Cleanup. Remove last vestiges of AnalyzerActionsAndReporters.Denys Vlasenko2010-11-185-154/+1
| | | | | | Also: made one function static, made dd_delete() call dd_close(). Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* removing unused Reporter class and unused members of PluginManager classDenys Vlasenko2010-11-172-45/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove unused SetPluginSettings(...)Nikola Pajkovsky2010-11-164-140/+0
| | | | Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* abrtd/gui: remove [AnalyzerActionsAndReporters], migrate to event-based ↵Denys Vlasenko2010-11-154-28/+19
| | | | | | processing Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>