]>
Commit | Line | Data |
---|---|---|
89b1a15b DD |
1 | /* |
2 | * Copyright (c) 2000, Red Hat, Inc. | |
3 | * | |
4 | * This program is free software; you can redistribute it and/or modify | |
5 | * it under the terms of the GNU General Public License as published by | |
6 | * the Free Software Foundation; either version 2 of the License, or | |
7 | * (at your option) any later version. | |
8 | * | |
9 | * A copy of the GNU General Public License can be found at | |
10 | * http://www.gnu.org/ | |
11 | * | |
12 | * Written by DJ Delorie <dj@redhat.com> | |
13 | * | |
14 | */ | |
15 | ||
16 | /* This is for "printf"-like logging. Messages are stored in memory | |
17 | until they're written out. "babble" means the message is just idle | |
18 | babbling; it can be ignored for shorter logs. */ | |
19 | ||
3c054baf | 20 | #include "String++.h" |
89b1a15b | 21 | |
3c054baf | 22 | enum log_level { |
1ac649ed | 23 | LOG_PLAIN = 2, |
3c054baf RC |
24 | LOG_BABBLE = 1, |
25 | LOG_TIMESTAMP = 2 | |
26 | }; | |
27 | ||
28 | void log (enum log_level level, const char *fmt, ...) | |
b24c88b3 | 29 | __attribute__ ((format (printf, 2, 3))); |
3c054baf | 30 | void log (enum log_level level, String const &); |
89b1a15b DD |
31 | |
32 | /* Here, "babble" means to write out the babble also. If "append" is | |
33 | nonzero, the log is appended to any existing file. */ | |
34 | ||
3c054baf | 35 | void log_save (int writebabble, String const &filename, int append); |
89b1a15b DD |
36 | |
37 | /* This is the only legal way to exit. It writes out all the logs and things */ | |
38 | ||
b24c88b3 | 39 | void exit_setup (int exit_code) __attribute__ ((noreturn)); |