Implementation: C/C++ handling: ============== we change /proc/sys/kernel/core_pattern to invoke abrtd helper to save the coredump of crashing app: * helper source code: http://git.fedorahosted.org/git/abrt.git?p=abrt.git;a=blob_plain;f=src/Hooks/abrt-hook-python.cpp the code responsible for this: #define CORE_PATTERN "|/usr/libexec/abrt-hook-ccpp" "/var/spool/abrt" %p %s %u" ofstream fOutCorePattern; fOutCorePattern.open(CORE_PATTERN_IFACE); if (fOutCorePattern.is_open()) { fOutCorePattern << CORE_PATTERN << endl; fOutCorePattern.close(); } %p - pid %s - signal %u - uid when some crash occurs abrt-hook-ccpp is invoked to store the coredump and some other info read from /proc//: executable: char buf[sizeof("/proc/%u/exe") + sizeof(int)*3]; sprintf(buf, "/proc/%u/exe", (int)pid); readlink(buf); cmdline: char path[sizeof("/proc/%u/cmdline") + sizeof(int)*3]; sprintf(path, "/proc/%u/cmdline", (int)pid); both is saved to file in /var/spool/abrt/ccpp-