2009-07-20 Joe Auricchio <jauricchio@gmail.com>
[grub2/phcoder.git] / include / grub / err.h
blob3435fb76928a8f62bb777ad2215c58f0c17fcd9d
1 /* err.h - error numbers and prototypes */
2 /*
3 * GRUB -- GRand Unified Bootloader
4 * Copyright (C) 2002,2005,2007,2008 Free Software Foundation, Inc.
6 * GRUB is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
11 * GRUB is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with GRUB. If not, see <http://www.gnu.org/licenses/>.
20 #ifndef GRUB_ERR_HEADER
21 #define GRUB_ERR_HEADER 1
23 #include <grub/symbol.h>
25 typedef enum
27 GRUB_ERR_NONE = 0,
28 GRUB_ERR_TEST_FAILURE,
29 GRUB_ERR_BAD_MODULE,
30 GRUB_ERR_OUT_OF_MEMORY,
31 GRUB_ERR_BAD_FILE_TYPE,
32 GRUB_ERR_FILE_NOT_FOUND,
33 GRUB_ERR_FILE_READ_ERROR,
34 GRUB_ERR_BAD_FILENAME,
35 GRUB_ERR_UNKNOWN_FS,
36 GRUB_ERR_BAD_FS,
37 GRUB_ERR_BAD_NUMBER,
38 GRUB_ERR_OUT_OF_RANGE,
39 GRUB_ERR_UNKNOWN_DEVICE,
40 GRUB_ERR_BAD_DEVICE,
41 GRUB_ERR_READ_ERROR,
42 GRUB_ERR_WRITE_ERROR,
43 GRUB_ERR_UNKNOWN_COMMAND,
44 GRUB_ERR_INVALID_COMMAND,
45 GRUB_ERR_BAD_ARGUMENT,
46 GRUB_ERR_BAD_PART_TABLE,
47 GRUB_ERR_UNKNOWN_OS,
48 GRUB_ERR_BAD_OS,
49 GRUB_ERR_NO_KERNEL,
50 GRUB_ERR_BAD_FONT,
51 GRUB_ERR_NOT_IMPLEMENTED_YET,
52 GRUB_ERR_SYMLINK_LOOP,
53 GRUB_ERR_BAD_GZIP_DATA,
54 GRUB_ERR_MENU,
55 GRUB_ERR_TIMEOUT,
56 GRUB_ERR_IO
58 grub_err_t;
60 extern grub_err_t EXPORT_VAR(grub_errno);
61 extern char EXPORT_VAR(grub_errmsg)[];
63 grub_err_t EXPORT_FUNC(grub_error) (grub_err_t n, const char *fmt, ...);
64 void EXPORT_FUNC(grub_fatal) (const char *fmt, ...) __attribute__ ((noreturn));
65 void EXPORT_FUNC(grub_error_push) (void);
66 int EXPORT_FUNC(grub_error_pop) (void);
67 void EXPORT_FUNC(grub_print_error) (void);
68 int EXPORT_FUNC(grub_err_printf) (const char *fmt, ...)
69 __attribute__ ((format (printf, 1, 2)));
71 #endif /* ! GRUB_ERR_HEADER */