1 /*
2  * ext2_err.c:
3  * This file is automatically generated; please do not edit it.
4  */
5 
6 #include <stdlib.h>
7 
8 #define N_(a) a
9 
10 static const char * const text[] = {
11 	N_(	"EXT2FS Library version v1.45.4-867-g4bc58792"),
12 	N_(	"Wrong magic number for ext2_filsys structure"),
13 	N_(	"Wrong magic number for badblocks_list structure"),
14 	N_(	"Wrong magic number for badblocks_iterate structure"),
15 	N_(	"Wrong magic number for inode_scan structure"),
16 	N_(	"Wrong magic number for io_channel structure"),
17 	N_(	"Wrong magic number for unix io_channel structure"),
18 	N_(	"Wrong magic number for io_manager structure"),
19 	N_(	"Wrong magic number for block_bitmap structure"),
20 	N_(	"Wrong magic number for inode_bitmap structure"),
21 	N_(	"Wrong magic number for generic_bitmap structure"),
22 	N_(	"Wrong magic number for test io_channel structure"),
23 	N_(	"Wrong magic number for directory block list structure"),
24 	N_(	"Wrong magic number for icount structure"),
25 	N_(	"Wrong magic number for Powerquest io_channel structure"),
26 	N_(	"Wrong magic number for ext2 file structure"),
27 	N_(	"Wrong magic number for Ext2 Image Header"),
28 	N_(	"Wrong magic number for inode io_channel structure"),
29 	N_(	"Wrong magic number for ext4 extent handle"),
30 	N_(	"Bad magic number in super-block"),
31 	N_(	"Filesystem revision too high"),
32 	N_(	"Attempt to write to filesystem opened read-only"),
33 	N_(	"Can't read group descriptors"),
34 	N_(	"Can't write group descriptors"),
35 	N_(	"Corrupt group descriptor: bad block for block bitmap"),
36 	N_(	"Corrupt group descriptor: bad block for inode bitmap"),
37 	N_(	"Corrupt group descriptor: bad block for inode table"),
38 	N_(	"Can't write an inode bitmap"),
39 	N_(	"Can't read an inode bitmap"),
40 	N_(	"Can't write a block bitmap"),
41 	N_(	"Can't read a block bitmap"),
42 	N_(	"Can't write an inode table"),
43 	N_(	"Can't read an inode table"),
44 	N_(	"Can't read next inode"),
45 	N_(	"Filesystem has unexpected block size"),
46 	N_(	"EXT2 directory corrupted"),
47 	N_(	"Attempt to read block from filesystem resulted in short read"),
48 	N_(	"Attempt to write block to filesystem resulted in short write"),
49 	N_(	"No free space in the directory"),
50 	N_(	"Inode bitmap not loaded"),
51 	N_(	"Block bitmap not loaded"),
52 	N_(	"Illegal inode number"),
53 	N_(	"Illegal block number"),
54 	N_(	"Internal error in ext2fs_expand_dir"),
55 	N_(	"Not enough space to build proposed filesystem"),
56 	N_(	"Illegal block number passed to ext2fs_mark_block_bitmap"),
57 	N_(	"Illegal block number passed to ext2fs_unmark_block_bitmap"),
58 	N_(	"Illegal block number passed to ext2fs_test_block_bitmap"),
59 	N_(	"Illegal inode number passed to ext2fs_mark_inode_bitmap"),
60 	N_(	"Illegal inode number passed to ext2fs_unmark_inode_bitmap"),
61 	N_(	"Illegal inode number passed to ext2fs_test_inode_bitmap"),
62 	N_(	"Attempt to fudge end of block bitmap past the real end"),
63 	N_(	"Attempt to fudge end of inode bitmap past the real end"),
64 	N_(	"Illegal indirect block found" ),
65 	N_(	"Illegal doubly indirect block found" ),
66 	N_(	"Illegal triply indirect block found" ),
67 	N_(	"Block bitmaps are not the same"),
68 	N_(	"Inode bitmaps are not the same"),
69 	N_(	"Illegal or malformed device name"),
70 	N_(	"A block group is missing an inode table"),
71 	N_(	"The ext2 superblock is corrupt"),
72 	N_(	"Illegal generic bit number passed to ext2fs_mark_generic_bitmap"),
73 	N_(	"Illegal generic bit number passed to ext2fs_unmark_generic_bitmap"),
74 	N_(	"Illegal generic bit number passed to ext2fs_test_generic_bitmap"),
75 	N_(	"Too many symbolic links encountered."),
76 	N_(	"The callback function will not handle this case"),
77 	N_(	"The inode is from a bad block in the inode table"),
78 	N_(	"Filesystem has unsupported feature(s)"),
79 	N_(	"Filesystem has unsupported read-only feature(s)"),
80 	N_(	"IO Channel failed to seek on read or write"),
81 	N_(	"Memory allocation failed"),
82 	N_(	"Invalid argument passed to ext2 library"),
83 	N_(	"Could not allocate block in ext2 filesystem"),
84 	N_(	"Could not allocate inode in ext2 filesystem"),
85 	N_(	"Ext2 inode is not a directory"),
86 	N_(	"Too many references in table"),
87 	N_(	"File not found by ext2_lookup"),
88 	N_(	"File open read-only"),
89 	N_(	"Ext2 directory block not found"),
90 	N_(	"Ext2 directory already exists"),
91 	N_(	"Unimplemented ext2 library function"),
92 	N_(	"User cancel requested"),
93 	N_(	"Ext2 file too big"),
94 	N_(	"Supplied journal device not a block device"),
95 	N_(	"Journal superblock not found"),
96 	N_(	"Journal must be at least 1024 blocks"),
97 	N_(	"Unsupported journal version"),
98 	N_(	"Error loading external journal"),
99 	N_(	"Journal not found"),
100 	N_(	"Directory hash unsupported"),
101 	N_(	"Illegal extended attribute block number"),
102 	N_(	"Cannot create filesystem with requested number of inodes"),
103 	N_(	"E2image snapshot not in use"),
104 	N_(	"Too many reserved group descriptor blocks"),
105 	N_(	"Resize inode is corrupt"),
106 	N_(	"Tried to set block bmap with missing indirect block"),
107 	N_(	"TDB: Success"),
108 	N_(	"TDB: Corrupt database"),
109 	N_(	"TDB: IO Error"),
110 	N_(	"TDB: Locking error"),
111 	N_(	"TDB: Out of memory"),
112 	N_(	"TDB: Record exists"),
113 	N_(	"TDB: Lock exists on other keys"),
114 	N_(	"TDB: Invalid parameter"),
115 	N_(	"TDB: Record does not exist"),
116 	N_(	"TDB: Write not permitted"),
117 	N_(	"Ext2fs directory block list is empty"),
118 	N_(	"Attempt to modify a block mapping via a read-only block iterator"),
119 	N_(	"Wrong magic number for ext4 extent saved path"),
120 	N_(	"Wrong magic number for 64-bit generic bitmap"),
121 	N_(	"Wrong magic number for 64-bit block bitmap"),
122 	N_(	"Wrong magic number for 64-bit inode bitmap"),
123 	N_(	"Wrong magic number --- RESERVED_13"),
124 	N_(	"Wrong magic number --- RESERVED_14"),
125 	N_(	"Wrong magic number --- RESERVED_15"),
126 	N_(	"Wrong magic number --- RESERVED_16"),
127 	N_(	"Wrong magic number --- RESERVED_17"),
128 	N_(	"Wrong magic number --- RESERVED_18"),
129 	N_(	"Wrong magic number --- RESERVED_19"),
130 	N_(	"Corrupt extent header"),
131 	N_(	"Corrupt extent index"),
132 	N_(	"Corrupt extent"),
133 	N_(	"No free space in extent map"),
134 	N_(	"Inode does not use extents"),
135 	N_(	"No 'next' extent"),
136 	N_(	"No 'previous' extent"),
137 	N_(	"No 'up' extent"),
138 	N_(	"No 'down' extent"),
139 	N_(	"No current node"),
140 	N_(	"Ext2fs operation not supported"),
141 	N_(	"No room to insert extent in node"),
142 	N_(	"Splitting would result in empty node"),
143 	N_(	"Extent not found"),
144 	N_(	"Operation not supported for inodes containing extents"),
145 	N_(	"Extent length is invalid"),
146 	N_(	"I/O Channel does not support 64-bit block numbers"),
147 	N_(	"Can't check if filesystem is mounted due to missing mtab file"),
148 	N_(	"Filesystem too large to use legacy bitmaps"),
149 	N_(	"MMP: invalid magic number"),
150 	N_(	"MMP: device currently active"),
151 	N_(	"MMP: e2fsck being run"),
152 	N_(	"MMP: block number beyond filesystem range"),
153 	N_(	"MMP: undergoing an unknown operation"),
154 	N_(	"MMP: filesystem still in use"),
155 	N_(	"MMP: open with O_DIRECT failed"),
156 	N_(	"Block group descriptor size incorrect"),
157 	N_(	"Inode checksum does not match inode"),
158 	N_(	"Inode bitmap checksum does not match bitmap"),
159 	N_(	"Extent block checksum does not match extent block"),
160 	N_(	"Directory block does not have space for checksum"),
161 	N_(	"Directory block checksum does not match directory block"),
162 	N_(	"Extended attribute block checksum does not match block"),
163 	N_(	"Superblock checksum does not match superblock"),
164 	N_(	"Unknown checksum algorithm"),
165 	N_(	"MMP block checksum does not match"),
166 	N_(	"Ext2 file already exists"),
167 	N_(	"Block bitmap checksum does not match bitmap"),
168 	N_(	"Cannot iterate data blocks of an inode containing inline data"),
169 	N_(	"Extended attribute has an invalid name length"),
170 	N_(	"Extended attribute has an invalid value length"),
171 	N_(	"Extended attribute has an incorrect hash"),
172 	N_(	"Extended attribute block has a bad header"),
173 	N_(	"Extended attribute key not found"),
174 	N_(	"Insufficient space to store extended attribute data"),
175 	N_(	"Filesystem is missing ext_attr or inline_data feature"),
176 	N_(	"Inode doesn't have inline data"),
177 	N_(	"No block for an inode with inline data"),
178 	N_(	"No free space in inline data"),
179 	N_(	"Wrong magic number for extended attribute structure"),
180 	N_(	"Inode seems to contain garbage"),
181 	N_(	"Extended attribute has an invalid value offset"),
182 	N_(	"Journal flags inconsistent"),
183 	N_(	"Undo file corrupt"),
184 	N_(	"Wrong undo file for this filesystem"),
185 	N_(	"File system is corrupted"),
186 	N_(	"Bad CRC detected in file system"),
187 	N_(	"The journal superblock is corrupt"),
188 	N_(	"Inode is corrupted"),
189 	N_(	"Inode containing extended attribute value is corrupted"),
190     0
191 };
192 
193 struct error_table {
194     char const * const * msgs;
195     long base;
196     int n_msgs;
197 };
198 struct et_list {
199     struct et_list *next;
200     const struct error_table * table;
201 };
202 extern struct et_list *_et_list;
203 
204 const struct error_table et_ext2_error_table = { text, 2133571328L, 179 };
205 
206 static struct et_list link = { 0, 0 };
207 
208 void initialize_ext2_error_table_r(struct et_list **list);
209 void initialize_ext2_error_table(void);
210 
initialize_ext2_error_table(void)211 void initialize_ext2_error_table(void) {
212     initialize_ext2_error_table_r(&_et_list);
213 }
214 
215 /* For Heimdal compatibility */
initialize_ext2_error_table_r(struct et_list ** list)216 void initialize_ext2_error_table_r(struct et_list **list)
217 {
218     struct et_list *et, **end;
219 
220     for (end = list, et = *list; et; end = &et->next, et = et->next)
221         if (et->table->msgs == text)
222             return;
223     et = malloc(sizeof(struct et_list));
224     if (et == 0) {
225         if (!link.table)
226             et = &link;
227         else
228             return;
229     }
230     et->table = &et_ext2_error_table;
231     et->next = 0;
232     *end = et;
233 }
234