summaryrefslogtreecommitdiffstats
path: root/src/include
Commit message (Collapse)AuthorAgeFilesLines
* abrt-gtk: make Delete key actually delete the dump dirDenys Vlasenko2011-02-102-29/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* get rid of FILENAME_DESCRIPTION, rename "release" to "os_release"Denys Vlasenko2011-02-101-3/+3
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* run_event: fix comment which become outdated after recent changeDenys Vlasenko2011-02-011-1/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* abrt-cli -r DIR: copy non-writable DIR into $HOME/abrt/spoolDenys Vlasenko2011-02-012-1/+5
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* run_event: add children_countDenys Vlasenko2011-01-271-0/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* preparatory changes for abrt-cli local processing changeDenys Vlasenko2011-01-271-0/+4
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* split parse_release() into Bz and RHTS versionsDenys Vlasenko2011-01-251-2/+4
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Remove CCrashWatcher and CObserver classes; merge libabrt_daemon into abrtdDenys Vlasenko2011-01-213-95/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove plugin.h, move its only macro into into only userDenys Vlasenko2011-01-202-31/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* introduce and use new helper function list_free_with_freeDenys Vlasenko2011-01-202-2/+7
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove old plugin machinery. -10k and -1 library dependence in abrtdDenys Vlasenko2011-01-194-164/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* preliminary cleanup patchesDenys Vlasenko2011-01-141-61/+21
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove C++-ism ssprintf from abrtlib.hDenys Vlasenko2011-01-111-19/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* do not pollute library namespace: prefix bin2hex and hex2bin with abrt_Denys Vlasenko2011-01-111-0/+2
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* pass old pattern to ccpp hook and use itDenys Vlasenko2011-01-061-0/+5
| | | | | | | | | | | | | | | | | | | | | | | abrtd: instead of "|/usr/libexec/abrt-ccpp-hook DEBUG_DUMPS_DIR %p %s %u %c", sets coredump handler to "|/usr/libexec/abrt-ccpp-hook DEBUG_DUMPS_DIR %s %c %p %u %g %t %h %e OLD_PATTERN" abrt-ccpp-hook: expands OLD_PATTERN using values of %s %c %p %u %g %t %h %e and uses it as a name of "compat coredump". Patch has a feature which prevents usage of kernel-truncated OLD_PATTERN: it is passed as hex string *with terminating NUL* (encoded as 00). If ccpp hook doesn't see 00, it refuses to use OLD_PATTERN and uses string "core" instead. Run tested. On a new kernel, passes up to 27 char long old pattern. Longer patterns are still truncated. This may be improved in future kernels. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* dump_dir: make chown'ing of new files optional - needed for non-root usageDenys Vlasenko2011-01-041-0/+3
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* extend run_event() to run_event_on_dir_name() and run_event_on_crash_data()Denys Vlasenko2010-12-222-5/+10
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* *: rename *crash_dump.* -> *crash_data.*Denys Vlasenko2010-12-226-8/+8
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* create_dump_dir: add base_dir_name parameter.Denys Vlasenko2010-12-161-1/+1
| | | | | | | | This makes python wrappers more usable. src/report-python/test_full demonstrates how pyhton programs can run reporting now. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Rename foo_crash_dump_dir -> foo_dump_dirDenys Vlasenko2010-12-152-3/+3
| | | | | | | | | | | | | 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>
* create report-libs-devel package; separate out report headersDenys Vlasenko2010-12-094-8/+8
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* add abrt_ prefixes to abrt-internal functions in libabrt.soDenys Vlasenko2010-12-084-44/+119
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* removal of C++isms from libabrt, part 2Denys Vlasenko2010-12-081-10/+0
| | | | | | 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-085-74/+42
| | | | | | | | | | | | | 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>
* remove unused function parse_args; make a few functions extern "C"Denys Vlasenko2010-12-071-8/+7
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* This patch changes crash data to use C structures.Denys Vlasenko2010-12-063-47/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* factor out headers so that "report lib" API is separated out of abrt APIDenys Vlasenko2010-12-016-57/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* preparatory patch for future factoring out of headers for reportlibDenys Vlasenko2010-11-266-12/+11
| | | | | | Some files and functions are renamed, no logic changes. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* reorganize librariesDenys Vlasenko2010-11-262-23/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 sqlite DBDenys Vlasenko2010-11-233-150/+9
| | | | | | | | | | | | | | | | | | | | | | 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>
* rhbz 623142Nikola Pajkovsky2010-11-221-0/+1
| | | | | | | Save tainted flag from /proc/sys/kernel/tainted. When flag is set to 1 TAINED string is added to bugzilla summary. Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* Cleanup. Remove last vestiges of AnalyzerActionsAndReporters.Denys Vlasenko2010-11-181-3/+3
| | | | | | 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-52/+3
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Make "abrt-handle-crashdump -e BOGUS_EVENT" fail (also fail if asked over dbus)Denys Vlasenko2010-11-151-0/+4
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* move inc/ and lib/ to src/. No code changesDenys Vlasenko2010-11-1515-0/+1203
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>