diff options
Diffstat (limited to 'src/Hooks/dumpoops.cpp')
| -rw-r--r-- | src/Hooks/dumpoops.cpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/Hooks/dumpoops.cpp b/src/Hooks/dumpoops.cpp new file mode 100644 index 0000000..5cad151 --- /dev/null +++ b/src/Hooks/dumpoops.cpp @@ -0,0 +1,44 @@ +/* + dumpoops.cpp - dump oops(es) in a given file + + Copyright (C) 2009 Denys Vlasenko (dvlasenk@redhat.com) + Copyright (C) 2009 Zdenek Prikryl (zprikryl@redhat.com) + Copyright (C) 2009 RedHat inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ +#include "abrtlib.h" +#include "KerneloopsScanner.h" + +int main(int argc, char **argv) +{ + if (!argv[1]) + { + log("usage: %s FILE", argv[0]); + return 1; + } + msg_prefix = xasprintf("%s: ", argv[0]); + + CKerneloopsScanner scanner; + int cnt = scanner.ScanSysLogFile(argv[1]); + log("found oopses: %d", cnt); + + if (cnt > 0) + { + log("dumping oopses"); + scanner.SaveOopsToDebugDump(); + } + return 0; +} |
