Upgraded GRUB2 to 2.00 release.
[AROS.git] / arch / all-pc / boot / grub2-aros / include / grub / err.h
blob2edc514e29665b79db8a0af9ecc0ba6457455f14
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 #define GRUB_MAX_ERRMSG 256
27 typedef enum
29 GRUB_ERR_NONE = 0,
30 GRUB_ERR_TEST_FAILURE,
31 GRUB_ERR_BAD_MODULE,
32 GRUB_ERR_OUT_OF_MEMORY,
33 GRUB_ERR_BAD_FILE_TYPE,
34 GRUB_ERR_FILE_NOT_FOUND,
35 GRUB_ERR_FILE_READ_ERROR,
36 GRUB_ERR_BAD_FILENAME,
37 GRUB_ERR_UNKNOWN_FS,
38 GRUB_ERR_BAD_FS,
39 GRUB_ERR_BAD_NUMBER,
40 GRUB_ERR_OUT_OF_RANGE,
41 GRUB_ERR_UNKNOWN_DEVICE,
42 GRUB_ERR_BAD_DEVICE,
43 GRUB_ERR_READ_ERROR,
44 GRUB_ERR_WRITE_ERROR,
45 GRUB_ERR_UNKNOWN_COMMAND,
46 GRUB_ERR_INVALID_COMMAND,
47 GRUB_ERR_BAD_ARGUMENT,
48 GRUB_ERR_BAD_PART_TABLE,
49 GRUB_ERR_UNKNOWN_OS,
50 GRUB_ERR_BAD_OS,
51 GRUB_ERR_NO_KERNEL,
52 GRUB_ERR_BAD_FONT,
53 GRUB_ERR_NOT_IMPLEMENTED_YET,
54 GRUB_ERR_SYMLINK_LOOP,
55 GRUB_ERR_BAD_COMPRESSED_DATA,
56 GRUB_ERR_MENU,
57 GRUB_ERR_TIMEOUT,
58 GRUB_ERR_IO,
59 GRUB_ERR_ACCESS_DENIED,
60 GRUB_ERR_EXTRACTOR,
61 GRUB_ERR_NET_BAD_ADDRESS,
62 GRUB_ERR_NET_ROUTE_LOOP,
63 GRUB_ERR_NET_NO_ROUTE,
64 GRUB_ERR_NET_NO_ANSWER,
65 GRUB_ERR_WAIT,
66 GRUB_ERR_BUG,
67 GRUB_ERR_NET_PORT_CLOSED,
68 GRUB_ERR_NET_INVALID_RESPONSE,
69 GRUB_ERR_NET_UNKNOWN_ERROR,
70 GRUB_ERR_NET_PACKET_TOO_BIG,
71 GRUB_ERR_NET_NO_DOMAIN,
72 GRUB_ERR_EOF
74 grub_err_t;
76 struct grub_error_saved
78 grub_err_t grub_errno;
79 char errmsg[GRUB_MAX_ERRMSG];
82 extern grub_err_t EXPORT_VAR(grub_errno);
83 extern char EXPORT_VAR(grub_errmsg)[GRUB_MAX_ERRMSG];
85 grub_err_t EXPORT_FUNC(grub_error) (grub_err_t n, const char *fmt, ...);
86 void EXPORT_FUNC(grub_fatal) (const char *fmt, ...) __attribute__ ((noreturn));
87 void EXPORT_FUNC(grub_error_push) (void);
88 int EXPORT_FUNC(grub_error_pop) (void);
89 void EXPORT_FUNC(grub_print_error) (void);
90 extern int EXPORT_VAR(grub_err_printed_errors);
91 int grub_err_printf (const char *fmt, ...)
92 __attribute__ ((format (printf, 1, 2)));
94 #endif /* ! GRUB_ERR_HEADER */