summaryrefslogtreecommitdiffstats
path: root/src/lib/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* split libreport to a separate packageJiri Moskovcak2011-06-081-66/+13
|
* reenable kernel taintNikola Pajkovsky2011-05-191-0/+1
| | | | | | | | abrt-dump-oops stores two new files into dump dir. kernel_tainted_short which is representation of kernel tainted value (P----T). kernel_tainted_long contains human readable strings of short version Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* Merge branch 'master' into report_apiJiri Moskovcak2011-05-131-1/+1
|\
| * xmlrpc and bugzilla in a new C coatNikola Pajkovsky2011-05-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | Bugzilla is splitted into two parts. One of them is core of bugzilla and second one is small module called librhbz. I did it, because I want to add a new functionality into bugzilla and I don't want to squash it into one big module. Librhbz is not a part of our libreport, because almost every function dies when feels badly (print error msg and then die). Server sends error or abrt sends corrupted xml or server sends corrupted xml. Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* | report api proposalJiri Moskovcak2011-05-131-1/+3
|/
* Logger: output "END:" line to delimit appended reports. closes bz#698458Denys Vlasenko2011-04-281-0/+1
| | | | | | Also changes Bugzilla and abrt-cli output format. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* mass replace of crash_data with problem_dataDenys Vlasenko2011-04-231-1/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* delete ugly parse_conf(), use load_abrt_conf() insteadDenys Vlasenko2011-04-201-0/+1
| | | | | | Therefore moved abrt_conf.* to libreport Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* switch python and oops hashing to sha1Denys Vlasenko2011-04-181-1/+0
| | | | | | | Update sha1 code to a smaller version. Verified that ccpp hashing produces the same results as the old code. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* add -Wwrite-strings everywhereDenys Vlasenko2011-03-091-3/+3
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* implement load_event_config_data. Untested.Denys Vlasenko2011-03-081-4/+9
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* added event_config.c stubJiri Moskovcak2011-03-071-1/+2
|
* added function to parse event description from xml fileJiri Moskovcak2011-03-071-1/+2
|
* Revert "renamed libreport.so to libreport2.so"Karel Klic2011-03-031-6/+6
| | | | | This is not needed at the end. This reverts commit ef96cd431369b2cf0dd640a0bb66be4fb029b9c0.
* renamed libreport.so to libreport2.soJiri Moskovcak2011-03-031-6/+6
| | | | | - we have a conflict with old report library which contains file with the same name
* show more useful columns in abrt-gtk; use human-readable time in dir namesDenys Vlasenko2011-02-281-1/+2
| | | | | | | | | | | | For most users, "hostname" is the same for every crash (it is their hostname). Not every problem even has "Application" field ("low on disk space" problem, for example, doesn't), whereas any problem should have "Reason" field. For non-root, it is useful to see which dumps are in /var/spool/abrt (and aren't writable), and which are in $HOME/.abrt/spool. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* removed unneeded fileJiri Moskovcak2011-02-171-1/+1
|
* move steal_directory() into libreportJiri Moskovcak2011-02-171-1/+2
|
* 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>
* Remove CCrashWatcher and CObserver classes; merge libabrt_daemon into abrtdDenys Vlasenko2011-01-211-19/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* introduce and use new helper function list_free_with_freeDenys Vlasenko2011-01-201-0/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* remove old plugin machinery. -10k and -1 library dependence in abrtdDenys Vlasenko2011-01-191-4/+2
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* pass old pattern to ccpp hook and use itDenys Vlasenko2011-01-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | 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>
* *: rename *crash_dump.* -> *crash_data.*Denys Vlasenko2010-12-221-1/+1
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Rename foo_crash_dump_dir -> foo_dump_dirDenys Vlasenko2010-12-151-1/+1
| | | | | | | | | | | | | 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>
* rename libabrt.so to libreport.soDenys Vlasenko2010-12-091-6/+6
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* create report-libs-devel package; separate out report headersDenys Vlasenko2010-12-091-11/+9
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* Rename some .cpp files to .cDenys Vlasenko2010-12-081-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Apart from src/lib/Makefile.am changes, this is a pure rename, no textual changes to the files. Before patch set: $ size libabrt.so.0.0.1; ldd libabrt.so.0.0.1 text data bss dec hex filename 58031 2312 32 60375 ebd7 libabrt.so.0.0.1 linux-vdso.so.1 => (0x00007fffd46dc000) libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f373eabc000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f373e7b6000) libm.so.6 => /lib64/libm.so.6 (0x00007f373e531000) libc.so.6 => /lib64/libc.so.6 (0x00007f373e1b2000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f373df9c000) /lib64/ld-linux-x86-64.so.2 (0x00007f373efde000) After patch set: $ size libabrt.so.0.0.1; ldd libabrt.so.0.0.1 text data bss dec hex filename 51777 2064 32 53873 d271 libabrt.so.0.0.1 linux-vdso.so.1 => (0x00007fff48703000) libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007fd63aa45000) libc.so.6 => /lib64/libc.so.6 (0x00007fd63a6c6000) /lib64/ld-linux-x86-64.so.2 (0x00007fd63af66000) Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* removal of C++isms from libabrt, part 2Denys Vlasenko2010-12-081-1/+1
| | | | | | 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-081-1/+1
| | | | | | | | | | | | | 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-1/+0
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* This patch changes crash data to use C structures.Denys Vlasenko2010-12-061-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-261-1/+1
| | | | | | Some files and functions are renamed, no logic changes. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* correct a comment about libraries' usersDenys Vlasenko2010-11-261-2/+2
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* reorganize librariesDenys Vlasenko2010-11-261-31/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-231-1/+0
| | | | | | | | | | | | | | | | | | | | | | 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>
* remove polkitNikola Pajkovsky2010-11-191-4/+1
| | | | Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* f14 build failed. Disable -Werror for PolkitNikola Pajkovsky2010-11-181-1/+1
| | | | Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
* move inc/ and lib/ to src/. No code changesDenys Vlasenko2010-11-151-0/+109
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>