]>
Commit | Line | Data |
---|---|---|
2a29f135 TT |
1 | 2003-05-05 Theodore Ts'o <tytso@mit.edu> |
2 | ||
3 | * test_io.c: Pay attention to the environment variables | |
4 | TEST_IO_LOGFILE, TEST_IO_FLAGS, and TEST_IO_BLOCK to | |
5 | determine whether or not we should log io activity, and to | |
6 | where. | |
7 | ||
68dbdc2f TT |
8 | 2003-05-03 Theodore Ts'o <tytso@mit.edu> |
9 | ||
10 | * tst_badblocks.c (file_test): Use tmpfile() instead of mktemp(). | |
11 | ||
05a27b1d TT |
12 | 2003-04-29 Theodore Ts'o <tytso@mit.edu> |
13 | ||
14 | * getsize.c (ext2fs_get_device_size): Allow windows code to get | |
15 | the resize for filesystems that are in regular files. | |
16 | ||
71df0dc3 TT |
17 | 2003-04-21 Theodore Ts'o <tytso@mit.edu> |
18 | ||
19 | * Release of E2fsprogs 1.33 | |
20 | ||
afb6d709 TT |
21 | 2003-04-21 Theodore Ts'o <tytso@mit.edu> |
22 | ||
23 | * Makefile.in: Use DYLD_LIBRAY_PATH so that "make check" works on | |
24 | Darwin systems when building with shared libraries. | |
25 | ||
a85e81a2 TT |
26 | 2003-04-18 Theodore Ts'o <tytso@mit.edu> |
27 | ||
28 | * unix_io.c: Use __CYGWIN__ instead of CYGWIN. | |
29 | ||
c6928406 TT |
30 | 2003-04-17 Theodore Ts'o <tytso@mit.edu> |
31 | ||
32 | * getsize.c: Add Cygwin/Windows version of ext2fs_get_device_size() | |
33 | ||
fff45483 TT |
34 | 2003-04-12 Theodore Ts'o <tytso@mit.edu> |
35 | ||
36 | * unix_io.c (raw_read_blk): Add Cygwin support (the Windows block | |
37 | device only accepts sector aligned read requests. | |
38 | ||
39 | * ismounted.c (check_mntent_file): Deal with OS's that don't | |
40 | define MNTOPT_RO. | |
41 | ||
42 | * imager.c: If the OS doesn't define ssize_t, typedef it to int. | |
43 | ||
2c93113e TT |
44 | 2003-04-11 Theodore Ts'o <tytso@mit.edu> |
45 | ||
46 | * ext2_fs.h (EXT2_FEATURE_RO_COMPAT_BTREE_DIR): Comment out unused | |
47 | feature flag | |
48 | ||
91835c15 TT |
49 | 2003-03-30 Theodore Ts'o <tytso@mit.edu> |
50 | ||
51 | * Makefile.in: Use the compile_et --build-tree option. | |
52 | ||
220c0040 TT |
53 | 2003-03-14 Theodore Ts'o <tytso@mit.edu> |
54 | ||
e71d8731 TT |
55 | * getsize.c: Add support for Apple Darwin's ioctl to get the hard |
56 | disk size. | |
57 | ||
220c0040 TT |
58 | * badblocks.c (ext2fs_u32_list_count), ext2fs.h: Add new function |
59 | which returns the number of entries in the list. | |
60 | ||
20754488 TT |
61 | 2003-03-10 Theodore Ts'o <tytso@mit.edu> |
62 | ||
63 | * fileio.c (ext2fs_file_lseek): Fix bug added when adding 64-bit | |
64 | support; avoid null dereference when ret_pos is NULL. | |
65 | ||
ed78c021 TT |
66 | 2003-03-06 Theodore Tso <tytso@mit.edu> |
67 | ||
68 | * ext2_types.h.in: Don't redefine types if other e2fsprogs | |
69 | *_types.h files have been included already. | |
70 | ||
71 | * kernel-jbd.h: Use C99 variadic cpp macros if not using GCC. | |
72 | (Older GCC's don't support the C99 variadic macros.) | |
73 | ||
74 | * flushb.c (ext2fs_sync_device), | |
75 | ismounted.c (ext2fs_check_mount_point): Avoid GCC extension: | |
76 | #warning not supported by Solaris suncc | |
77 | ||
78 | * ext2_ext_attr.h: Avoid GCC extension: 0 length arrays in | |
79 | structure definition. Not needed for now in | |
80 | ext2_ext_attr_entry. | |
81 | ||
d3f91798 TT |
82 | 2003-01-25 Theodore Ts'o <tytso@mit.edu> |
83 | ||
84 | * dirhash.c: Fix gcc -Wall nits. | |
85 | ||
23b7c8b8 TT |
86 | 2003-01-22 Theodore Ts'o <tytso@mit.edu> |
87 | ||
88 | * unix_io.c (unix_write_blk): Fix up GCC -Wall nits. | |
89 | ||
819157db TT |
90 | 2003-01-21 Theodore Ts'o <tytso@mit.edu> |
91 | ||
92 | * fileio.c (ext2fs_file_read, ext2_file_lseek, | |
93 | ext2_file_get_size): Add 64-bit support. | |
94 | ||
95 | * ext2fs.h (EXT2_I_SIZE): Add macro which caluates a 64bit size | |
96 | from i_size and i_size_high. | |
97 | ||
4564c727 TT |
98 | 2003-01-19 Theodore Ts'o <tytso@mit.edu> |
99 | ||
100 | * initialize.c (ext2fs_initialize): If the user specifies a really | |
101 | large number of inodes, then reduce the number of blocks | |
102 | per group until we find a workable set of filesystem | |
103 | parameters. | |
104 | ||
105 | * ext2_err.et.in (EXT2_ET_TOO_MANY_INODES): Add new error code. | |
106 | ||
38513011 TT |
107 | 2002-11-09 Theodore Ts'o <tytso@mit.edu> |
108 | ||
109 | * Release of E2fsprogs 1.32 | |
110 | ||
82c4660c TT |
111 | 2002-11-09 Theodore Ts'o <tytso@mit.edu> |
112 | ||
113 | * unix_io.c (find_cached_block, reuse_cache, unix_read_blk, | |
114 | unix_write_blk): Optimize routines so that we don't end up | |
115 | searching the cache twice when a block isn't in the | |
116 | cache. If reads are larger than READ_DIRECT_SIZE, don't | |
117 | let them go through the cache. | |
1d47dfb9 TT |
118 | |
119 | * unix_io.c (find_cached_block): Fixed bug which caused some clean | |
120 | blocks to be erroneously marked as dirty, so they would | |
121 | get written back to the disk before they are evicted from | |
122 | the cache. Harmless, but it slows down e2fsck | |
123 | significantly. | |
124 | ||
ae65b29f TT |
125 | 2002-11-08 Theodore Ts'o <tytso@mit.edu> |
126 | ||
127 | * Release of E2fsprogs 1.31 | |
128 | ||
feb44c69 TT |
129 | 2002-11-08 <tytso@snap.thunk.org> |
130 | ||
131 | * Makefile.in (check): Skip trying to compile test_byteswap | |
132 | if --disable-byteswaap had been given to configure. | |
133 | ||
bfd41883 TT |
134 | 2002-11-07 <tytso@snap.thunk.org> |
135 | ||
136 | * closefs.c (write_bgdesc, ext2fs_flush): Fix bug in meta_bg | |
137 | support when the MASTER_SB_ONLY flag is set. Some of | |
138 | the descriptor blocks that should have been written out | |
139 | were getting skipped. | |
140 | ||
5d823a47 TT |
141 | 2002-10-31 Theodore Ts'o <tytso@mit.edu> |
142 | ||
143 | * Release of E2fsprogs 1.30 | |
144 | ||
9ed06a1e TT |
145 | 2002-10-31 Theodore Ts'o <tytso@mit.edu> |
146 | ||
a2c8bf94 TT |
147 | * ext2_fs.h: Add support for a new inode flag, which is to be used |
148 | for indicating the top of directory hierarchies for the | |
149 | Orlov block allocator. | |
150 | ||
3a42fe22 TT |
151 | * ismounted.c (check_mntent, check_mntent_file): Add better |
152 | support for loopback-mounted filesystems. Check /etc/mtab | |
153 | if /proc/mounts doesn't turn up any mount flags, since | |
154 | /etc/mtab has the loopback image filename, instead of | |
155 | /dev/loop0. Also, check based on st_dev and st_ino, so | |
156 | that if a relative pathname or a pathnames using symbolic | |
157 | links are used, we can detect the the filesystem correctly | |
158 | in those cases. (Addresses Sourceforge bug #619119) | |
159 | ||
55ca9ae5 TT |
160 | * flushb.c (ext2fs_sync_device): If the BLKFLSBUF ioctl succeeds, |
161 | don't try the FDFLUSH ioctl that was required for floppies | |
162 | with older kernels. This avoids needless whining from the | |
163 | MD device driver. (Addresses Sourceforge bug #545832). | |
164 | ||
9ed06a1e TT |
165 | * openfs.c (ext2fs_open): Fix bug which caused us to pass the |
166 | wrong group_block to ext2fs_descriptor_block_loc if we're | |
167 | using the backup superblock/block group descriptors. | |
168 | (ext2fs_descriptor_block_loc): If we're using the backup | |
169 | superblock descriptors, use the backup descriptor block in | |
170 | the next block group. | |
171 | ||
76dd5e5c TT |
172 | 2002-10-30 Theodore Ts'o <tytso@mit.edu> |
173 | ||
174 | * alloc_tables.c (ext2fs_allocate_group_table): Allocate the inode | |
175 | table so that it buts up against the bitmap blocks, to | |
176 | avoid block fragmentation. | |
177 | ||
178 | * closefs.c (write_bgdesc), initalize.c (ext2fs_initialize): Fix | |
179 | bug; only allocate group descriptor blocks up to | |
180 | s_first_meta_bg. | |
181 | ||
9d2aefb3 TT |
182 | 2002-10-25 Theodore Ts'o <tytso@mit.edu> |
183 | ||
184 | * ext2_fs.h: Add a new superblock field, s_mkfs_time, so that we | |
185 | know when a filesystem was created. (Sometimes this can | |
186 | be useful...) | |
187 | ||
188 | * initialize.c (ext2fs_initialize): Set the s_mkfs_time field. | |
189 | ||
c046ac7f TT |
190 | 2002-10-20 Theodore Ts'o <tytso@valinux.com> |
191 | ||
4a959fe6 TT |
192 | * ext2_fs.h (EXT3_DEFM_JMODE): Add new default mount options for |
193 | the journal data mode. | |
194 | ||
c046ac7f TT |
195 | * closefs.c (ext2fs_flush, write_bgdesc), ext2_fs.h, ext2fs.h, |
196 | openfs.c (ext2fs_descriptor_block_loc, ext2fs_open), initialize.c | |
197 | (ext2fs_initialize), swapfs.c (ext2fs_swap_super): Add support for | |
198 | the meta_blockgroup filesystem format. | |
199 | ||
a0c3fd5e TT |
200 | 2002-10-15 <tytso@snap.thunk.org> |
201 | ||
202 | * ext2_fs.h: Add new field in superblock for default mount options. | |
203 | ||
3e699064 TT |
204 | 2002-10-13 Theodore Ts'o <tytso@mit.edu> |
205 | ||
206 | * ext2fs.h: Add #include of header files necessary for ext2fs.h to | |
207 | compile cleanly. | |
208 | ||
8132d840 TT |
209 | 2002-10-02 Theodore Y. Ts'o <tytso@mit.edu> |
210 | ||
211 | * rw_bitmaps.c (ext2fs_write_block_bitmap, | |
212 | ext2fs_read_block_bitmap): Don't set the CHANGED bit just | |
213 | because the bitmap is getting written to disk. Make | |
214 | ext2fs_swap_bitmap be a static function, since it's not | |
215 | intended to be exported. | |
216 | ||
217 | * swapfs.c (ext2fs_swap_super): Byte-swap the hash seed | |
218 | ||
c6633059 TT |
219 | 2001-09-24 Theodore Tso <tytso@mit.edu> |
220 | ||
221 | * Release of E2fsprogs 1.29 | |
222 | ||
87ee8dca TT |
223 | 2001-08-31 Theodore Tso <tytso@thunk.org> |
224 | ||
225 | * Release of E2fsprogs 1.28 | |
226 | ||
ea1959f0 TT |
227 | 2002-08-31 Theodore Ts'o <tytso@valinux.com> |
228 | ||
229 | * dblist.c (ext2fs_dblist_sort): New function which allows the | |
230 | caller to pass in a special sort comparison function. | |
231 | ||
ee504128 TT |
232 | 2002-08-20 Theodore Ts'o <tytso@mit.edu> |
233 | ||
234 | * valid_blk.c (ext2fs_inode_has_valid_blocks): Fix bug which | |
235 | failed to accurately characterize non-standard slow | |
236 | symlinks. (Which don't appear in practice on real-life | |
237 | systems, fortunately.) | |
238 | ||
b33278c4 TT |
239 | 2002-08-17 Theodore Ts'o <tytso@mit.edu> |
240 | ||
e5b16437 TT |
241 | * Makefile.in: Remove inode_io.o from the standard object files, |
242 | and only build it if debugfs is enabled (it requires | |
243 | fileio.o, which is only built if --disable-debugfs isn't | |
244 | specified to configure). | |
245 | ||
b33278c4 TT |
246 | * dirhash.c (ext2fs_dirhash): Change the MD4 hash in a backwards |
247 | incompatible way so that it is no longer | |
248 | endian-dependent. Add the TEA hash. Allow the seed | |
249 | parameter to be optional. | |
250 | ||
251 | * ext2_fs.h: Remove the HALF_MD4_SEED and HALF_MD4_64 hashes. | |
252 | These features are all now in the HALF_MD4 hash. Add | |
253 | definition for EXT2_HASH_TEA. | |
254 | ||
255 | * ext2fs.h (ext2fs_dirhash): Change function prototype so it takes | |
256 | a pointer instead of an array. | |
257 | ||
0684a4f3 TT |
258 | 2002-08-16 Theodore Ts'o <tytso@mit.edu> |
259 | ||
260 | * ext2_err.et.in (EXT2_ET_BAD_EA_BLOCK_NUM): New error code | |
261 | ||
262 | * ext2fs.h (ext2fs_inode_data_blocks): New function which returns | |
263 | the number of data blocks used by an inode exclusive of | |
264 | the EA block. | |
265 | ||
266 | * ext_attr.c (ext2fs_adjust_ea_refcount): New function which | |
267 | adjusts the reference count in an extended attribute block. | |
268 | ||
269 | * valid_blk.c (ext2fs_inode_has_valid_blocks): Add code to | |
270 | correctly deal with extended attribute blocks in symbolic | |
271 | links. | |
272 | ||
917e8750 TT |
273 | 2002-08-13 <tytso@snap.thunk.org> |
274 | ||
275 | * Makefile.in: Move dupfs.o and test_io.o from the | |
276 | needed-by-debugfs object list to the needed-by-resizer | |
277 | object list. Fixes compile problem if the system is built | |
278 | with only --disable-debugfs. | |
279 | ||
fe4dd429 TT |
280 | 2002-07-29 Theodore Ts'o <tytso@mit.edu> |
281 | ||
282 | * link.c (ext2fs_link): When adding a new link to a directory, | |
283 | clear the HTREE bit. | |
284 | ||
cc90bdfd TT |
285 | 2002-07-23 Theodore Ts'o <tytso@mit.edu> |
286 | ||
287 | * dirhash.c (ext2fs_dirhash): Fix bug which caused MD4 | |
288 | calculations for names > 32 characters to be completely | |
289 | bogus. Changed MD4 calculation to match what is currently | |
290 | being used in the CVS gkernel tree. | |
291 | ||
3ea1f0fb TT |
292 | 2002-07-19 Theodore Ts'o <tytso@mit.edu> |
293 | ||
b7a00563 TT |
294 | * ext2_fs.h: Add s_hash_seed and s_def_hash_version to the |
295 | superblock definition. | |
296 | ||
297 | * badblocks.c, freefs.c, ext2fs.h: Use the badblocks functions to | |
298 | create a set of u32_list functions. | |
299 | ||
3ea1f0fb TT |
300 | * dirhash.c (halfMD4Transform): Shift the hash by one bit, |
301 | since that's required by the directory indexing code. | |
302 | ||
f154d2f6 TT |
303 | 2002-07-14 Theodore Ts'o <tytso@mit.edu> |
304 | ||
50cd7e06 TT |
305 | * ext2fs.h, read_bb_file.c: Change private to priv_data, to avoid |
306 | using a C++ reserved word. | |
307 | ||
f154d2f6 TT |
308 | * unix_io.c (unix_open): Only attempt the setrlimit workaround if |
309 | the kernel version is 2.4.10 -- 2.4.17, since otherwise an | |
310 | old version of glibc (built against 2.2 headers) will | |
311 | interact badly with the workaround to actually cause more | |
312 | problems. I hate it when the glibc folks think they're | |
313 | being smarter than the kernel.... | |
314 | ||
9e6c5dd7 TT |
315 | 2002-06-28 Andreas Dilger <adilger@clusterfs.com> |
316 | ||
317 | * ext2_fs.h: Add superblock field for reserved group descriptors. | |
318 | ||
2cb403b2 TT |
319 | 2002-06-28 Theodore Ts'o <tytso@mit.edu> |
320 | ||
321 | * bitops.h: Add #define's for ext2fs_{l,b}e{32,16}_to_cpu and | |
322 | ext2fs_cpu_to_{l,b}e{32,16} | |
323 | ||
5818d678 TT |
324 | 2002-06-27 Theodore Ts'o <tytso@mit.edu> |
325 | ||
326 | * ismounted.c (check_mntent): In AIX 4.3, MOUNTED isn't defined. | |
327 | Add appropriate fallbacks in this case. | |
328 | ||
503f9e7f TT |
329 | 2002-06-26 Theodore Ts'o <tytso@mit.edu> |
330 | ||
331 | * dirhash.c (ext2fs_dirhash): Change function signature to support | |
332 | a hash seed, and to return the minor hash (for 64-bit hash | |
333 | support). Add support for the half MD4, half MD4 with | |
334 | seed, and half MD4 with seed and 64 bits. | |
335 | ||
88372d5c TT |
336 | 2002-06-15 Theodore Ts'o <tytso@mit.edu> |
337 | ||
338 | * ext2_fs.h (EXT2_DIRSYNC_FL): Add new file. | |
339 | ||
b21bf267 AD |
340 | 2002-06-09 Andreas Dilger <adilger@clusterfs.com> |
341 | ||
342 | * ext2_fs.h: Add macros for maximum block/inode counts: | |
343 | EXT2_INODES_PER_BLOCK, EXT2_MAX_BLOCKS_PER_GROUP, | |
344 | and EXT2_MAX_INODES_PER_GROUP. | |
345 | ||
346 | * openfs.c (ext2fs_open): Check that the number of blocks in a group | |
347 | is less than 2^16, otherwise we need an INCOMPAT flag (not | |
348 | in existence yet, if ever) to open such a filesystem. | |
349 | ||
350 | * initialize.c (ext2fs_initialize): Limit the number of blocks and | |
351 | inodes in a group to less than 2^16. | |
352 | ||
7da78ff1 AD |
353 | 2002-06-09 Andreas Dilger <adilger@clusterfs.com> |
354 | ||
355 | * ext2_fs.h: Further minor cleanups of the header. Consolidate | |
356 | some checks for __KERNEL__ into one place. | |
357 | ||
0fbd1a8a AD |
358 | 2002-05-22 Andreas Dilger <adilger@clusterfs.com> |
359 | ||
360 | * ext2_fs.h: Remove macros accessing u.ext2_sb field and use | |
361 | the EXT2_SB() macro instead. Remove kernel function | |
362 | prototypes also. This matches the 2.5 kernel, and | |
363 | is also cleaner for other reasons. Whitespace cleanup. | |
364 | ||
0d63467d TT |
365 | 2002-05-21 Theodore Ts'o <tytso@mit.edu> |
366 | ||
367 | * ext2_ext_attr.h: Update to V2 version of the Bestbits format. | |
368 | ||
31e29a12 TT |
369 | 2002-05-16 Andreas Dilger <adilger@clusterfs.com> |
370 | ||
371 | * ext2_fs.h: Change limits to support filesystems with 8k blocks. | |
372 | ||
373 | * initialize.c (ext2fs_initialize): Remove assumption that | |
374 | blocksizes are always <= 4k. | |
375 | ||
376 | 2002-05-11 Theodore Ts'o <tytso@mit.edu> | |
b38cd283 TT |
377 | |
378 | * bmap.c (ext2fs_bmap): Fix bug which caused ext2fs_bmap to fail | |
379 | silently if inode pointer is NULL (and ext2fs_bmap is | |
380 | expected to read the inode itself). | |
381 | ||
31e29a12 | 382 | 2002-04-27 Theodore Ts'o <tytso@mit.edu> |
f0efd297 TT |
383 | |
384 | * ismounted.c (check_mntent_file, is_swap_device): Verify that the | |
385 | file we are checking is a block device file before looking | |
386 | at st_rdev, since it's not valid for normal files. | |
387 | (is_swap_device): Move so that it is outside the | |
388 | HAVE_MNTENT_H, so that it is always built. | |
389 | ||
52783e0c TT |
390 | 2002-03-11 Theodore Tso <tytso@mit.edu> |
391 | ||
f9190c8a TT |
392 | * dirblock.c (ext2fs_read_dir_block2, ext2fs_write_dir_block): New |
393 | functions which take an extra flags argument. The flag | |
394 | EXT2_DIRBLOCK_V2_STRUCT will reverse when the name_len | |
395 | field is byte swampped on big-endian machines, since in | |
396 | the V2 structure, name_len is a char field which is | |
397 | doesn't need to be byte swapped --- except if an | |
398 | old-style kernel had byte-swapped the name_len field | |
399 | as part of the V1 structure. | |
400 | ||
52783e0c TT |
401 | * ext2_err.et.in (EXT2_ET_DIRHASH_UNSUPP): New error code |
402 | ||
403 | * dirhash.c (ext2fs_dirhash): New function which calculates the | |
404 | hash for a filename in an indexed directory. | |
405 | ||
a8e77249 TT |
406 | 2002-03-08 Theodore Tso <tytso@mit.edu> |
407 | ||
408 | * Release of E2fsprogs 1.27 | |
409 | ||
304905df TT |
410 | 2002-03-07 Theodore Tso <tytso@mit.edu> |
411 | ||
546a1ff1 TT |
412 | * ext2fs.h (ext2fs_inode_io_intern): Add missing function prototype. |
413 | ||
414 | * bmap.c, fileio.c, inode_io.c, tst_badblocks.c, | |
415 | tst_byteswap.c: Fix gcc -Wall complaints | |
416 | ||
304905df TT |
417 | * Makefile.in (check): Use LD_LIBRARY_PATH to run test programs. |
418 | (From Philipp Thomas <pthomas@suse.de>) | |
419 | ||
57173d0f | 420 | 2002-02-25 Theodore Tso <tytso@mit.edu> |
df614db6 TT |
421 | |
422 | * ext2_fs.h: Add structure definitions for the directory indexing | |
423 | extension. | |
424 | ||
57173d0f | 425 | 2002-02-23 Theodore Tso <tytso@mit.edu> |
64e1b274 TT |
426 | |
427 | * unix_io.c (unix_open): Fix 2.4 resource limit workaround so that | |
428 | it doesn't break things on mis32, sparc32, and alpha | |
429 | platforms. | |
430 | ||
57173d0f | 431 | 2002-02-21 Theodore Tso <tytso@mit.edu> |
f3e3d315 TT |
432 | |
433 | * ismounted.c (is_swap_device): Fix file descriptor/memory leak; | |
434 | we were missing an fclose(). | |
435 | ||
57173d0f | 436 | 2002-02-20 Theodore Tso <tytso@mit.edu> |
f12e285f TT |
437 | |
438 | * Makefile.in, inode_io.c, ext2fs.h, ext2_err.et.in: Add new io | |
439 | abstraction interface which exports an ext2 inode. | |
440 | ||
f3e3d315 TT |
441 | * ext2fs.h, fileio.c (ext2fs_file_flush): Export ext2fs_file_flush |
442 | as a public interface. Change void * to const void * in | |
443 | ext2fs_file_write's interface. | |
f12e285f TT |
444 | |
445 | * test_io.c (test_close), unix_io.c (unix_close): Remove unneeded | |
446 | conditional; save a few bytes. | |
447 | ||
57173d0f | 448 | 2002-02-12 Theodore Tso <tytso@mit.edu> |
7d4343d0 TT |
449 | |
450 | * Makefile.in (tst_badblocks): Add some extra .o files when | |
451 | linking the debugging program tst_badblocks which are | |
452 | needed if we aren't compiling with inline functions enable. | |
453 | ||
454 | * kernel-list.h (__inline__): On non-gcc and non-Watcom compilers, | |
455 | define away __inline__ since it may not be supported. | |
456 | ||
457 | * kernel-jbd.h (jbd_debug): For systems that don't do STDC, use a | |
458 | stripped down jbd_debug that doesn't use variadic | |
459 | arguments. This will cause warnings under AIX, but things | |
460 | should still build. | |
461 | ||
a5f3f5c1 TT |
462 | 2002-02-03 Theodore Tso <tytso@thunk.org> |
463 | ||
464 | * Release of E2fsprogs 1.26 | |
465 | ||
57173d0f | 466 | 2002-02-03 Theodore Tso <tytso@mit.edu> |
7f961d42 TT |
467 | |
468 | * mkdir.c (ext2fs_mkdir): Change to use ext2fs_inode_alloc_stats2 | |
469 | so that the number of directories in use is adjusted | |
470 | appropriately. | |
471 | ||
472 | * alloc_stats.c (ext2fs_inode_alloc_stats2): Add new function | |
473 | which optionally will modify the number of directories | |
474 | count. | |
475 | ||
a5f3f5c1 | 476 | 2002-01-03 Theodore Tso <tytso@mit.edu> |
8bd0c959 TT |
477 | |
478 | * dir_iterate.c (ext2fs_dir_iterate2, ext2fs_process_dir_block): | |
479 | Add support for a new flag, DIRENT_FLAG_INCLUDE_REMOVED, | |
480 | which will return deleted directory entries. | |
481 | ext2fs_dir_iterate2 takes a new callback function which | |
482 | is identical with the one used by | |
483 | ext2fs_dblist_dir_iterate(). If the directory entry is | |
484 | deleted, the callback function will be called with the | |
485 | entry paraemter set to DIRENT_DELETED_FILE. | |
486 | ||
487 | * Makefile.in, alloc_stats.c (ext2fs_inode_alloc_stats, | |
488 | ext2fs_block_alloc_stats): New functions which update | |
489 | block/inode allocation statistics in the bitmaps, block | |
490 | group descriptors, and superblock. | |
491 | ||
492 | * mkjournal.c (mkjournal_proc), mkdir.c (ext2fs_mkdir), | |
493 | expanddir.c (expand_dir_proc), bb_inode.c | |
494 | (clear_bad_block_proc, set_bad_block_proc, | |
495 | ext2fs_update_bb_inode), alloc.c (ext2fs_alloc_block): | |
496 | Update to use new block/inode allocation statistics. | |
497 | ||
a5f3f5c1 | 498 | 2001-12-24 Theodore Tso <tytso@mit.edu> |
a8fd6e36 | 499 | |
07cefe7a TT |
500 | * ismounted.c (is_swap_device): New function used by |
501 | ext2fs_check_if_mounted and ext2fs_check_mount_point which | |
502 | determines whether or not the specified device is a swap | |
503 | device by using /proc/swaps. More bulletproofing for | |
504 | idiotic/careless system administrators! | |
505 | ||
6a525069 TT |
506 | * ext2fs.h, openfs.c (ext2fs_open), initialize.c |
507 | (ext2fs_initialize), mkdir.c (ext2fs_mkdir): Add a new | |
508 | field to struct_ext2_filsys, umask. This field is | |
509 | initialize to 022, and affects ext2fs_mkdir in the obvious | |
510 | way. (In the future umask should also affect new file | |
511 | creation routines, but the fileio functions don't | |
512 | currently support this yes.) | |
513 | ||
a8fd6e36 TT |
514 | * ismounted.c (check_mntent_file): Stat all of the entries in |
515 | /etc/mtab and/or /proc/mounts in order to catch dim-witted | |
516 | system administrators who might have created alias | |
517 | devices. | |
518 | ||
a5f3f5c1 | 519 | 2001-12-23 Theodore Tso <tytso@mit.edu> |
19007e51 TT |
520 | |
521 | * Makefile.in, jfs_user.h: Move linux/jbd.h to | |
522 | ext2fs/kernel-jbd.h, to avoid using the system header | |
523 | file version of hbd.h when using diet glibc (since it | |
524 | forcibly adds /usr/include to the beginning of the | |
525 | include search path.) | |
526 | ||
527 | * kernel-jbd.h, kernel-list.h, jfs_compat.h: Move files from | |
528 | include/linux directory. | |
529 | ||
a5f3f5c1 | 530 | 2001-12-16 Theodore Tso <tytso@mit.edu> |
8cf93332 | 531 | |
4ea7bd04 TT |
532 | * bitops.h (ext2fs_mark_generic_bitmap, ext2fs_unmark_generic_bitmap), |
533 | ext_attr.c (ext2fs_read_ext_attr, ext2fs_write_ext_attr), | |
534 | fileio.c (ext2fs_file_write): Fix gcc -Wall nits | |
535 | ||
8cf93332 TT |
536 | * Makefile.in, jfs_user.h: linux/jfs.h has been renamed to |
537 | linux/jbd.h | |
538 | ||
a5f3f5c1 | 539 | 2001-12-03 Theodore Tso <tytso@mit.edu> |
bd27880b TT |
540 | |
541 | * unix_io.c (unix_open): Make sure the ulimit workaround works | |
542 | regardless of the version of glibc which is used to | |
543 | compild e2fsprogs. | |
544 | ||
a5f3f5c1 | 545 | 2001-11-26 Theodore Tso <tytso@mit.edu> |
8880e759 TT |
546 | |
547 | * unix_io.c (unix_open): Work around a bug in 2.4.10+ kernels by | |
548 | trying to unset the filesize limit if at all possible, | |
549 | if a block device is getting opened. (The filesize limit | |
550 | shouldn't be applied against writes to a block device, but | |
551 | starting in 2.4.10, the kernel is doing this.) | |
552 | ||
a5f3f5c1 | 553 | 2001-11-05 Theodore Tso <tytso@mit.edu> |
b3f5b4c2 | 554 | |
5bc28df0 TT |
555 | * mkjournal.c (ext2fs_add_journal_inode): When creating a .journal |
556 | file on adding a journal to an already-mounted filesystem, | |
557 | try to clear the ext2 file attributes on an already | |
558 | existing .journal file so that we don't fail if on a | |
559 | partially added journal to the filesystem. | |
560 | ||
b3f5b4c2 TT |
561 | * ext2_fs.h: Define a new ext2 file attribute, EXT2_NOTAIL_FL, |
562 | which signals that a particular inode should not have the | |
563 | last bits of data (the "tail") be merged with another | |
564 | file. This is necessary to keep LILO happy. | |
565 | ||
fbf91112 TT |
566 | 2001-09-20 Theodore Tso <tytso@thunk.org> |
567 | ||
568 | * Release of E2fsprogs 1.25 | |
569 | ||
a5f3f5c1 | 570 | 2001-09-16 Theodore Tso <tytso@mit.edu> |
7746cad6 TT |
571 | |
572 | * ext2_ext_attr.h: Remove unneeded #include of <linux/config.h> | |
573 | which was breaking the build on the Hurd. (Addresses | |
574 | Debian bug #112414). | |
575 | ||
a5f3f5c1 | 576 | 2001-09-13 Theodore Ts'o <tytso@mit.edu> |
2038b636 TT |
577 | |
578 | * ismounted.c (check_mntent_file): We now validate the entry in | |
579 | /etc/mtab to make sure the filesystem is really mounted, | |
580 | since some broken distributions (read: Slackware) have | |
581 | buggy boot scripts that don't initialize /etc/mtab before | |
582 | checking non-root filesystems. (Slackware also doesn't | |
583 | check the root filesystem separately, and reboot if the | |
584 | root filesystem had changes applied to it, which is | |
585 | dangerous and broken.) | |
586 | ||
fb70775b TT |
587 | 2001-09-02 Theodore Tso <tytso@thunk.org> |
588 | ||
589 | * Release of E2fsprogs 1.24a | |
590 | ||
109624a1 TT |
591 | 2001-08-30 Theodore Tso <tytso@thunk.org> |
592 | ||
593 | * Release of E2fsprogs 1.24 | |
594 | ||
eddeb56f TT |
595 | 2001-08-30 Theodore Tso <tytso@valinux.com> |
596 | ||
597 | * getsize.c (ext2fs_get_device_size): Back out BLKGETSIZE64 | |
598 | changes, since the ioctl number has been reused by another | |
599 | unofficial patch. | |
600 | ||
943ed874 TT |
601 | 2001-08-15 Theodore Tso <tytso@valinux.com> |
602 | ||
603 | * Release of E2fsprogs 1.23 | |
604 | ||
89a6ebd5 TT |
605 | 2001-08-05 Theodore Tso <tytso@valinux.com> |
606 | ||
607 | * alloc.c (ext2fs_new_inode, ext2fs_new_block): Use the fast | |
608 | version of the bitmap test routines to speed up these | |
609 | routines. (At some point I may want to make these | |
610 | routines use the find_first_bit functions, but that will | |
611 | add a lot of complexity since it means that these | |
612 | functions will have to break the bitmap abstraction | |
613 | boundary. It's not clear it's worth it.) | |
614 | ||
615 | * mkjournal.c (mkjournal_proc): Remember the last block allocated | |
616 | to speed up ext2fs_new_block(). | |
617 | ||
3751721f TT |
618 | 2001-07-29 Theodore Tso <tytso@valinux.com> |
619 | ||
620 | * finddev.c (scan_dir): Fix memory leak; we weren't calling | |
621 | closedir() when exiting the function in all cases. | |
622 | ||
f35e6440 TT |
623 | 2001-07-27 Theodore Tso <tytso@valinux.com> |
624 | ||
4e40f6c3 TT |
625 | * mkjournal.c (ext2fs_create_journal_superblock): Set the first |
626 | block usable in the journal for external journals to be 2 | |
627 | or 3, depending on the blocksize, so that the existing | |
628 | kernel code does the right thing. | |
629 | ||
343fa65e TT |
630 | * getsize.c (ext2fs_get_device_size): Add support for the |
631 | BLKGETSIZE64 ioctl. (Ioctl defined by unofficial patches | |
632 | from Ben LaHaise, but it's likely this interface won't | |
633 | change.) | |
634 | ||
f35e6440 TT |
635 | * mkjournal.c (ext2fs_add_journal_device): Use the correct block |
636 | when writing the journal superblock, too. (Oops! Needed | |
637 | to make 1k filesystems with external journal to work.) | |
638 | ||
36131b37 TT |
639 | 2001-07-26 Theodore Tso <tytso@valinux.com> |
640 | ||
641 | * mkjournal.c (ext2fs_add_journal_device): Use the correct block | |
642 | to find the journal superblock if the blocksize is 1024. | |
643 | ||
adee8d75 TT |
644 | 2001-07-21 Theodore Tso <tytso@valinux.com> |
645 | ||
646 | * ext2_err.et.in (EXT2_ET_LOAD_EXT_JOURNAL): Add new error code | |
647 | ||
6ae296e7 TT |
648 | 2001-07-20 Theodore Tso <tytso@valinux.com> |
649 | ||
241f7d20 TT |
650 | * ext_attr.c (ext2fs_write_ext_attr): When writing the extended |
651 | attribute block, set the filesystem changed bit. | |
652 | ||
6ae296e7 TT |
653 | * bitops.h (ext2fs_find_first_bit_set, ext2fs_find_next_bit_set): |
654 | Comment out these functions since we're not using them. | |
655 | ||
3c6b8977 TT |
656 | 2001-07-10 Theodore Tso <tytso@valinux.com> |
657 | ||
658 | * closefs.c (write_primary_superblock): After writing changes to | |
659 | the primary superblock, update the original superblock | |
660 | copy so we don't have to re-write those changes in the | |
661 | future. | |
662 | (ext2fs_flush): Clear the superblock dirty flag after | |
663 | we've flushed out changes to disk. | |
664 | ||
f41e7e69 TT |
665 | 2001-07-07 Theodore Tso <tytso@valinux.com> |
666 | ||
667 | * bitops.h (ext2fs_find_first_bit_set): Use %esi instead of %ebx | |
668 | to avoid register conflicts when compiling in PIC mode. | |
669 | ||
ac493821 TT |
670 | 2001-07-04 Theodore Tso <tytso@valinux.com> |
671 | ||
672 | * bitops.h (ext2fs_find_first_bit_set, ext2fs_find_next_bit_set): | |
673 | Add new functions (C and in i386 assembler) which quickly | |
674 | find bits set in a bitmask. | |
675 | ||
67960139 TT |
676 | 2001-06-23 Theodore Tso <tytso@valinux.com> |
677 | ||
342d847d TT |
678 | * Makefile.in, ext_attr.c, ext2_attr.c, ext2fs.h: Add new files |
679 | ext2_ext_attr.h and ext_attr.c for extended attributes | |
680 | support. | |
681 | ||
67960139 TT |
682 | * Release of E2fsprogs 1.22 |
683 | ||
89a1fa83 TT |
684 | 2001-06-22 Theodore Tso <tytso@valinux.com> |
685 | ||
b23520d0 TT |
686 | * mkjournal.c (ext2fs_add_journal_inode): Move close of file |
687 | descriptor so that adding a journal to a mounted | |
688 | filesystem doesn't die. (Fixes a bug accidentally | |
689 | introduced in e2fsprogs 1.21.) | |
690 | ||
78332625 TT |
691 | * mkjournal.c (ext2fs_add_journal_inode): Only use fchflags if |
692 | HAVE_CHFLAGS and UF_NODUMP are defined, since the Hurd has | |
693 | fchflags without defining UF_NODUMP. (Addresses Debian | |
694 | bug #101361) | |
695 | ||
d90f3494 TT |
696 | * flushb.c: Use platform independent method of defining the |
697 | BLKFLSBUF and FDFLUSH ioctl's. Also include sys/mount.h | |
698 | since on newer glibc's BLKFLSBUF is defined there. | |
699 | ||
16645f80 TT |
700 | * bitops.h: The C language versions of ext2fs_swab16/32 need to be |
701 | included if EXT2FS_ENABLE_SWAPFS is defined, since we need | |
702 | to support byte swapping even if we don't support the | |
703 | conversion functions. (Fixes Debian bug #101686). | |
704 | ||
89a1fa83 TT |
705 | * dirblock.c (ext2fs_read_dir_block): Remove use of dir_entry_2 |
706 | since the byte-swapping code all assumes the | |
707 | ext2_dir_entry structure. (It's a question of whether or | |
708 | not name_len should be byte-swapped or not, and whether | |
709 | it's a 16 bit or 8 bit field.) | |
710 | ||
f4f75bae TT |
711 | 2001-06-15 Theodore Tso <tytso@valinux.com> |
712 | ||
713 | * Release of E2fsprogs 1.21 | |
714 | ||
997b820e TT |
715 | 2001-06-15 Theodore Tso <tytso@valinux.com> |
716 | ||
d1e66b79 TT |
717 | * Makefile.in: Fix bug in installation of ext2_types.h. It is a |
718 | file which is generated and is therefore found in the | |
719 | build directory, not source directory. | |
720 | ||
997b820e TT |
721 | * ismounted.c (check_mntent_file): Use a test file in / to check |
722 | to see if the root filesystem is mounted read-only. This | |
723 | protects against the case where /etc might not be on /, as | |
724 | well as the case where /etc/mtab doesn't exist. (Both are | |
725 | should-never happen scenarios, but you never know...) | |
726 | ||
6bd13480 TT |
727 | 2001-06-14 Theodore Tso <tytso@valinux.com> |
728 | ||
729 | * ismounted.c (ext2fs_check_if_mounted): Fix grammer in comment. | |
730 | Remove unneeded #pragma argsused, since the arguments are | |
731 | always used. | |
732 | ||
30ae14c9 | 733 | 2001-06-13 Theodore Tso <tytso@valinux.com> |
364a373e | 734 | |
65794880 TT |
735 | * ext2_types.h.in: If linux/types.h has been defined, then don't |
736 | try to redefine the typedefs. | |
737 | ||
364a373e TT |
738 | * Makefile.in (HFILES): Add ext2_types.h to the list of files |
739 | which should be installed. | |
30ae14c9 | 740 | |
66a46146 | 741 | * ismounted.c (check_mntent_file): Work around GNU hurd brain |
83d5abf1 | 742 | damage. Addresses Debian bug #100304. |
66a46146 | 743 | |
30ae14c9 TT |
744 | * Makefile.in: Limit some .o files from being included into the |
745 | library if --disable-debugfs, --disable-swapfs, | |
746 | --disable-imager, or --disable-resizer are used. | |
747 | ||
cbbf031b TT |
748 | 2001-06-12 Theodore Tso <tytso@valinux.com> |
749 | ||
750 | * inode.c, tst_iscan.c: Stop using the compatibility badblocks | |
751 | function, and use the ext2fs_badblocks_* functions | |
752 | instead. | |
753 | ||
5df55d7f TT |
754 | 2001-06-11 Theodore Tso <tytso@valinux.com> |
755 | ||
3034f62a TT |
756 | * Makefile.in, gen_bitmap.c, bitops.h: Move inline functions |
757 | ext2fs_mark_generic_bitmap and | |
758 | ext2fs_unmark_generic_bitmap to gen_bitmap.c as normal | |
759 | functions. (This saves space and doesn't significantly | |
760 | change the speed of e2fsck on a P-III.) | |
761 | ||
5df55d7f TT |
762 | * ext2fs.h, bitops.h, block.c, bmap.c, closefs.c, dirblock.c, |
763 | inode.c, native.c, openfs.c, rw_bitmaps.c, swapfs.c: Only | |
764 | include the byte-swapping logic if ENABLE_SWAPFS is turned | |
765 | on or if we're on a big-endian machine. | |
766 | ||
767 | * initialize.c (ext2fs_initialize):Use WORDS_BIGENDIAN directly to | |
768 | set EXT2_FLAG_SWAP_BYTES, instead of using | |
769 | ext2fs_native_flag. | |
770 | ||
771 | * native.c (ext2fs_native_flag): Use WORDS_BIGENDIAN provided by | |
772 | autoconf to determine whether or not return | |
773 | EXT2_FLAG_SWAP_BYTES. | |
774 | ||
349a484a TT |
775 | 2001-06-10 Theodore Tso <tytso@valinux.com> |
776 | ||
777 | * Makefile.in: Remove the dependence on the libe2p library. | |
778 | ||
779 | * mkjournal.c (ext2fs_add_journal_inode): Replace use of fsetflags | |
780 | with direct usage of the ioctl/fchflags so that we don't | |
781 | have to depend on the libe2p library. | |
782 | ||
30e50b7c TT |
783 | 2001-06-08 Theodore Tso <tytso@valinux.com> |
784 | ||
785 | * ext2_types.h.in: Use unsigned ints in favor of unsigned longs | |
786 | when trying to find a 32-bit wide type. | |
787 | ||
788 | * icount.c (insert_icount_el): Fix the code used to estimate the | |
789 | size of the new icount array to be more intelligent, to | |
790 | avoid reallocating the array too many times. Thanks to | |
791 | Enrique Perez-Terron for pointing this out. | |
792 | ||
f36d14f5 TT |
793 | 2001-06-02 Theodore Tso <tytso@valinux.com> |
794 | ||
795 | * valid_blk.c (ext2fs_inode_has_valid_blocks): Only check i_blocks | |
796 | for a symlink to determine whether it is a fast symlink. | |
797 | ||
797f5ef1 TT |
798 | 2001-06-01 Theodore Tso <tytso@valinux.com> |
799 | ||
800 | * Makefile.in, dosio.c, ext2_fs.h, ext2_types.h.in, ext2fs.h: | |
36a23e18 | 801 | Move include/asm/types.h.in to lib/ext2fs/ext2_types.h.in. |
797f5ef1 | 802 | |
bb185861 TT |
803 | 2001-05-25 Theodore Tso <tytso@valinux.com> |
804 | ||
805 | * Release of E2fsprogs 1.20 | |
806 | ||
d5f858dd TT |
807 | 2001-05-25 Theodore Tso <tytso@valinux.com> |
808 | ||
809 | * ismounted.c: More cleanups for ismounted.c, some from Andreas, | |
810 | some to clean up Andreas's patches. Use strncpy instead | |
811 | of strcpy to save the root's mountpoint. Clean up #ifdef | |
812 | structure. Remove uneeded variable in testing/debug driver. | |
813 | ||
cc86017b TT |
814 | 2001-05-24 Andreas Dilger <adilger@turbolinux.com> |
815 | ||
816 | * ismounted.c: Add check for root device which doesn't depend on | |
817 | /etc/fstab or /proc/mounts to be correct. Don't call | |
818 | endmntent() before we are done with mnt struct. | |
819 | ||
4ed8ebe2 TT |
820 | 2001-05-23 Theodore Tso <tytso@valinux.com> |
821 | ||
822 | * ext2_err.et.in (EXT2_ET_JOURNAL_UNSUPP_VERSION): Added new error | |
823 | code. | |
824 | ||
b10820cd TT |
825 | 2001-05-21 Theodore Tso <tytso@valinux.com> |
826 | ||
827 | * ext2_fs.h: Change assignment of EXT2_FEATURE_COMPAT_DIR_INDEX to | |
828 | make room for pre-existing usage of | |
829 | EXT2_FEATURE_COMPAT_EXT_ATTR. Add flag EXT2_INDEX_FL with | |
830 | the same codepoint as EXT2_BTREE_FL. | |
831 | ||
7c2d2569 TT |
832 | 2001-05-20 Theodore Tso <tytso@valinux.com> |
833 | ||
834 | * ext2fs.h: #include <> instead of "" for ext2fs and et header | |
835 | files, since they will be installed in /usr/include | |
836 | ||
7a34cb01 TT |
837 | 2001-05-14 Theodore Tso <tytso@valinux.com> |
838 | ||
9f8046fc TT |
839 | * alloc.c, alloc_tables.c, badblocks.c, bb_compat.c, bb_inode.c, |
840 | bitmaps.c, bitops.c, block.c, bmap.c, bmove.c, brel_ma.c, | |
841 | check_desc.c, closefs.c, cmp_bitmaps.c, dblist.c, | |
842 | dblist_dir.c, dir_iterate.c, dirblock.c, dupfs.c, | |
843 | expanddir.c, ext2_fs.h, fileio.c, finddev.c, flushb.c, | |
844 | freefs.c, get_pathname.c, getsize.c, icount.c, imager.c, | |
845 | initialize.c, inline.c, inode.c, irel_ma.c, ismounted.c, | |
846 | link.c, lookup.c, mkdir.c, mkjournal.c, namei.c, native.c, | |
847 | newdir.c, nt_io.c, openfs.c, read_bb.c, read_bb_file.c, | |
848 | rs_bitmap.c, rw_bitmaps.c, swapfs.c, test_io.c, | |
849 | tst_badblocks.c, tst_byteswap.c, tst_getsize.c, | |
850 | tst_iscan.c, unix_io.c, unlink.c, valid_blk.c, version.c, | |
851 | write_bb_file.c, ext2_fs.h: Moved file from include/linux. | |
852 | Adjust all files in this directroy to include this file. | |
853 | ||
7a34cb01 TT |
854 | * mkjournal.c (ext2fs_create_journal_superblock): Remove redundant |
855 | code. | |
856 | ||
0f679459 TT |
857 | 2001-05-05 Theodore Tso <tytso@valinux.com> |
858 | ||
859 | * fileio.c (ext2fs_file_read): Factored out common code and | |
860 | cleaned up function. Fixed a bug where if there was an | |
861 | error reading from the disk, the number of bytes read | |
862 | wasn't reliably set. (Fixes Debian bug #79163) | |
863 | (ext2fs_file_write): Factored out common code and made | |
864 | function more efficient; if writing a full block, don't | |
865 | bother to do a read-modify-write cycle. | |
866 | ||
1cca4d60 TT |
867 | 2001-05-04 Theodore Tso <tytso@valinux.com> |
868 | ||
869 | * dirblock.c (ext2fs_read_dir_block): Check for an directory | |
870 | record length which isn't a multiple four, and treat that | |
871 | as an invalid. Scan the directory and return an error | |
872 | (EXT2_ET_DIR_CORRUPTED) if the directory records are | |
873 | corrupted. | |
874 | (ext2fs_write_dir_block): If while byte-swapping the | |
875 | directory block, if there's an error, abort and return | |
876 | EXT2_ET_DIR_CORRUPTED. | |
877 | ||
a78926ef TT |
878 | 2001-05-02 Theodore Tso <tytso@valinux.com> |
879 | ||
880 | * ext2fs.h (EXT2_FLAG_IMAGE_FILE): Add new flag, and add | |
881 | image_header field in the ext2_filsys structure | |
882 | ||
883 | * block.c (block_iterate_ind, block_iterate_dind, block_iterate_tind): | |
884 | * inode.c (ext2fs_read_inode): | |
885 | * rw_bitmaps.c (read_bitmaps): | |
886 | * openfs.c (ext2fs_open): Add support for EXT2_FLAG_IMAGE_FILE | |
887 | ||
888 | * imager.c (ext2fs_image_bitmap_read): Fix bug in imager to make | |
889 | sure the full bitmap is saved. | |
890 | ||
f955cc14 TT |
891 | 2001-05-01 Theodore Tso <tytso@valinux.com> |
892 | ||
a78926ef TT |
893 | * e2image.h (struct ext2_image_hdr): Add space for the device name |
894 | in the image header. | |
895 | ||
f955cc14 TT |
896 | * dir_iterate.c (ext2fs_process_dir_block): Add a double-check to |
897 | make sure the rec_len is a multiple of 4, to prevent | |
898 | bus-errors on architectures which care about mis-aligned | |
899 | pointer references. | |
900 | ||
954a683d TT |
901 | 2001-04-25 Theodore Tso <tytso@valinux.com> |
902 | ||
903 | * getsize.c (ext2fs_get_device_size): Use an unsigned long to | |
904 | query the device sizes using the BLKGETSIZE ioctl. | |
905 | ||
03603946 TT |
906 | 2001-04-16 Theodore Tso <tytso@valinux.com> |
907 | ||
52db0b41 TT |
908 | * ismounted.c (check_mntent): Check /proc/mounts on Linux systems |
909 | before checking /etc/mtab. The EXT2_MF_READONLY flag is | |
910 | now set from the /etc/mtab options field for all | |
911 | filesystems, not just the root filesystem. Add debugging | |
912 | code to make it easier to test ext2fs_check_if_mounted(). | |
913 | ||
03603946 TT |
914 | * mkjournal.c (ext2fs_create_journal_superblock): Add safety |
915 | check; return an error if there's an attempt to create a | |
916 | journal less than 1024 filesystem blocks. | |
917 | ||
918 | * ext2_err.et.in, mkjournal.c: Change EXT2_JOURNAL_NOT_BLOCK and | |
919 | EXT2_NO_JOURNAL_SB to be EXT2_ET_*. | |
920 | ||
9ec53cf4 TT |
921 | 2001-02-20 Theodore Tso <tytso@valinux.com> |
922 | ||
923 | * bitops.h (ext2fs_swab16, ext2fs_swab32): Add i386 assembly | |
924 | inline functions. | |
925 | ||
926 | * tst_byteswap.c: New function to test the byteswap functions. | |
927 | Add to regression test suite. | |
928 | ||
c5423c5b TT |
929 | 2001-02-08 Theodore Tso <tytso@valinux.com> |
930 | ||
931 | * e2image.h (struct ext2_image_hdr): Fix type for fs_hostname | |
932 | ||
d23042af TT |
933 | 2001-02-07 Theodore Tso <tytso@valinux.com> |
934 | ||
935 | * mkjournal.c (ext2fs_create_journal_superblock): Fix the setting | |
936 | of s_first for external devices to always be 1, since | |
937 | jsb->s_first is always relative to the start of the | |
938 | journal superblock. Use htonl(1) when setting s_nr_users. | |
939 | ||
02088862 TT |
940 | 2001-01-17 Theodore Ts'o <tytso@valinux.com> |
941 | ||
942 | * mkjournal.c (ext2fs_add_journal_device): Fix bug where the | |
943 | device number of the filesystem (instead of the journal) | |
944 | was being dropped into s_journal_dev. | |
945 | ||
a112847b TT |
946 | 2001-01-15 Theodore Ts'o <tytso@valinux.com> |
947 | ||
948 | * initialize.c (ext2fs_initialize): Add support for initializing | |
949 | the ext2 superblock for external journal devices. This | |
950 | basically means we don't bother to allocate any block | |
951 | group descriptors. | |
952 | ||
953 | * openfs.c (ext2fs_open): Only open external journal devices if | |
954 | the new flag EXT2_FLAG_JOURNAL_DEV_OK is passed to | |
955 | ext2fs_open. When opening such devices, don't try to read | |
956 | the block group descriptors, since they're not there. | |
957 | ||
958 | * ext2_err.et.in (EXT2_NO_JOURNAL_SB): Add new error code | |
959 | ||
960 | * mkjournal.c: Export a new function, | |
961 | ext2fs_create_journal_superblock(), which allocates and | |
962 | returns a buffer containing a journal superblock. This is | |
963 | needed by mke2fs to create an external journal. Rewrote | |
964 | ext2fs_add_journal_device() so that it no longer creates | |
965 | the external journal, but rather adds a filesystem to an | |
966 | existing external journal. It handles all of the UUID | |
967 | manipulation. | |
968 | ||
969 | * ext2fs.h: List the EXT3_FEATURE_JOURNAL_DEV as a flag supported | |
970 | by the library. Define the EXT2_FLAG_JOURNAL_DEV_OK. | |
971 | Changed function prototype for ext2fs_add_journal_device(). | |
972 | ||
80779941 TT |
973 | 2001-01-14 Theodore Ts'o <tytso@valinux.com> |
974 | ||
975 | * closefs.c (ext2fs_flush): Don't write out anything beyond the | |
976 | primary superblock if EXT2_INCOMPAT_JOURNAL_DEV is | |
977 | listed. | |
978 | ||
b94bd81a TT |
979 | 2001-01-12 Theodore Ts'o <tytso@valinux.com> |
980 | ||
981 | * imager.c: Fix gcc -Wall complaints and a series of bugs where | |
982 | retval wasn't set correctly. (Thanks to Andreas Dilger | |
983 | for pointing this out.) | |
984 | ||
4d0f3e17 TT |
985 | 2001-01-11 <tytso@snap.thunk.org> |
986 | ||
987 | * flushb.c (ext2fs_sync_device): New function which centralizes | |
988 | all of the places which might try to use the BLKFLSBUF | |
989 | or FDFLUSH ioctls (and usually failing to define them | |
990 | since the system header files don't usually do this for | |
991 | us, and we're trying to avoid usage of kernel include | |
992 | files now). | |
993 | ||
31dbecd4 TT |
994 | 2001-01-10 <tytso@snap.thunk.org> |
995 | ||
996 | * alloc.c, bb_inode.c, bitmaps.c, bitops.h, block.c, bmap.c, | |
997 | bmove.c, brel.h, cmp_bitmaps.c, dblist.c, dblist_dir.c, | |
998 | dir_iterate.c, expanddir.c, ext2fs.h, ext2fsP.h, fileio.c, | |
999 | finddev.c, get_pathname.c, icount.c, inode.c, irel.h, | |
1000 | irel_ma.c, ismounted.c, link.c, lookup.c, mkdir.c, | |
1001 | mkjournal.c, namei.c, newdir.c, read_bb_file.c, test_io.c, | |
1002 | tst_iscan.c, unix_io.c, unlink.c: Change use of ino_t to | |
1003 | ext2_ino_t, to protect applications that attempt to | |
1004 | compile -D_FILE_OFFSET_BITS=64, since this inexplicably | |
1005 | changes ino_t(!?). So we use ext2_ino_t to avoid an | |
1006 | unexpected ABI change. | |
1007 | ||
cdaf1fa7 TT |
1008 | 2001-01-05 <tytso@snap.thunk.org> |
1009 | ||
e446d718 TT |
1010 | * dirblock.c (ext2fs_read_dir_block): Fix a potential case where |
1011 | we may overrun allocated memory in case of a corrupted | |
1012 | filesystem (or an e2fsck test case :-) when byte-swapping | |
1013 | the directory block. | |
1014 | ||
cdaf1fa7 TT |
1015 | * ext2fs.h: Indent the #warning to fix gcc -Wall complaint. |
1016 | ||
1017 | * mkjournal.c (ext2fs_add_journal_device): Fix various gcc -Wall | |
1018 | complaints including a missing return 0 at the end of | |
1019 | ext2fs_add_journal_device. | |
1020 | ||
43ec8734 TT |
1021 | 2001-01-03 <tytso@snap.thunk.org> |
1022 | ||
4becab68 TT |
1023 | * Makefile.in: Link in libe2p when creating libext2fs as a shared |
1024 | library, since mkjournal.c now references fsetflags(). | |
1025 | ||
1026 | * mkjournal.c (ext2fs_add_journal_inode): Folded in Andreas | |
1027 | Dilger's changes (with fixups) to allow on-line creation | |
1028 | of a journal file. | |
1029 | ||
43ec8734 TT |
1030 | * ext2fs.h, closefs.c (ext2fs_flush): Add new flag, |
1031 | EXT2_FLAG_SUPER_ONLY, which the close routines to only | |
1032 | update the superblock, and not the group descriptors. | |
1033 | ||
1034 | 2000-12-30 Andreas Dilger <adilger@turbolinux.com> | |
1035 | ||
1036 | * ismounted.c: add ext2fs_check_mount_point() function, which will | |
1037 | optionally return the mount point of a device if mounted | |
1038 | ||
31a17b36 TT |
1039 | 2000-12-14 Andreas Dilger <adilger@turbolinux.com> |
1040 | ||
1041 | * mkjournal.c: rename ext2fs_add_journal_fs() to the more descriptive | |
1042 | ext2fs_add_journal_inode() | |
1043 | ||
e5b38a5f TT |
1044 | 2001-01-01 <tytso@snap.thunk.org> |
1045 | ||
1046 | * ext2fs.h: Remove definition of ext2fs_sb. Note: this may break | |
1047 | source (but not binary) compatibility of some users of the | |
1048 | ext2 library. They should just simply do a global search | |
1049 | and replace of struct ext2fs_sb with struct | |
1050 | ext2_super_block, and use their own private copy of | |
1051 | ext2_fs.h if they aren't already. | |
1052 | ||
1053 | * closefs.c, initialize.c, link.c, newdir.c, openfs.c, swapfs.c: | |
1054 | Replace use of ext2fs_sb with ext2_super_block. | |
1055 | ||
2fe1efe2 TT |
1056 | 2000-12-31 <tytso@snap.thunk.org> |
1057 | ||
1058 | * ext2fs.h: Cleaned up header file by removing definitions of | |
1059 | feature flags that might not have been defined in older | |
1060 | ext2 header files. Now that we're using our own | |
1061 | include/linux/ext2fs.h header file, this can never happen. | |
1062 | ||
1063 | * jfs_dat.h: Removed old header file which is no longer needed. | |
1064 | ||
7dcfa6e2 TT |
1065 | 2000-12-13 Theodore Ts'o <tytso@valinux.com> |
1066 | ||
a917d1cc | 1067 | * closefs.c (ext2fs_update_dynamic_rev): New function suggested |
3fe973b3 TT |
1068 | by Andreas Dilger to update the filesystem revision to |
1069 | EXT2_DYNAMIC_REV. | |
1070 | ||
7dcfa6e2 TT |
1071 | * swapfs.c (ext2fs_swap_super): Add byte swapping for the journal |
1072 | fields. | |
1073 | ||
58618737 TT |
1074 | 2000-12-09 <tytso@snap.thunk.org> |
1075 | ||
31a17b36 | 1076 | * ext2fs.h, mkjournal.c (ext2fs_add_journal_inode, |
4e246704 TT |
1077 | ext2fs_add_journal_device): Add a new argument to the APIs |
1078 | of these function, which is a flags word. This is used to | |
1079 | allow the creation of a V1 superblock for those folks who | |
1080 | are using ext3 0.3b in production. Note, the user-land | |
1081 | interface for getting at this flag won't be documented, as | |
1082 | the V1 superblock is deprecated. | |
1083 | ||
58618737 TT |
1084 | * mkjournal.c (init_journal_superblock): Sync Stephen's changes |
1085 | which creates a V2 superblock instead of a V1 superblock. | |
1086 | ||
f20d0d57 TT |
1087 | 2000-11-21 <tytso@snap.thunk.org> |
1088 | ||
1089 | * test_io.c (test_write_blk, test_write_byte): Fix typos pointed | |
1090 | out by Andreas Dilger. | |
1091 | ||
72ed1264 TT |
1092 | 2000-11-05 <tytso@snap.thunk.org> |
1093 | ||
1094 | * imager.c (ext2fs_image_{inode,super,bitmap}_{read,write}, | |
1095 | ext2_fs.h, Makefile.in: New file that has routines that | |
1096 | save ext2fs metadata to a file. | |
1097 | ||
1098 | * ext2_err.et.in (EXT2_ET_MAGIC_E2IMAGE): New error code assigned. | |
1099 | ||
1100 | * e2image.h: New file which defines the file format for the ext2 | |
1101 | image file. (Saved copy of ext2 metadata to a file as a | |
1102 | saving throw against worst-case damage.) | |
1103 | ||
6a7f455b TT |
1104 | 2000-11-01 <tytso@snap.thunk.org> |
1105 | ||
1106 | * inode.c (ext2fs_flush_icache): Add new function | |
1107 | ext2fs_flush_icache() which flushes the internal inode | |
1108 | cache. Applications which modify the inode table blocks | |
1109 | directly must call this function. | |
1110 | ||
c180ac86 TT |
1111 | 2000-10-26 <tytso@snap.thunk.org> |
1112 | ||
17ee8b17 TT |
1113 | * mkjournal.c: Add #include of netinet/in.h, since Solaris |
1114 | requires it for ntohl(). | |
1115 | ||
c180ac86 TT |
1116 | * ext2_io.h (io_channel_write_byte): Add new interface to allow |
1117 | callers to write specific byte ranges. This is an | |
1118 | optional interface, which not all IO channels may | |
1119 | implement. | |
1120 | ||
1121 | * unix_io.c (unix_write_byte): | |
1122 | * test_io.c (test_write_byte): Add implementation of the | |
1123 | write_byte function. | |
1124 | ||
1125 | * closefs.c (write_primary_superblock, ext2fs_flush): Add a new | |
1126 | function which writes the primary superblock. If the IO | |
1127 | channel supports writing raw bytes directly, only fields | |
1128 | which were modified are written to the disk. This makes | |
1129 | it safe(r) to use utilities like tune2fs on a mounted | |
1130 | filesystem. | |
1131 | ||
1132 | * freefs.c (ext2fs_free): Free the original superblock if it is | |
1133 | available. | |
1134 | ||
1135 | * openfs.c (ext2fs_open): Store a copy of the original superblock | |
1136 | when opening it. | |
1137 | ||
1138 | * ext2fs.h: Add a field to store the original superblock in the | |
1139 | ext2 context structure. | |
1140 | ||
43819666 TT |
1141 | 2000-10-24 <tytso@snap.thunk.org> |
1142 | ||
1143 | * llseek.c: Add #ifdef's for IA64 (it's a 64-bit platform, so we | |
1144 | don't need to use llseek). | |
1145 | ||
d3cd93ca TT |
1146 | 2000-10-24 <tytso@valinux.com> |
1147 | ||
1148 | * Makefile.in, ext2fs.h, jfs_dat.h, mkjournal.c: Add functions for | |
1149 | creating an ext3 journal on a filesystem. | |
1150 | ||
1151 | 2000-08-21 <tytso@valinux.com> | |
1152 | ||
1153 | * ext2_err.et.in (EXT2_JOURNAL_NOT_BLOCK): Add new error code. | |
1154 | ||
adfc8c6c TT |
1155 | 2000-08-22 <tytso@valinux.com> |
1156 | ||
1157 | * unix_io.c: Make massive changes to support a multiple block | |
1158 | writethrough cacheing. | |
1159 | ||
1160 | * ext2_io.h: Added flags field to the io_channel structure. | |
1161 | ||
de23aa1d TT |
1162 | 2000-08-19 <tytso@valinux.com> |
1163 | ||
1164 | * finddev.c, ext2fs.h, Makefile.in: Add new file, finddev.c, which | |
1165 | provides the function ext2fs_find_block_device(). This | |
1166 | function returns the pathname to a block device, given its | |
1167 | device number. | |
1168 | ||
f9e67064 TT |
1169 | 2000-07-13 <tytso@valinux.com> |
1170 | ||
1171 | * Release of E2fsprogs 1.19 | |
1172 | ||
ab146766 TT |
1173 | 2000-07-07 Theodore Ts'o <tytso@valinux.com> |
1174 | ||
1175 | * ext2fs.h (EXT2_LIB_FEATURE_INCOMPAT_SUPP): Add | |
1176 | EXT3_FEATURE_INCOMPAT_RECOVER (aka needs_recovery) to the | |
1177 | list of filesystem flags supported by the library. | |
1178 | ||
57dca854 TT |
1179 | 2000-07-04 Theodore Ts'o <tytso@valinux.com> |
1180 | ||
8f13d8cb TT |
1181 | * ext2fs.h: Update to include latest journalling additions to the |
1182 | superblock. | |
1183 | ||
57dca854 TT |
1184 | * dll/jump.funcs: Add new jumptable entries for |
1185 | ext2fs_write_bb_FILE, ext2fs_read_bb_FILE2, and | |
1186 | ext2fs_badblocks_equal. | |
1187 | ||
1188 | * tst_badblocks.c: Update test program to test | |
1189 | ext2fs_read_bb_FILE2 and ext2fs_write_FILE. | |
1190 | ||
1191 | * write_bb_file.c (ext2fs_write_bb_FILE): New function which | |
1192 | writes out bad blocks list to a file. | |
1193 | ||
1194 | * read_bb_file.c (ext2fs_read_bb_FILE2): Add new function which | |
1195 | changes the callback function to take two additional | |
1196 | arguments; a private blind pointer supplied by the caller, | |
1197 | and pointer to a char * containing a pointer to the | |
1198 | invalid string. | |
1199 | ||
1200 | * badblocks.c (ext2fs_badblocks_equal): Add new function which | |
1201 | returns true if two badblocks list are equal. | |
1202 | ||
1203 | * Makefile.in: Remove explicit link of -lc in the shared library. | |
1204 | (It shouldn't be necessary, and is harmful in some cases). | |
1205 | ||
abf7d388 TT |
1206 | 2000-06-10 Theodore Ts'o <tytso@valinux.com> |
1207 | ||
1208 | * getsize.c (main): Add debugging code under #ifdef DEBUG | |
1209 | ||
2e8d40d5 TT |
1210 | 2000-05-27 Theodore Ts'o <tytso@valinux.com> |
1211 | ||
1212 | * mkdir.c (ext2fs_mkdir): Read the parent directory's inode | |
1213 | earlier, so that if there's an error reading it, we can | |
1214 | more cleanly back out of the operation. | |
1215 | ||
f0f4acbd TT |
1216 | 2000-05-25 <tytso@snap.thunk.org> |
1217 | ||
dc5f68ca | 1218 | * getsize.c (ext2fs_get_device_size): Use open64() instead of |
7fd86d39 TT |
1219 | open() if it exists. Under linux, manually define the |
1220 | ioctl for BLKGETSIZE if it isn't already defined and it's | |
1221 | safe to do so. | |
dc5f68ca TT |
1222 | |
1223 | * unix_io.c (unix_open): Use open64() instead of open() if it | |
1224 | exists. | |
1225 | ||
1226 | * llseek.c: Simplify header includes of unistd.h. If lseek64 is | |
1227 | available (and prototypes are defined) use it in | |
1228 | preference to llseek. | |
1229 | ||
f0f4acbd TT |
1230 | * Makefile: Add hack dependency rule so that parallel makes work |
1231 | correctly. | |
1232 | ||
fa7ef717 TT |
1233 | 2000-05-18 Theodore Ts'o <tytso@valinux.com> |
1234 | ||
1235 | * ext2fs.h: Add appropriate ifdef's to support C++ compilation. | |
1236 | ||
e589f678 TT |
1237 | 2000-04-03 Theodore Ts'o <tytso@valinux.com> |
1238 | ||
06af47f0 TT |
1239 | * block.c: Readibility tweak in conditionals involving |
1240 | ctx->fs->flags. | |
1241 | ||
e589f678 TT |
1242 | * ext2fs.h: Use AUTOCONF SIZEOF_* macros if available to determine |
1243 | how to define __s64 and __u64. Turn off "compression is | |
1244 | experimental" warning if the cpp macro | |
1245 | I_KNOW_THAT_COMPRESSION_IS_EXPERIMENTAL is defined. | |
1246 | ||
2c1a0ce7 TT |
1247 | 2000-02-11 <tytso@snap.thunk.org> |
1248 | ||
5a63dd28 TT |
1249 | * ext2fs.h: Define EXT2FS_COMPRESSED_BLKADDR and HOLE_BLKADDR. |
1250 | Conditionally include Compression as a supported type if | |
1251 | ENABLE_COMPRESSION (via --enable-compression) is turned on. | |
1252 | ||
2c1a0ce7 TT |
1253 | * swapfs.c (ext2fs_swap_super): Swap the compression usage bitmap. |
1254 | ||
28ffafb0 TT |
1255 | 2000-02-08 <tytso@snap.thunk.org> |
1256 | ||
1257 | * bitops.h (ext2fs_mark_generic_bitmap, ext2fs_unmark_generic_bitmap, | |
1258 | ext2fs_mark_block_bitmap, ext2fs_unmark_block_bitmap, | |
1259 | ext2fs_mark_inode_bitmap, ext2fs_unmark_inode_bitmap): | |
1260 | Change to return the previous state of the bit that is | |
1261 | being marked or unmarked. For speed optimization. | |
1262 | ||
80e808fc TT |
1263 | 2000-02-02 Theodore Ts'o <tytso@valinux.com> |
1264 | ||
1265 | * getsize.c, ismounted.c: Remove unneeded include of linux/fs.h | |
1266 | ||
1267 | * swapfs.c: Remove #ifdef HAVE_EXT2_INODE_VERSION since it's not | |
1268 | needed any more; we know it will always be i_generation. | |
1269 | Add support for swapping the high bits of the uid and gid. | |
1270 | ||
5c36a2f8 TT |
1271 | 1999-11-19 <tytso@valinux.com> |
1272 | ||
dab278af TT |
1273 | * mkdir.c (ext2fs_mkdir): Only update the parent's inode link |
1274 | counts if the link was successful. Patch suggested by | |
1275 | jeremy@goop.org. | |
1276 | ||
5c36a2f8 TT |
1277 | * Makefile.in (distclean): Remove TAGS and Makefile.in.old from |
1278 | the source directory. | |
1279 | ||
cd086361 TT |
1280 | 1999-11-10 <tytso@valinux.com> |
1281 | ||
1282 | * Release of E2fsprogs 1.18 | |
1283 | ||
9b9fe8ac TT |
1284 | 1999-11-08 <tytso@valinux.com> |
1285 | ||
1286 | * Makefile.in (tst_badblocks): Add freefs.o to the object list, | |
1287 | since ext2fs_badblocks_list_free was moved to freefs.c. | |
1288 | ||
1289 | * tst_badblocks.c: Use the newer badblocks API names. Add | |
1290 | duplicate blocks to the test inputs to test dealing with | |
1291 | adding blocks which are already in the badblocks list. | |
1292 | ||
1293 | * badblocks.c (ext2fs_badblocks_list_add): If appending to the end | |
1294 | of the list, use a shortcut O(1) operations instead of an | |
1295 | O(n) operation. (Idea suggested by David Beattie.) | |
1296 | ||
1297 | * freefs.c (ext2fs_free): Use ext2fs_badblocks_list_free() instead | |
1298 | of badblocks_list_free(), to save a procedure call. | |
1299 | ||
28e1194e TT |
1300 | 1999-10-26 <tytso@valinux.com> |
1301 | ||
1302 | * Release of E2fsprogs 1.17 | |
1303 | ||
416c93d4 TT |
1304 | 1999-10-26 <tytso@valinux.com> |
1305 | ||
1306 | * ext2fs.h: Add kludge to deal with the fact that egcs cpp doesn't | |
1307 | seem to handle ~0UL the same way as they used to. | |
1308 | ||
601002bd TT |
1309 | 1999-10-25 <tytso@valinux.com> |
1310 | ||
fe70fd33 TT |
1311 | * nt_io.c (_OpenNtName): Open the device using |
1312 | FILE_SYNCHRONOUS_IO_NONALERT instead of | |
1313 | FILE_SYNCHRONOUS_IO_ALERT | |
1314 | (nt_open): At the end of the device open routine, unlock | |
1315 | the drive but do not dismount it. | |
1316 | ||
601002bd TT |
1317 | * initialize.c (CREATOR_OS): Use __GNU__ instead of __gnu__ to |
1318 | detect the Hurd OS. | |
1319 | ||
614fdfd5 TT |
1320 | 1999-10-22 <tytso@valinux.com> |
1321 | ||
1322 | * Release of E2fsprogs 1.16 | |
1323 | ||
e6198e5a TT |
1324 | 1999-10-22 <tytso@valinux.com> |
1325 | ||
1326 | * mkdir.c (ext2fs_mkdir): Pass EXT2_FT_DIR flag to ext2fs_link(). | |
1327 | ||
1328 | * link.c (ext2fs_link): This call now uses the low three bits of | |
1329 | the flags parameter to pass the directory filetype | |
1330 | information; it will set the directory entry FILETYPE | |
1331 | information if the filesystem supports it. | |
1332 | ||
1333 | * newdir.c (ext2fs_new_dir_block): If the FILETYPE superblock | |
1334 | option is set, then create the '.' and '..' entries with | |
1335 | the filetype set to EXT2_FT_DIR. | |
1336 | ||
aa4115a4 TT |
1337 | 1999-09-24 <tytso@valinux.com> |
1338 | ||
1339 | * nt_io.c: New file which supports I/O under Windows NT. | |
1340 | ||
3a5f8eaa TT |
1341 | 1999-09-07 <tytso@valinux.com> |
1342 | ||
1343 | * ext2fs.h: Add new fields for journalling and define new | |
1344 | feature bits used by newer filesystems: IMAGIC_INODES, | |
1345 | HAS_JOURNAL, RECOVER. | |
1346 | ||
1347 | * expanddir.c (ext2fs_expand_dir, expand_dir_proc): Change where | |
1348 | we update the inode block count and size files so that the | |
1349 | block count field is updated correctly when we create an | |
1350 | indirect block. | |
1351 | ||
1352 | 1999-07-18 Theodore Ts'o <tytso@valinux.com> | |
657cb975 TT |
1353 | |
1354 | * Release of E2fsprogs 1.15 | |
1355 | ||
e72a9ba3 TT |
1356 | 1999-06-23 <tytso@valinux.com> |
1357 | ||
1358 | * swapfs.c (ext2fs_swap_inode): Add compatibility for Linux 2.3 | |
1359 | kernels that use i_generation instead of i_version. Patch | |
1360 | supplied by Jon Bright <sircus@sircus.demon.co.uk>. | |
1361 | ||
1362 | 1999-06-21 <tytso@valinux.com> | |
813bbb25 TT |
1363 | |
1364 | * dir_iterate.c (ext2fs_process_dir_block): Check for corrupted | |
1365 | directory entry before calling the callback function. | |
1366 | This should prevent some core dumps of insufficiently | |
1367 | paranoid callback functions. | |
1368 | ||
a4bf69d9 TT |
1369 | 1999-05-29 <tytso@rsts-11.mit.edu> |
1370 | ||
1371 | * ext2fs.h: Add feature definition for AFS IMAGIC inodes. | |
1372 | ||
1373 | * fileio.c (ext2fs_file_open): Remove obsolete comment stating | |
1374 | that we don't handle writing yet (we do). Fixed bug where | |
1375 | we weren't allocating a big enough buffer for ext2_bmap. | |
1376 | ||
f0687a5e TT |
1377 | 1999-05-03 <tytso@rsts-11.mit.edu> |
1378 | ||
1379 | * openfs.c (ext2fs_open): Check to make sure that the number of | |
1380 | blocks per group is not zero --- if so, it must be a bad | |
1381 | superblock! | |
1382 | ||
9e51eca7 TT |
1383 | 1999-01-09 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1384 | ||
1385 | * Release of E2fsprogs 1.14 | |
1386 | ||
665f7107 TT |
1387 | 1999-01-07 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1388 | ||
1389 | * inode.c (ext2fs_read_inode, ext2fs_write_inode): Check to see if | |
1390 | the inode number is zero; if it's zero, return | |
1391 | EXT2_ET_BAD_INODE_NUM. | |
1392 | ||
7a46952e TT |
1393 | 1998-12-30 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1394 | ||
1395 | * initialize.c (ext2fs_initialize): Use EXT2_FIRST_INODE instead | |
1396 | of EXT2_FIRST_INO to ensure compatibility with Linux 1.2 | |
1397 | header files. | |
1398 | ||
73f17cfc TT |
1399 | Mon Jan 4 02:32:09 1999 Theodore Y. Ts'o <tytso@mit.edu> |
1400 | ||
1401 | * llseek.c (ext2fs_llseek): Change ext2fs_llseek() in the | |
1402 | non-Linux case to use EINVAL by default, unless it isn't | |
1403 | defined, in which case we use EXT2_ET_INVALID_ARGUMENT | |
1404 | instead. | |
1405 | ||
556ad132 TT |
1406 | 1998-12-15 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1407 | ||
1408 | * Release of E2fsprogs 1.13 | |
1409 | ||
5a679c8f TT |
1410 | 1998-12-03 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1411 | ||
1412 | * Makefile.in: Updated dependencies. | |
1413 | ||
8d7e83b0 TT |
1414 | 1998-09-22 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1415 | ||
1416 | * initialize.c (ext2fs_initialize): Make sure that we allocate | |
1417 | enough inodes so that we can make a valid filesystem. | |
1418 | ||
2eb374c9 TT |
1419 | 1998-09-02 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1420 | ||
1421 | * rw_bitmaps.c: Fixed signed/unsigned warnings. | |
1422 | ||
1423 | * fileio.c (ext2fs_file_set_size): Remove unneeded extern from the | |
1424 | function declaration. | |
1425 | ||
1426 | * dblist.c (make_dblist): Add safety check in case the dblist | |
1427 | pointer passed in is null (in which case, assign it to | |
1428 | fs->dblist). Fixed some signed/unsigned warnings. | |
1429 | ||
1430 | * bmap.c: Make addr_per_block be of type blk_t to avoid | |
1431 | signed/unsigned warnings. | |
1432 | ||
1433 | * namei.c (ext2fs_follow_link): Remove uneeded extern from the | |
1434 | function declaration. | |
1435 | ||
1436 | * get_pathname.c (get_pathname_proc): Use return value from | |
1437 | ext2fs_get_mem, instead of checking if &gp->name is | |
1438 | NULL. | |
1439 | ||
1440 | * dir_iterate.c (ext2fs_process_dir_block): | |
1441 | * dblist_dir.c (ext2fs_dblist_dir_iterate): Remove uneeded extern | |
1442 | from the function declaration. | |
1443 | ||
1444 | * block.c (ext2fs_block_iterate2): If the read_inode call fails, | |
1445 | return the error directly instead of jumping to the | |
1446 | cleanup routine, since we don't need to do any cleanup. | |
1447 | ||
1448 | * alloc_table.c (ext2fs_allocate_group_table): Make this | |
1449 | function take a dgrp_t for its group argument. | |
1450 | ||
1451 | * ext2fs.h: Make dgrp_t an __u32 type, and make | |
1452 | fs->desc_group_count be of type dgrp_t. | |
1453 | ||
f75c28de TT |
1454 | 1998-07-27 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1455 | ||
1456 | * badblocks.c (ext2fs_badblocks_list_add): Use a bigger increment | |
1457 | than 10 blocks when we need to expand the size of the | |
1458 | badblocks list. | |
1459 | ||
4a5fa192 TT |
1460 | 1998-07-09 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1461 | ||
1462 | * Release of E2fsprogs 1.12 | |
1463 | ||
30c42619 TT |
1464 | 1998-06-30 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1465 | ||
1466 | * closefs.c (ext2fs_flush): Update the s_block_group_nr field as | |
1467 | appropriate for all of the block group copies, so that | |
1468 | it's clear where the beginning of the filesystem is on the | |
1469 | disk. (For when the partition table gets scrod.) | |
1470 | ||
1471 | * ext2fs.h: Change the name of the feature from | |
1472 | EXT2_FEATURE_INCOMPAT_DIRNAME_SIZE to | |
1473 | EXT2_FEATURE_INCOMPAT_FILESIZE (to match with the kernel). | |
1474 | ||
818180cd TT |
1475 | 1998-06-18 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1476 | ||
1477 | * inode.c (get_next_blockgroup): Fix bug where if | |
1478 | get_next_blockgroup() is called early because of a missing | |
1479 | inode table in a block group, the current_inode counter | |
1480 | wasn't incremented correctly. | |
1481 | ||
4faba5b2 TT |
1482 | 1998-06-16 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1483 | ||
1484 | * read_bb.c (ext2fs_read_bb_inode): Make function more robust | |
1485 | against a completely trashed bad block inode. | |
1486 | ||
03673dbb TT |
1487 | 1998-06-10 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1488 | ||
1489 | * alloc_tables.c (ext2fs_allocate_group_table): Fix bug so that if | |
1490 | the stride length hits a bad value, we retry the block | |
1491 | allocation starting at the beginning of the block group. | |
1492 | ||
1493 | * ext2fs.h, bb_inode.c, block.c, bmove.c, dir_iterate.c, | |
1494 | expanddir.c, ext2fsP.h, read_bb.c: Change blkcnt_t to be | |
1495 | e2_blkcnt_t to avoid collision with LFS API. | |
1496 | ||
353952d1 TT |
1497 | 1998-05-01 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1498 | ||
1499 | * initialize.c (ext2fs_initialize): Initialize s_inodes_count in a | |
1500 | way that avoids overflows on disk sizes greater than 4GB. | |
1501 | ||
4c77fe50 TT |
1502 | 1998-04-28 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1503 | ||
1504 | * ext2fs.h: Define EXT2_QSORT_TYPE appropriately for the | |
1505 | return type for comparison functions for qsort. | |
1506 | ||
1507 | * dblist.c (dir_block_cmp): Use EXT2_QSORT_TYPE in function | |
1508 | declaration. | |
1509 | ||
76f875da TT |
1510 | 1998-04-26 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1511 | ||
1512 | * ext2fs.h, bitops.h: Add support for the Watcom C compiler to do | |
1513 | inline functions. | |
1514 | ||
1515 | * ext2fs.h, dosio.c: Use asm/types.h instead of linux/types.h to | |
1516 | evade a potential problem with glibc's header files trying | |
1517 | to spike out linux/types.h. | |
1518 | ||
1519 | * ext2fs.h (ext2fs_resize_mem): Change the function prototype to | |
1520 | include the old size of the memory, which is needed for | |
1521 | some braindamaged memory allocation systems that don't | |
1522 | support realloc(). | |
1523 | ||
1524 | * badblocks.c (ext2fs_badblocks_list_add): | |
1525 | bb_inode.c (clear_bad_block_proc): | |
1526 | dblist.c (ext2fs_add_dir_block): | |
1527 | icount.c (insert_icount_el): | |
1528 | irel_ma.c (ima_put): | |
1529 | rs_bitmap.c (ext2fs_resize_generic_bitmap): Update functions to | |
1530 | pass the old size of the memory to be resized to | |
1531 | ext2fs_resize_mem(). | |
1532 | ||
469bec82 TT |
1533 | 1998-03-30 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1534 | ||
1535 | * Makefile.in: Change to use new installation directory variables | |
1536 | convention. Fix uninstall rules to take $(DESTDIR) into | |
1537 | account. | |
1538 | ||
4a31c48b TT |
1539 | 1998-03-29 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1540 | ||
1541 | * ext2fs.h: If __STRICT_ANSI__ is defined and we're on a platform | |
1542 | with 32 bit longs, then we need to manually define __s64 | |
1543 | and __u64, since the current kernel header files don't | |
1544 | define these if __STRICT_ANSI__ is defined. This is a | |
1545 | problem if we are compiling with full GCC warnings, since | |
1546 | we do need 64 bit support. | |
1547 | ||
1548 | * Makefile.in (OBJS): Remove bmove.o from files to be built, | |
1549 | since we're not using ext2fs_move_blocks() and there | |
1550 | is some question as to its usefulness in its current | |
1551 | form. | |
1552 | ||
1553 | * bmap.c (block_bmap): Remove unused function. | |
1554 | ||
1555 | * bmove.c (process_block): Fix -Wall warning. | |
1556 | ||
36a43d67 TT |
1557 | 1998-03-23 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1558 | ||
1559 | * block.c (ext2fs_block_iterate3): Make the ref_offset field | |
1560 | contain the offset into the inode.i_blocks array when | |
1561 | ref_block is zero. Since we haven't done a formal | |
1562 | release of e2fsprogs since block_iterate2 was first | |
1563 | introduced, I removed block_iterate2, and renamed | |
1564 | block_iterate3 to be block_iterate2. | |
1565 | ||
1566 | * bb_inode.c, bmove.c, dblist_dir.c, dir_iterate.c, | |
1567 | expanddir.c, ext2fs.h, ext2fsP.h, read_bb.c: Change | |
1568 | use of block_iterate and block_iterate2 to | |
1569 | block_iterate2 with the new prototype for the | |
1570 | interator function. (using blkcnt_t forr blockcount) | |
1571 | ||
674a4ee1 TT |
1572 | 1998-03-21 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1573 | ||
1574 | * ext2fs.h: Add new superblock fields (s_algorithm_usage_bitmap, | |
1575 | s_prealloc_blocks, s_prealloc_dir_blocks). Added | |
1576 | conditional defines of new features COMPAT_DIR_PREALLOC, | |
1577 | RO_COMPAT_LARGE_FILE RO_COMPAT_BTREE_DIR, | |
1578 | INCOMPAT_COMPRESSION, INCOMPAT_DIRNAME_SIZE. Changed | |
1579 | the library to declare that we support COMPAT_DIR_PREALLOC, | |
1580 | INCOMPAT_DIRNAME_SIZE, RO_COMPAT_LARGE_FILE. | |
1581 | ||
1582 | * fileio.c: Rename function ext2fs_file_llseek to be | |
1583 | ext2fs_file_lseek, which is more accurate. | |
1584 | ||
1585 | * block.c: Add new function ext2fs_block_iterate3 which calls | |
1586 | the iterator function with the blockcount argument of | |
1587 | type blkcnt_t. This version of the function is | |
1588 | allowed to handle large files; the other fucntions are | |
1589 | not. | |
1590 | ||
1591 | * ext2fs.h: Add new type blkcnt_t | |
1592 | ||
1593 | * ext2_err.et.in: Add error code EXT2_ET_FILE_TOO_BIG | |
1594 | ||
1595 | * block.c (ext2fs_block_iterate2): Fix bug where the block count | |
1596 | field wasn't getting correctly incremented for sparse | |
1597 | files when the indirect or doubly-indirect block | |
1598 | specified in the inode was zero. | |
1599 | ||
1600 | Sun Mar 8 22:42:47 1998 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
1601 | ||
1602 | * unlink.c (unlink_proc): | |
1603 | * lookup.c (lookup_proc): | |
1604 | * link.c (link_proc): | |
1605 | * get_pathname.c (get_pathname_proc): | |
1606 | * dir_iterate.c (ext2fs_process_dir_block): Mask off high 8 bits | |
1607 | from dirent->name_len, so it can be used for other | |
1608 | purposes. | |
1609 | ||
1610 | * ext2fs.h: Add definition of EXT2_FEATURE_INCOMPAT_DIRNAME_SIZE, | |
1611 | and indicate that we have support for this incompatible | |
1612 | option. | |
1613 | ||
c7752564 TT |
1614 | Mon Feb 23 08:46:33 1998 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1615 | ||
1616 | * ext2_err.et.in: Added new error code, EXT2_ET_CANCEL_REQUESTED. | |
1617 | ||
79b05dbe TT |
1618 | Fri Feb 20 23:58:01 1998 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1619 | ||
1620 | * dblist.c (ext2fs_get_num_dirs): Improve the estimation of the | |
1621 | number of directories when the block group information is | |
1622 | unreliable. | |
1623 | ||
c4e749ab TT |
1624 | 1998-02-20 Theodore Y. Ts'o <tytso@edt.mit.edu> |
1625 | ||
218a4864 TT |
1626 | * inode.c (ext2fs_get_next_inode): Always do the check to see if the |
1627 | inode table is missing so that we catch the case where the | |
1628 | first block group is missing. | |
1629 | ||
c4e749ab TT |
1630 | * getsize.c, ismounted.c, unix_io.c: #include errno.h since it's |
1631 | needed. | |
1632 | ||
9abd2ce9 TT |
1633 | Mon Feb 16 16:16:00 1998 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1634 | ||
1635 | * ext2_io.h, ext2fs.h: Protect against being included multiple times. | |
1636 | ||
1637 | * bmove.c: #include ext2fsP.h instead of "ext2fs/ext2fs.h" | |
1638 | ||
1639 | * test_io.c (test_flush): Add a debugging printf when the flush | |
1640 | method is called. | |
1641 | ||
1642 | * rw_bitmaps.c (ext2fs_read_bitmaps): If the bitmaps are already | |
1643 | read in, return right away. | |
1644 | ||
5953b9de TT |
1645 | Sun Feb 1 08:20:24 1998 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1646 | ||
1647 | * bitops.h: Don't try to do i386 inline asm functions if the | |
1648 | compiler isn't GCC. | |
1649 | ||
1650 | * ext2fs.h: If EXT2_FLAT_INCLUDES is defined, #include e2_types.h, | |
1651 | instead of linux/types.h, and e2_bitops.h instead of | |
1652 | ext2fs/bitops.h. | |
1653 | ||
1654 | * icount.c, version.c: Don't #include <et/com_err.h>, as it isn't | |
1655 | necessary. | |
1656 | ||
b5abe6fa TT |
1657 | Sat Jan 17 13:13:31 1998 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1658 | ||
1659 | * inode.c (ext2fs_open_inode_scan): Initialize the group variables | |
1660 | so that we don't need to call get_next_blockgroup() the | |
1661 | first time around. Saves a bit of time, and prevents us | |
1662 | from needing to assign -1 to current_group (which is an | |
1663 | unsigned value). | |
1664 | ||
1665 | * icount.c (insert_icount_el): Cast the estimated number of inodes | |
1666 | from a float to an ino_t. | |
1667 | ||
1668 | * alloc.c, alloc_tables.c, badlbocks.c, bb_compat.c, bb_inode.c, | |
1669 | bitmaps.c, bitops.c, block.c, bmap.c, bmove.c, brel_ma.c, | |
1670 | check_desc.c, closefs.c, cmp_bitmaps.c, dblist.c, | |
1671 | dblist_dir.c, dir_iterate.c, dirblock.c, dupfs.c, | |
1672 | expanddir.c, ext2fs.h, fileio.c, freefs.c, | |
1673 | get_pathname.c, getsize.c, icount.c, initialize.c, | |
1674 | inline.c, inode.c, irel_ma.c, ismounted.c, link.c, | |
1675 | lookup.c, mkdir.c, namei.c, native.c, newdir.c, | |
1676 | openfs.c, read_bb.c, read_bb_file.c, rs_bitmap.c, | |
1677 | rw_bitmaps.c, swapfs.c, test_io.c, tst_badblocks.c, | |
1678 | tst_getsize.c, tst_iscan.c, unix_io.c, unlink.c, | |
1679 | valid_blk.c, version.c: If EXT2_FLAT_INCLUDES is | |
1680 | defined, then assume all of the | |
1681 | ext2-specific header files are in a flat directory. | |
1682 | ||
1683 | * block.c, bmove.c, dirblock.c, fileio.c: Explicitly cast | |
1684 | all assignments from void * to be compatible with C++. | |
1685 | ||
1686 | Tue Jan 6 11:28:15 1998 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
1687 | ||
1688 | * closefs.c (ext2fs_flush): Add a call to io_channel_flush() to | |
1689 | make sure the contents of the disk are flushed to disk. | |
1690 | ||
1691 | Mon Dec 29 14:39:13 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
1692 | ||
1693 | * dblist.c (ext2fs_add_dir_block): Change new to be new_entry to | |
1694 | avoid C++ namespace clash. | |
1695 | ||
1696 | * bitmaps.c (ext2fs_copy_bitmap): Change new to be new_map to | |
1697 | avoid C++ namespace clash. | |
1698 | ||
1699 | * ext2fs.h, bb_inode.c, block.c, bmove.c, brel.h, brel_ma.c, | |
1700 | irel.h, irel_ma.c, dblist.c, dblist_dir.c, dir_iterate.c, | |
1701 | ext2fsP.h, expanddir.c, get_pathname.c, inode.c, link.c, | |
1702 | unlink.c: Change private to be priv_data (to avoid C++ | |
1703 | namespace clash) | |
1704 | ||
5be8dc21 TT |
1705 | Fri Nov 28 09:26:31 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1706 | ||
1707 | * dblist.c (ext2fs_get_num_dirs): Make ext2fs_get_num_dirs more | |
1708 | paranoid about validating the directory counts from the | |
1709 | block group information. | |
1710 | ||
1711 | * all files: Don't include stdlib.h anymore; include it in | |
1712 | ext2_fs.h, since that file requires stdlib.h | |
1713 | ||
89270b55 TT |
1714 | Thu Nov 20 16:07:38 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1715 | ||
1716 | * expanddir.c (ext2fs_expand_dir): Check to make sure the block | |
1717 | bitmap is loaded, and return an error if it is not. | |
1718 | (expand_dir_proc): Only use ext2fs_write_dir_block when | |
1719 | writing a directory block, not when writing out a fresh | |
1720 | indirect block. | |
1721 | ||
d36d835b TT |
1722 | Tue Nov 11 22:46:45 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1723 | ||
1724 | * Makefile.in, tst_getsize.c: Added new file which is used to test | |
1725 | the ext2fs_get_device_size function. | |
1726 | ||
1727 | * ext2_err.et.in (EXT2_ET_UNIMPLEMENTED): Added new error code. | |
1728 | ||
79a90bda TT |
1729 | Sun Nov 2 20:36:13 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1730 | ||
1731 | * ext2fs.h: Make ext2fs_get_mem take an unsigned argument. | |
1732 | ||
1733 | * fileio.c (ext2fs_file_get_size, ext2fs_file_set_size, | |
1734 | ext2fs_file_get_fs): New functions added. | |
1735 | ||
1736 | ||
1737 | Fri Oct 31 12:16:52 1997 <tytso@EDT.MIT.EDU> | |
1738 | ||
1739 | * bitops.c (ext2fs_warn_bitmap, ext2fs_warn_bitmap2): Don't call | |
1740 | com_err if OMIT_COM_ERR is defined. | |
1741 | ||
1f0b6c1f TT |
1742 | Thu Oct 30 11:33:57 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1743 | ||
1744 | * Rename new error codes to _ET_ in them for consistency. | |
1745 | ||
c555aebd TT |
1746 | Sat Oct 25 00:06:58 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1747 | ||
7b4e4534 TT |
1748 | * [all files, basically]: Added definition of ext2fs_get_mem, |
1749 | ext2fs_free_mem, and ext2fs_resize_mem in ext2fs.h, and | |
1750 | changed all library routines to use these wrapper functions. | |
1751 | ||
78d8f90f TT |
1752 | * dblist.c, mkdir.c: use EXT2_DIR_EXISTS and EXT2_DB_NOT_FOUND |
1753 | instead of the system error messages. | |
1754 | ||
1755 | * ext2_err.et.in: Added new error messages EXT2_DIR_EXISTS and | |
1756 | EXT2_DB_NOT_FOUND | |
1757 | ||
30fab293 TT |
1758 | * ext2fs.h: Added function declarations and constants for bmap.c |
1759 | and fileio.c. | |
1760 | ||
1761 | * ext2_err.et.in: Added new error messages EXT2_FILE_RO and | |
1762 | EXT2_ET_MAGIC_EXT2_FILE | |
1763 | ||
1764 | * Makefile.in: Added files bmap.c and fileio.c, and temporarily | |
1765 | commented out brel_ma.c and irel_ma.c | |
1766 | ||
1767 | * bmap.c: New file which maps a file's logical block number to its | |
1768 | physical block number. | |
1769 | ||
1770 | * fileio.c: New file which implements simple file reading and | |
1771 | writing primitives. | |
1772 | ||
c555aebd | 1773 | * alloc.c (ext2fs_alloc_block): New function which allocates a |
30fab293 TT |
1774 | block, zeros it, and updates the filesystem accounting |
1775 | records appropriately. | |
c555aebd TT |
1776 | |
1777 | Wed Oct 22 16:47:27 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
1778 | ||
1779 | * ext2_err.et.in: Added new error codes: EXT2_NO_MEMORY, | |
1780 | EXT2_INVALID_ARGUMENT, EXT2_BLOCK_ALLOC_FAIL, | |
1781 | EXT2_INODE_ALLOC_FAIL, EXT2_NOT_DIRECTORY | |
1782 | ||
1783 | * Change various library files to use these functions instead of | |
1784 | EINVAL, ENOENT, etc. | |
1785 | ||
b0b9c4de TT |
1786 | Mon Oct 20 19:32:40 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1787 | ||
1788 | * llseek.c: Check HAVE_LLSEEK_PROTOTYPE to see whether or not we | |
1789 | need to declare llseek(). | |
1790 | ||
1d2ff46a TT |
1791 | Sun Oct 19 18:56:22 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1792 | ||
d40259fd TT |
1793 | * Rename io.h to be ext2_io.h (avoid namespace collisions) |
1794 | ||
1d2ff46a TT |
1795 | * Add #ifdef's for HAVE_SYS_STAT_H and HAVE_SYS_TYPES_H |
1796 | ||
d163b094 TT |
1797 | Fri Oct 3 13:35:59 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1798 | ||
1799 | * llseek.c (ext2fs_llseek): Fix type error for ext2fs_llseek() | |
1800 | ||
1801 | * icount.c (ext2fs_icount_validate): | |
1802 | * bmove.c (process_block): Fix lint error in type for fprintf(). | |
1803 | ||
1804 | Mon Sep 15 11:45:09 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
1805 | ||
1806 | * inode.c (ext2fs_check_directory): Add support for the callback | |
1807 | to return the error code EXT2_ET_CALLBACK_NOTHANDLED. | |
1808 | ||
fff876b7 TT |
1809 | Thu Sep 4 12:28:22 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1810 | ||
1811 | * bitmaps.c (ext2fs_set_bitmap_padding): New function which sets the | |
1812 | padding of the bitmap to be all one's. | |
1813 | ||
bc75f2a1 TT |
1814 | Wed Sep 3 14:27:30 1997 Theodore Y. Ts'o <tytso@edt.mit.edu> |
1815 | ||
1816 | * llseek.c: Added missing semicolon to glibc fixup declaration of | |
1817 | llseek(). | |
1818 | ||
1819 | * bmove.c: Add #include of errno.h | |
1820 | ||
e9affb7b TT |
1821 | Sat Aug 23 22:47:46 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1822 | ||
1823 | * Makefile.in (ELF_SO_VERSION): Bump version to be 2.4 since we've | |
1824 | added a new field to the io_channel (app_data). | |
1825 | ||
1826 | * io.h: Add a new element to the io_channel structure, app_data. | |
1827 | ||
1828 | * initialize.c, openfs.c: Set io->app_data to point at the | |
1829 | filesystem handle. | |
1830 | ||
1c27cac2 TT |
1831 | Thu Aug 14 08:14:17 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1832 | ||
1833 | * io.h: Change the prototype of ext2fs_llseek() to use int's | |
1834 | instead of unsigned int's. | |
1835 | ||
1836 | * llseek.c: Change to allow PIC and !HAVE_LLSEEK. Add a prototype | |
1837 | to make life easer for GNU Libc 2. | |
1838 | ||
1839 | * rw_bitmaps.c: On the PowerPC, the big-endian variant of the ext2 | |
1840 | filesystem has its bitmaps stored as 32-bit words with bit | |
1841 | 0 as the LSB of each word. Thus a bitmap with only bit 0 | |
1842 | set would be, as a string of bytes, 00 00 00 01 00 ... To | |
1843 | cope with this, we byte-reverse each word of a bitmap if | |
1844 | we have a big-endian filesystem, that is, if we are *not* | |
1845 | byte-swapping other word-sized numbers. | |
1846 | ||
3cb6c502 TT |
1847 | Mon Aug 11 03:30:48 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1848 | ||
1849 | * dosio.c: New file to do DOS/BIOS disk accesses. | |
1850 | ||
1851 | * namei.c (open_namei): Make pathlen be of type size_t. | |
1852 | ||
1853 | * llseek.c: Always #include stdlib.h since it's need to define | |
1854 | size_t. | |
1855 | ||
1856 | * io.h: Use errcode_t for magic numbers. | |
1857 | ||
1858 | * icount.c (get_icount_el): Use size_t where appropriate | |
1859 | ||
1860 | * dupfs.c (ext2fs_dup_handle): | |
1861 | * dblist.c (dir_block_cmp): Use size_t where appropriate. | |
1862 | ||
1863 | * read_bb.c (ext2fs_read_bb_inode): | |
1864 | * cmp_bitmaps.c (ext2fs_compare_inode_bitmap): Use blk_t, ino_t | |
1865 | and size_t where appropriate. | |
1866 | ||
1867 | * closefs.c (ext2fs_flush): Use dgrp_t instead of int where | |
1868 | appropriate. | |
1869 | ||
1870 | * openfs.c (ext2fs_open): | |
1871 | * check_desc.c (ext2fs_check_desc): Use blk_t instead of int where | |
1872 | appropriate. | |
1873 | ||
1874 | * rw_bitmaps.c (read_bitmaps): | |
1875 | * irel_ma.c: | |
1876 | * inode.c (ext2fs_write_inode): | |
1877 | * initialize.c (ext2fs_initialize): | |
1878 | * brel_ma.c: Fix to make be 16-bit safe. | |
1879 | ||
1880 | * link.c (ext2fs_link): | |
1881 | * unlink.c (ext2fs_unlink): | |
1882 | * lookup.c (lookup_proc): | |
1883 | * ismounted.c (ext2fs_check_if_mounted): | |
1884 | * block.c (xlate_func): Add #pragma argsused for Turbo C. | |
1885 | ||
4cbe8af4 TT |
1886 | Sun Aug 10 10:05:22 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1887 | ||
1888 | * block.c (ext2fs_block_iterate2): Use retval which is a errcode_t | |
1889 | type. | |
1890 | ||
1891 | * bitmaps.c (make_bitmap): Use size_t instead of int where | |
1892 | appropriate. | |
1893 | ||
1894 | * bb_inode.c (set_bad_block_proc): Add #pragma argsused for Turbo C. | |
1895 | ||
1896 | * alloc.c (ext2fs_new_inode): Use ino_t instead of int for the | |
1897 | group number. | |
1898 | ||
1899 | * get_pathname.c: Use ino_t instead of int where appropriate. | |
1900 | ||
1901 | * ext2fs.h: Make the magic structure element be errcode_t instead | |
1902 | of int. | |
1903 | ||
1904 | * alloc.c alloc_tables.c badblocks.c bb_compat.c bb_inode.c | |
1905 | bitmaps.c block.c bmove.c brel_ma.c check_desc.c closefs.c | |
1906 | cmp_bitmaps.c dblist.c dblist_dir.c dir_iterate.c | |
1907 | dirblock.c dupfs.c expanddir.c freefs.c get_pathname.c | |
1908 | icount.c initialize.c inline.c inode.c irel_ma.c link.c | |
1909 | llseek.c lookup.c mkdir.c namei.c newdir.c read_bb.c | |
1910 | read_bb_file.c rs_bitmap.c rw_bitmaps.c swapfs.c | |
1911 | test_io.c tst_badblocks.c tst_iscan.c unix_io.c unlink.c | |
1912 | valid_blk.c version.c: Add an #ifdef for HAVE_UNISTD_H | |
1913 | ||
024996cf TT |
1914 | Tue Jun 17 01:33:20 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1915 | ||
a1230b13 TT |
1916 | * unix_io.c (unix_read_blk): If ext2fs_llseek() fails, but errno |
1917 | is zero, then return EXT2_IO_LLSEEK_FAILED. | |
1918 | ||
1919 | * ext2_err.et.in: Add a new error code, EXT2_IO_LLSEEK_FAILED. | |
1920 | ||
024996cf TT |
1921 | * Release of E2fsprogs 1.11 |
1922 | ||
549860c5 TT |
1923 | Mon Jun 16 23:53:06 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1924 | ||
1925 | * dblist.c (ext2fs_dblist_count): Added new function which returns | |
1926 | the number of directory blocks in dblist. | |
1927 | ||
36f21439 TT |
1928 | Sat Jun 14 01:39:13 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1929 | ||
1930 | * unix_io.c (unix_flush): Make the io_channel flush function do a | |
1931 | fsync to flush the kernel buffers to disk. | |
1932 | ||
9941fb73 TT |
1933 | Wed Jun 11 18:25:31 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1934 | ||
1935 | * inode.c (ext2fs_inode_scan_goto_blockgroup): Fix bug; the | |
1936 | current inode number wasn't being set by the | |
1937 | goto_blockgroup function. | |
1938 | ||
1e1da29f TT |
1939 | Mon Jun 9 10:45:48 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1940 | ||
1941 | * bmove.c (ext2fs_move_blocks): New function which takes a bitmap | |
1942 | of blocks which need to be moved, and moves those blocks | |
1943 | to another location in the filesystem. | |
1944 | ||
1945 | * rs_bitmap.c (ext2fs_resize_generic_bitmap): When expanding a | |
1946 | bitmap, make sure all of the new parts of the bitmap are | |
1947 | zero. | |
1948 | ||
1949 | Sun Jun 8 16:24:39 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
1950 | ||
1951 | * bitmaps.c (ext2fs_copy_bitmap): Fix bug; the destination bitmap | |
1952 | wasn't being returned to the caller. | |
1953 | ||
1954 | * alloc_tables.c (ext2fs_allocate_group_table): Add new function | |
1955 | ext2fs_allocate_group_table() which sets the group tables | |
1956 | for a particular block group. The relevant code was | |
1957 | factored out of ext2fs_allocate_tables(). | |
1958 | ||
1959 | * dblist.c (make_dblist): Adjust the initial size of the directory | |
024996cf | 1960 | block list to be a bit more realistic (ten plus twice the |
1e1da29f TT |
1961 | number of directories in the filesystem). |
1962 | ||
f635d7f6 TT |
1963 | Thu May 8 22:19:09 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
1964 | ||
1965 | * badblocks.c (ext2fs_badblocks_list_test): Fix bug where | |
1966 | ext2fs_badblocks_list_test would test the list (and exceed | |
1967 | array boundaries) if there were no bad blocks on the bad | |
1968 | blocks list. (Showed up when user tried: mke2fs -c -b 4096). | |
1969 | ||
a29f4d30 TT |
1970 | Thu Apr 24 12:16:42 1997 Theodre Ts'o <tytso@localhost.mit.edu> |
1971 | ||
1972 | * Release of E2fsprogs version 1.10 | |
1973 | ||
1974 | Thu Apr 24 10:13:42 1997 Theodre Ts'o <tytso@localhost.mit.edu> | |
1975 | ||
1976 | * alloc_tables.c (ext2fs_allocate_tables): Correctly place the | |
1977 | inode and block bitmaps based on the RAID 0 stride | |
1978 | parameter (which is passed by mke2fs). | |
1979 | ||
1980 | * ext2fs.h: Add "stride" parameter to ext2_filsys, to be used by | |
1981 | mke2fs to communicate the stride length to | |
1982 | ext2fs_allocate_tables() | |
1983 | ||
1984 | Wed Apr 23 21:50:42 1997 Theodre Ts'o <tytso@localhost.mit.edu> | |
1985 | ||
1986 | * initialize.c (ext2fs_initialize): Fix to compile under Linux 1.2 | |
1987 | systems. (We can't assume that the new filesystem types | |
1988 | are supported.) | |
1989 | ||
1990 | Wed Apr 23 18:40:53 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
1991 | ||
1992 | * alloc_tables.c (ext2fs_allocate_tables): Make sure that we | |
1993 | allocate the inode and block bitmaps inside block group at | |
1994 | all times. | |
1995 | ||
1996 | Mon Apr 21 00:06:28 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
1997 | ||
1998 | * alloc.c (ext2fs_new_block): Fix bug where if goal==0 and the | |
1999 | filesystem has no free blocks, ext2fs_new_block would loop | |
2000 | forever. | |
2001 | ||
2002 | * dupfs.c (ext2fs_dup_handle): Duplicate an ext2 filesystem handle | |
2003 | ||
2004 | * freefs.c (ext2fs_free_inode_cache): Decrement refcount and only | |
2005 | free if refcount goes to zero. | |
2006 | ||
2007 | * inode.c (create_icache): Initialize refcount to 1. | |
2008 | ||
2009 | * ext2fsP.h: Added refcount to ext2_inode_cache | |
2010 | ||
2011 | * dblist.c (ext2fs_copy_dblist): New function to copy a directory | |
2012 | block list. | |
2013 | ||
2014 | * badblocks.c (ext2fs_badblocks_copy): New function to copy a | |
2015 | badblocks structure. | |
2016 | ||
2017 | Sun Apr 20 23:19:51 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2018 | ||
2019 | * bitmaps.c (ext2fs_copy_bitmap): New function to copy a bitmap. | |
2020 | ||
2021 | * unix_io.c, test_io.c (unix_open, test_open): Initialize the | |
2022 | refcount to 1. | |
2023 | (unix_close, test_close): Decrement the refcount and only | |
2024 | close the io_channel if the refcount goes to 0. | |
2025 | ||
2026 | * io.h: Add refcount to the io_channel structure. Add new macro | |
2027 | interface io_channel_bumpcount() to bump the refcount. | |
2028 | ||
2029 | Thu Apr 17 20:25:03 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2030 | ||
2031 | * inode.c (ext2fs_read_inode, ext2fs_write_inode): Use the inode | |
2032 | cache in the filesystem handle, instead of the inode cache | |
2033 | in a static variable. | |
2034 | ||
2035 | * freefs.c: Added static function to free the inode cache (called by | |
2036 | ext2fs_free). | |
2037 | ||
2038 | * ext2fsP.h: Added definition of the ext2_inode_cache structures. | |
2039 | ||
2040 | * ext2fs.h: Added pointer to the inode_cache structure. | |
2041 | ||
2042 | * block.c (block_iterate_ind, block_iterate_dind, | |
2043 | block_iterate_tind): If there are holes in the indirect, | |
2044 | doubly indirect, or triply indirect blocks, increment the | |
2045 | block count field automatically. | |
2046 | ||
2047 | Thu Apr 17 12:23:38 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2048 | ||
2049 | * Release of E2fsprogs version 1.09 | |
2050 | ||
2ecc6fef TT |
2051 | Mon Apr 14 20:38:56 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
2052 | ||
2053 | * version.c (ext2fs_parse_version_string): Check the passed in | |
2054 | version string (instead of the hard-coded one). | |
2055 | ||
2056 | * alloc_tables.c (ext2fs_allocate_tables): If the last block is | |
2057 | greater filesystem size, clamp it to prevent allocating a | |
2058 | block or inode bitmap beyond the filesystem. | |
2059 | ||
2060 | * initialize.c (ext2fs_initialize): Fix bug where the metatdata | |
2061 | overhead calculation was accidentally removed. | |
2062 | ||
2063 | Fri Apr 11 18:56:26 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2064 | ||
2065 | * Release of E2fsprogs version 1.08 | |
2066 | ||
521e3685 TT |
2067 | Thu Apr 10 13:15:15 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> |
2068 | ||
2069 | * dblist.c (ext2fs_set_dir_block): New function which sets the | |
2070 | block of a dblist entry, given the directory inode and | |
2071 | blockcnt. | |
2072 | ||
2073 | Sat Apr 5 12:42:42 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2074 | ||
2075 | * alloc_tables.c (ext2fs_allocate_tables): Allocate the bitmap and | |
2076 | inode bitmaps at staggered locations across the block | |
2077 | groups, to avoid concentrating the bitmaps on a small | |
2078 | number of disks when using striped RAID arrays. | |
2079 | ||
2080 | * initialize.c (ext2fs_initialize): By default, choose the maximum | |
2081 | possible number of blocks per group (based on the size of | |
2082 | the bitmaps in the blocksize). | |
2083 | ||
2084 | Fri Apr 4 11:28:16 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2085 | ||
2086 | * initialize.c (ext2fs_initialize): Add support for | |
2087 | EXT2_COMPAT_SPARSE_SUPER feature. | |
2088 | ||
2089 | * closefs.c (ext2fs_bg_has_super): New function to determine | |
2090 | whether or a particular block group should have a | |
2091 | superblock and block group descriptor. Used for the | |
2092 | EXT2_COMPAT_SPARSE_SUPER feature is turned on. | |
2093 | (ext2fs_flush): Check ext2fs_bg_has_super to see whether | |
2094 | or not the superblock should be written out for the block | |
2095 | group. | |
2096 | ||
2097 | * ext2fs.h (EXT2_COMPAT_SPARSE_SUPER): Define compatibility flag | |
2098 | for sparse duplicate superblocks. | |
2099 | ||
2100 | * version.c (ext2fs_get_library_version): New function which | |
2101 | returns the library version. | |
2102 | ||
2103 | * version.c (ext2fs_parse_version_string): New function which | |
2104 | parses a version string and returns a version number, | |
2105 | so application programs can compare version numbers as | |
2106 | integers. | |
2107 | ||
2108 | Wed Mar 26 00:43:52 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2109 | ||
2110 | * icount.c (ext2fs_create_icount): Change function so that it also | |
2111 | takes a new argument which contains a "hint" icount | |
2112 | structure. This "hint" icount allows the create function | |
2113 | to set up the sorted list in advance. This reduces | |
2114 | significantly the amount of data moving needed to insert | |
2115 | these inodes into the list later. | |
2116 | ||
2117 | * icount.c (ext2fs_icount_validate): New function which validates | |
2118 | that the icount structure's rep invariant. | |
2119 | ||
2120 | * icount.c (get_icount_el): Completely revamped implementation | |
2121 | to subsume put_icount_el(). Put_icount_el() used to | |
2122 | use an O(N) implementation to insert in the middle | |
2123 | of the icount list. It now uses a O(ln N) to search | |
2124 | for where the icount should be inserted, and then uses | |
2125 | a memcpy to move the list down (instead of a for loop). | |
2126 | ||
2127 | * icount.c (ext2fs_icount_fetch, ext2fs_icount_store, | |
2128 | ext2fs_icount_increment, ext2fs_icount_decrement): Check | |
2129 | to see if the inode is within bounds; if it isn't, return | |
2130 | EINVAL. | |
2131 | ||
2132 | * bitops.h (ext2fs_test_generic_bitmap): Fix error message given | |
2133 | when a bad inode number is passed to test_generic_bitmap | |
2134 | to be EXT2FS_TEST_ERROR instead of the wrong | |
2135 | EXT2FS_UNMARK_ERROR. | |
2136 | ||
21c84b71 TT |
2137 | Wed Mar 12 13:32:05 1997 Theodore Y. Ts'o <tytso@mit.edu> |
2138 | ||
2139 | * Release of E2fsprogs version 1.07 | |
2140 | ||
2141 | Sun Mar 2 16:46:18 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2142 | ||
2143 | * Makefile.in (ELF_VERSION): Change version to be 2.2 | |
2144 | ||
2145 | Tue Feb 11 14:54:02 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2146 | ||
2147 | * alloc.c (ext2fs_get_free_blocks): Change routine to use | |
2148 | ext2fs_fast_test_block_bitmap_range(). | |
2149 | ||
2150 | * bitops.h (ext2fs_fast_test_block_bitmap_range, | |
2151 | ext2fs_test_block_bitmap_range: New inline functions which | |
2152 | test to see whether a contiguous range of blocks is | |
2153 | available. | |
2154 | ||
2155 | Thu Feb 6 10:00:13 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2156 | ||
2157 | * badblocks.c (ext2fs_badblocks_list_create): Rename sybmols to use | |
2158 | use ext2fs_badblocks_* instead of badblocks_* | |
2159 | ||
2160 | * bb_compat.c: New file which translates between old badblocks_*() | |
2161 | names to ext2fs_badblocks_*() | |
2162 | ||
2163 | * unlink.c (ext2fs_unlink): New file, moved ext2fs_unlink() from | |
2164 | link.c (since e2fsck doesn't use ext2fs_unlink()). | |
2165 | ||
2166 | * rs_bitmap.c (ext2fs_resize_generic_bitmap): New file, contains | |
2167 | bitmap resizing routine moved from bitmaps.c, since e2fsck | |
2168 | doesn't need to use this function. | |
2169 | ||
2170 | * lookup.c (ext2fs_lookup): Moved ext2fs_lookup to its own file, | |
2171 | since e2fsck only needs ext2fs_lookup. | |
2172 | ||
2173 | Mon Feb 3 10:11:40 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2174 | ||
2175 | * inode.c (ext2fs_open_inode_scan): Set fs->badblocks if it is not | |
2176 | already set; this is needed so that programs like dump | |
2177 | which use the inode scan functions will deal with | |
2178 | filesystems that have bad blocks in the inode table. | |
2179 | ||
2180 | Sun Feb 2 00:17:36 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2181 | ||
2182 | * ext2fs.h (struct_badblocks_list, struct_badblocks_iterate): | |
2183 | Moved to ext2fsP.h, since it doesn't need to be part of | |
2184 | the public interface. | |
2185 | ||
2186 | * dir_iterate.c: Move ext2_dir_iterate out of namei.c. | |
2187 | ||
2188 | Sat Feb 1 10:14:55 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2189 | ||
2190 | * dblist.c (ext2fs_get_num_dirs): New file, which implements a | |
2191 | directory block list abstraction. (Code moved from | |
2192 | e2fsck). | |
2193 | ||
2194 | * ext2fs.h, inode.c: Moved definition of ext2_struct_inode_scan to | |
2195 | to inode.c (since no one else should be peeking inside it!) | |
2196 | ||
2197 | * valid_blk.c (ext2_inode_has_valid_blocks): New function. | |
2198 | ||
2199 | * openfs.c (ext2fs_open): Check the feature set in the ext2 | |
2200 | superblock, and refuse to open filesystems if they contain | |
2201 | incompatible features. (Can be overriden with the | |
2202 | EXT2_FLAG_FORCE | |
2203 | ||
2204 | Sun Jan 12 11:31:46 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2205 | ||
2206 | * block.c (ext2fs_block_iterate2): Added new function | |
2207 | ext2fs_block_iterate2 which changes the function | |
2208 | signature of the callback function to include the | |
2209 | referencing block and offset. | |
2210 | ||
2211 | * inode.c (ext2fs_inode_scan_goto_blockgroup): Added new function | |
2212 | ext2fs_inode_scan_goto_blockgroup which allows an | |
2213 | application to jump to a particular block group while | |
2214 | doing an inode scan. | |
2215 | ||
2216 | Wed Jan 1 23:50:12 1997 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2217 | ||
2218 | * dirblock.c: Include string.h, since we use memcpy(). | |
2219 | ||
2220 | Tue Dec 3 12:27:29 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2221 | ||
2222 | * getsize.c (ext2fs_get_device_size): The ioctl BLKGETSIZE returns | |
2223 | a long not an int; this doesn't matter on i386 machines, | |
2224 | but it does on Alpha's. | |
2225 | ||
2226 | Fri Nov 29 20:57:37 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2227 | ||
2228 | * inode.c (ext2fs_write_inode, ext2fs_read_inode): If the inode | |
2229 | table pointer is NULL, then return an error indicating | |
2230 | that the inode table is missing. | |
2231 | (get_next_blockgroup, get_next_blocks, | |
2232 | ext2fs_get_next_inode): Don't treat a missing inode table | |
2233 | as permanent error. Return MISSING_INODE_TABLE, but as an | |
2234 | advisory error code, much like BAD_BLOCK_IN_INODE_TABLE. | |
2235 | ||
2236 | * rw_bitmaps.c (ext2fs_write_block_bitmap, | |
2237 | ext2fs_write_inode_bitmap): If the inode or block bitmap | |
2238 | block is zero, then don't write out the inode or block | |
2239 | bitmap. The idea here is to avoid stomping on the | |
2240 | superblock. | |
2241 | (read_bitmaps): If the inode or block bitmap block is | |
2242 | zero, then fill in that portion of the inode or block | |
2243 | bitmap with all zeros. | |
2244 | ||
2245 | * inode.c (ext2fs_get_next_inode): Fix bug in handling of bad | |
2246 | blocks in inode table when the inode table size is | |
2247 | non-standard (and can therefore span blocks). | |
2248 | ||
2249 | Tue Oct 29 20:13:14 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2250 | ||
2251 | * alloc.c (ext2fs_new_block): Fix fencepost error in | |
2252 | ext2fs_new_block; make sure we don't try to allocate the | |
2253 | first block beyond the end of the filesystem. | |
2254 | ||
2255 | Mon Oct 14 11:00:48 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2256 | ||
2257 | * inode.c (check_for_inode_bad_blocks): New function called by | |
2258 | get_next_blocks() to avoid reading in bad blocks marked in | |
2259 | fs->badblocks. Inodes located in bad blocks are returned | |
2260 | by ext2fs_get_next_inode() returns the error code | |
2261 | EXT2_ET_BAD_BLOCK_IN_INODE_TABLE. | |
2262 | ||
2263 | * alloc_tables.c (ext2fs_allocate_tables): New function which | |
2264 | performs the part of mke2fs's job of allocating the | |
2265 | filesystem tables. | |
2266 | ||
2267 | * test_io.c (test_close): IO manager which is used for testing | |
2268 | purposes. | |
2269 | ||
2270 | Sun Oct 13 04:31:57 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2271 | ||
2272 | * inode.c (ext2fs_get_next_inode): Separate out the function of | |
2273 | setting up for a new block group to get_next_blockgroup(). | |
2274 | Separate out the function of reading in blocks of the | |
2275 | inode table to get_next_blocks(). | |
2276 | ||
2277 | * ext2fs.h: Add the badblocks list to the ext2_filsys entry | |
2278 | ||
2279 | * badblocks.c (badblocks_list_add, badblocks_list_test): Add | |
2280 | blocks to the badblock list in sorted order. This allows | |
2281 | badblocks_list_test to be coded using a binary search for | |
2282 | speed. | |
2283 | ||
2284 | Tue Oct 8 02:02:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2285 | ||
2286 | * Release of E2fsprogs version 1.06 | |
2287 | ||
5c576477 TT |
2288 | Mon Oct 7 00:44:17 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> |
2289 | ||
2290 | * ext2fs.h, block.c, closefs.c, dirblock.c, inode.c, native.c, | |
2291 | open.c: Change EXT2_SWAP to EXT2_FLAG_SWAP for | |
2292 | consistency's sake. | |
2293 | ||
2294 | * closefs.c (ext2fs_flush): If the flag EXT2_MASTER_SB_ONLY is | |
2295 | set, then only write out the master superblock. | |
2296 | ||
2297 | Sun Oct 6 21:45:26 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2298 | ||
2299 | * block.c (ext2fs_block_iterate): Fixed bug which caused | |
2300 | block_iterate to fail to handle HURD created filesystems; | |
2301 | it tested the inode translator field before the inode was | |
2302 | loaded. | |
2303 | ||
2304 | Tue Sep 17 14:08:24 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2305 | ||
2306 | * initialize.c (ext2fs_initialize): Make sure the description for | |
2307 | the inode bitmap is set correctly. | |
2308 | ||
2309 | * bitmaps.c (ext2fs_allocate_generic_bitmap): Fix minor type typo. | |
2310 | ||
2311 | Thu Sep 12 15:23:07 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2312 | ||
2313 | * Release of E2fsprogs version 1.05 | |
2314 | ||
1e3472c5 TT |
2315 | Sat Sep 7 07:36:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> |
2316 | ||
2317 | * initialize.c: Override the kernel's idea of default | |
2318 | checkinterval from 0 (never) to 180 days. | |
2319 | ||
2320 | Wed Aug 28 03:20:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2321 | ||
2322 | * namei.c (ext2fs_namei_follow): New function which follows | |
2323 | symbolic link (if any) at the target. | |
2324 | ||
2325 | Tue Aug 27 01:48:43 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2326 | ||
2327 | * inode.c (ext2fs_read_inode, ext2fs_write_inode): Add support | |
2328 | for shortcut function fs->read_inode() and fs->write_inode(). | |
2329 | Added inode_cache to reduce CPU time spent in doing | |
2330 | byte swapping. | |
2331 | ||
2332 | * swapfs.c (ext2fs_swap_super): Swap the new fields in a V2 | |
2333 | superblock. | |
2334 | ||
2335 | * namei.c (ext2fs_follow_link): New function. | |
2336 | (ext2fs_namei): Extended to have support for chasing | |
2337 | symbolic links. ext2fs_namei() still returns an inode | |
2338 | which is a symbolic link. Symbolic links are only chased | |
2339 | while resolving the containing directory. To chase | |
2340 | symbolic links of the final result, use | |
2341 | ext2fs_follow_link(). | |
2342 | ||
2343 | Mon Aug 26 23:46:07 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2344 | ||
2345 | * ext2_err.et.in: Added new error code EXT2_ET_SYMLINK_LOOP. | |
2346 | ||
2347 | * bitops.h (ext2fs_set_bit, ext2fs_celar_bit): Use asm inlines | |
2348 | provided by Pete A. Zaitcev (zaitcev@lab.sun.mcst.ru). | |
2349 | ||
2350 | Thu Aug 22 00:40:18 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2351 | ||
2352 | * initialize.c (ext2fs_initialize): On systems where the byte | |
2353 | order is not i386 compatible, set the swap_byte flag. | |
2354 | ||
2355 | * inode.c (inocpy_with_swap): Check to see if inode contains a | |
2356 | fast symlink before swapping the inode block fields. This | |
2357 | required adding a new argument to inocpy_with_swap to | |
2358 | determine whether the mode field is in host order or not. | |
2359 | ||
2360 | Wed Aug 21 00:45:42 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2361 | ||
2362 | * bitops.h (ext2fs_set_bit, ext2fs_clear_bit, ext2fs_test_bit): On | |
2363 | the sparc, if EXT2_STD_BITOPS set, use the standard | |
2364 | i386-compatible bitmask operations, instead on the | |
2365 | non-standard native bitmask operators. | |
2366 | ||
2367 | Fri Aug 9 11:11:35 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2368 | ||
2369 | * block.c (ext2fs_block_iterate): Cause block iterator to return | |
2370 | the HURD translator block (along with everything else). | |
2371 | If the flag BLOCK_FLAG_DATA_ONLY is passed to the block | |
2372 | iterator, then don't return any meta data blocks | |
2373 | (including the HURD translator). | |
2374 | ||
2375 | Wed Jul 17 17:13:34 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2376 | ||
2377 | * gen_uuid.c: New file, which generates DCE-compatible UUIDs. | |
2378 | ||
2379 | * uuid.c: New file, containing UUID utility functions. | |
2380 | ||
2381 | Tue Jul 16 10:19:16 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2382 | ||
2383 | * ext2fs.h: Add a definition of the "real" ext2 superblock. | |
2384 | ||
2385 | Fri May 24 14:54:55 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2386 | ||
2387 | * ext2fs.h: Fix erroneous ino_t type used in block_bitmap type. | |
2388 | ||
2389 | Sun May 19 15:39:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> | |
2390 | ||
2391 | * openfs.c (ext2fs_open): If the blocksize in the superblock is | |
2392 | zero, return the error EXT2_ET_CORRUPT_SUPERBLOCK, since | |
2393 | that's a basic value that must be correct for the rest of | |
2394 | the library to work. | |
2395 | ||
2396 | * ext2_err.et.in (EXT2_ET_CORRUPT_SUPERBLOCK): Added new error | |
2397 | code. | |
2398 | ||
62c06f79 TT |
2399 | Thu May 16 11:12:30 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> |
2400 | ||
2401 | * Release of E2fsprogs version 1.04 | |
2402 | ||
7f88b043 TT |
2403 | Wed Mar 27 00:33:40 1996 <tytso@rsts-11.mit.edu> |
2404 | ||
2405 | * Release of E2fsprogs version 1.03 | |
2406 | ||
2407 | Tue Mar 26 12:06:32 1996 <tytso@rsts-11.mit.edu> | |
2408 | ||
2409 | * bitops.h (ext2fs_set_bit, ext2fs_clear_bit, ext2fs_test_bit): | |
2410 | Change the m68k bit numbering for bitmasks to match with | |
2411 | the bit numbering used by all other ext2 implementations. | |
2412 | ||
2413 | Thu Mar 7 03:37:00 1996 <tytso@rsts-11.mit.edu> | |
2414 | ||
2415 | * inode.c (ext2fs_get_next_inode, ext2fs_close_inode_scan, | |
2416 | ext2fs_open_inode_scan): Support dynamically-sized inodes. | |
2417 | ||
2418 | Wed Mar 6 12:26:29 1996 <tytso@rsts-11.mit.edu> | |
2419 | ||
2420 | * inode.c (ext2fs_read_inode, ext2fs_write_inode): Support | |
2421 | dynamically-sized inodes. | |
2422 | ||
2423 | * openfs.c (ext2fs_open): Allow dynamic revision filesystem to be | |
2424 | loaded. | |
2425 | ||
2426 | Tue Mar 5 03:49:37 1996 <tytso@rsts-11.mit.edu> | |
2427 | ||
2428 | * initialize.c (ext2fs_initialize): Catch an error condition where | |
2429 | the passed in size is *really* too small. | |
2430 | ||
2431 | * alloc.c (ext2fs_new_inode): | |
2432 | * ext2fs.h (EXT2_FIRST_INODE): Add support for dynamic revision to | |
2433 | get first inode. | |
2434 | ||
2435 | Wed Feb 21 15:56:17 1996 <tytso@rsts-11.mit.edu> | |
2436 | ||
2437 | * getsize.c (ext2fs_get_device_size): Open the device read-only | |
2438 | when trying to determine its size. | |
2439 | ||
74becf3c TT |
2440 | Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> |
2441 | ||
2442 | * Release of E2fsprogs version 1.02 | |
2443 | ||
2444 | Sat Dec 9 09:57:50 1995 <tytso@rsts-11.mit.edu> | |
2445 | ||
2446 | * rw_bitops.c (ext2fs_write_block_bitmap): | |
2447 | * bitops.c (ext2fs_test_bit, ext2fs_clear_bit, ext2fs_set_bit): | |
2448 | * bitops.h (ext2fs_test_bit, ext2fs_clear_bit, ext2fs_set_bit): | |
2449 | Rename {test,set,clear}_bit to ext2fs_{test,set,clear}_bit, | |
2450 | to avoid conflicts with with kernel include files. Also | |
2451 | rename ADDR and CONST_ADDR to EXT2FS_ADDR and | |
2452 | EXT2FS_CONST_ADDR. | |
2453 | ||
50e1e10f TT |
2454 | Thu Oct 26 12:09:16 1995 <tytso@rsts-11.mit.edu> |
2455 | ||
2456 | * ext2_err.et: Updated message in EXT2_ET_BASE to say version 0.5c | |
2457 | ||
2458 | * swapfs.c (ext2fs_swap_super): Put an #ifdef check around | |
2459 | s_def_resuid and s_def_resgid for backwards compatibility. | |
2460 | ||
2461 | Fri Oct 20 23:33:31 1995 <tytso@rsts-11.mit.edu> | |
2462 | ||
2463 | * bitops.h: Added #ifdef's for Sparc. | |
2464 | ||
2465 | Wed Sep 6 22:14:46 1995 <tytso@rsts-11.mit.edu> | |
2466 | ||
2467 | * getsize.c: #include <sys/ioctl.h> under Linux to pick up ioctl() | |
2468 | declaration | |
2469 | ||
2470 | * closefs.c: #include <string.h> to pick up memset() declaration | |
2471 | ||
2472 | Mon Sep 4 21:45:29 1995 Remy Card <card@bbj> | |
2473 | ||
2474 | * Makefile.in: Added support for BSD shared libraries. | |
2475 | ||
2476 | * initialize.c (ext2fs_initialize): Correctly set the s_creator_os | |
2477 | flag. | |
2478 | ||
2479 | Mon Sep 4 09:55:30 1995 <tytso@rsts-11.mit.edu> | |
2480 | ||
2481 | * unix_io.c (unix_open): Add a double check; if the passed in name | |
2482 | is NULL, return EXT2_ET_BAD_DEVICE_NAME. | |
2483 | ||
2484 | * ext2_err.et (EXT2_ET_BAD_DEVICE_NAME): Added new error code | |
2485 | ||
2486 | Wed Aug 16 15:44:10 1995 <tytso@rsts-11.mit.edu> | |
2487 | ||
2488 | * inode.c (ext2fs_check_directory): Use LINUX_S_ISDIR instead of | |
2489 | S_ISDIR. | |
2490 | ||
2491 | Tue Aug 15 13:08:36 1995 <tytso@rsts-11.mit.edu> | |
2492 | ||
2493 | * getsize.c (ext2fs_get_device_size): Add support for reading the | |
2494 | partition size from a BSD disk label. | |
2495 | ||
2496 | Thu Aug 10 09:33:26 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu> | |
2497 | ||
2498 | * getsize.c (ext2fs_get_device_size): New function that determins | |
2499 | the size of a device. Used by mke2fs and e2fsck. | |
2500 | ||
2501 | Sat Aug 12 03:09:54 1995 Remy Card <card@bbj> | |
2502 | ||
2503 | * Makefile.in (install): Install static libraries in $(ulibdir) | |
2504 | (/usr/lib on Linux) instead of $(libdir) (/lib on Linux). | |
2505 | ||
2506 | Wed Aug 9 17:04:23 1995 Theodore Y. Ts'o <tytso@dcl> | |
2507 | ||
2508 | * bitmaps.c (ext2fs_free_inode_bitmap, ext2fs_free_block_bitmap): | |
2509 | Move these functions to freefs.c. | |
2510 | ||
2511 | * closefs.c (ext2fs_flush): If swapping blocks, clear the group | |
2512 | descriptors shadow memory to keep purify quiet. (This | |
2513 | also has the nice benefit that the unused portion of the | |
2514 | shadow descriptors are zeroed out.) | |
2515 | ||
2516 | * dirblock.c (ext2fs_write_dir_block): We need to use | |
2517 | dirent->rec_len *before* it's byteswapped to find the | |
2518 | location of the next directory structure! | |
2519 | ||
2520 | * alloc.c (ext2fs_new_inode): Fix bug which could potentially | |
2521 | cause ext2fs_new_inode to loop infinitely if we're trying | |
2522 | to allocate an inode in group #0 and there are no free | |
2523 | inodes at all in the system. | |
2524 | ||
2525 | * closefs.c: #include <errno.h> if it exists. | |
2526 | ||
2527 | Sun Aug 6 13:27:50 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu> | |
2528 | ||
2529 | * ext2fs.h (BLOCK_FLAG_HOLE): Added new definition for | |
2530 | BLOCK_FLAG_APPEND. Added documentation for the block | |
2531 | interator flags. | |
2532 | ||
2533 | Sat Aug 5 11:44:05 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu> | |
2534 | ||
2535 | * Makefile.in (DLL_INSTALL_DIR, ELF_INSTALL_DIR): Set the | |
2536 | installation directories correctly. | |
2537 | ||
2538 | Tue Jul 18 09:27:38 1995 <tytso@rsx-11.mit.edu> | |
2539 | ||
2540 | * namei.c (process_dir_block): | |
2541 | * mkdir.c (ext2fs_mkdir): | |
2542 | * expanddir.c (expand_dir_proc): Use ext2fs_{read,write}_dir_block | |
2543 | to read/write the directory block. | |
2544 | ||
2545 | * dirblock.c (ext2fs_read_dir_block), ext2fs_write_dir_block): New | |
2546 | file containing functions for reading and writing | |
2547 | directory blocks (byte swapping if necesssary) | |
2548 | ||
2549 | * block.c (block_iterate_ind, block_iterate_dind, | |
2550 | block_iterate_tind): Byte swap the block addresses if | |
2551 | EXT2_SWAP_BYTES is set (and swap them back before writing | |
2552 | them out.) | |
2553 | ||
2554 | * inode.c (inocpy_with_swap): New function. | |
2555 | (ext2fs_get_next_inode, ext2fs_read_inode, ext2fs_write_inode): | |
2556 | Call inocpy_with_swap if EXT2_SWAP_BYTES if set. | |
2557 | ||
2558 | * closefs.c (ext2fs_flush): If EXT2_SWAP_BYTES is set, then swap | |
2559 | the superblock and group descriptors before writing it out. | |
2560 | ||
2561 | * openfs.c (ext2fs_open): If the magic number is byte-swapped, | |
2562 | then set the EXT2_SWAP_BYTES and byte-swap the superblock | |
2563 | and group descriptors. | |
2564 | ||
2565 | * swapfs.c (ext2fs_swap_super, ext2fs_swap_group_desc): New functions | |
2566 | to desp ext2 filesystem structures. | |
2567 | ||
2568 | * bitops.c (set_bit, clear_bit, test_bit): Use modifications | |
2569 | supplied by Pete A. Zaitcev so that the C language | |
2570 | versions of these functions are more portable. They will | |
2571 | now work on both little and big endian systems, and the | |
2572 | assumption that 32-bit integers are used is gone. | |
2573 | ||
2574 | * bitops.h (ext2_swab16, ext2_swab32): Added new functions for | |
2575 | doing byte swapping. | |
2576 | ||
2577 | * ext2fs.h (EXT2_SWAP_BYTES): Add new flag which indicates that | |
2578 | byte swapping should take place. | |
2579 | ||
2580 | Sun Jul 16 06:21:43 1995 <tytso@rsx-11.mit.edu> | |
2581 | ||
2582 | * Makefile.in, cmp_bitmaps.c (ext2fs_compare_block_bitmap_end, | |
2583 | ext2fs_compare_inode_bitmap_end): Added new file | |
2584 | containing routines to compare bitmaps. | |
2585 | ||
2586 | * ext2_err.et (EXT2_ET_NEQ_BLOCK_BITMAP, EXT2_ET_NEQ_INODE_BITMAP): | |
2587 | Added new error codes. | |
2588 | ||
2589 | Sat Jul 15 04:23:37 1995 <tytso@rsx-11.mit.edu> | |
2590 | ||
2591 | * inode.c (ext2fs_get_next_inode): Don't check scan->inode_buffer; | |
2592 | if the magic number is correct, it will be allocated. | |
2593 | ||
2594 | Fri Jul 14 19:02:59 1995 <tytso@rsx-11.mit.edu> | |
2595 | ||
2596 | * block.c (block_iterate_ind, block_iterate_dind, | |
2597 | block_iterate_tind): Don't recompute block_nr each loop; | |
2598 | just increment it! Factor check of BLOCK_FLAG_APPEND out | |
2599 | of the loop. Factor mask of BLOCK_CHANGED into changed | |
2600 | variable out of the loop. (block_iterate_ind, in | |
2601 | particular, gets called a lot, so every little | |
2602 | optimization helps.) | |
2603 | ||
2604 | Thu Jul 13 08:02:45 1995 <tytso@rsx-11.mit.edu> | |
2605 | ||
2606 | * block.c (block_iterate_ind, block_iterate_dind, | |
2607 | block_iterate_tind): Precompute limit of loop to speed up | |
2608 | block_iterate_ind and company. | |
2609 | ||
2610 | * bitops.h (ext2fs_fast_mark_block_bitmap, | |
2611 | ext2fs_fast_unmark_block_bitmap, ext2fs_fast_test_block_bitmap, | |
2612 | ext2fs_fast_mark_inode_bitmap, ext2fs_fast_unmark_inode_bitmap, | |
2613 | ext2fs_fast_test_inode_bitmap): Add fast version of these | |
2614 | functions, which don't do range checking. | |
2615 | ||
2616 | * bitops.h (ext2fs_get_block_bitmap_start, | |
2617 | ext2fs_get_inode_bitmap_start, ext2fs_get_block_bitmap_end, | |
2618 | ext2fs_get_inode_bitmap_end): Add new accessor functions | |
2619 | which return the start and end points of the bitmaps. | |
2620 | ||
2621 | Tue Jul 11 18:59:41 1995 <tytso@rsx-11.mit.edu> | |
2622 | ||
2623 | * llseek.c (ext2_llseek): If the offset is small enough, use lseek | |
2624 | instead of llseek. The errno if the offset is too large | |
2625 | and lseek is not supported should be EINVAL, not -EINVAL. | |
2626 | ||
2627 | Thu Jun 15 23:43:02 1995 Remy Card <card@bbj> | |
2628 | ||
2629 | * Makefile.in: Added support for ELF shared libraries. | |
2630 | Fixed typos in the compilation rules. | |
2631 | (distclean): Added Makefile. | |
2632 | ||
2633 | * llseek.c (llseek): New function, if llseek() does not exist in the | |
2634 | C library. | |
2635 | (ext2_llseek): Changed to call llseek(). | |
2636 | ||
2637 | Mon Jun 12 08:29:07 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu> | |
2638 | ||
2639 | * ext2fs.h: Use __u32 to define blk_t, instead of unsigned long. | |
2640 | ||
2641 | Sun Jun 11 15:02:54 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu> | |
2642 | ||
2643 | * mkdir.c (ext2fs_mkdir): Use LINUX_S_IFDIR instead of S_IFDIR. | |
2644 | ||
2645 | * ext2fs.h (LINUX_S_IFDIR): Define a linux specific versions of | |
2646 | the S_*, which are normally defined in <sys/stat.h>. This | |
2647 | allows us to compile e2fsprogs on a non-Linux system, | |
2648 | which may have a different value for S_IFDIR. | |
2649 | ||
2650 | Sat Jun 10 23:47:05 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu> | |
2651 | ||
2652 | * bitops.c (clear_bit, set_bit): Remove calls to cli() and sti(); | |
2653 | this is a user-mode application! | |
2654 | ||
2655 | Thu Jun 8 13:13:22 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> | |
2656 | ||
2657 | * llseek.c: Put the include of <linux/unistd.h> inside the #ifdef | |
2658 | __linux__ so that non-linux systems won't see it. | |
2659 | ||
2660 | * alloc.c: Include <errno.h> if possible. | |
2661 | * badblocks.c: Ditto. | |
2662 | * bb_inode.c: Ditto. | |
2663 | * bitmaps.c: Ditto. | |
2664 | * block.c: Ditto. | |
2665 | * expanddir.c: Ditto. | |
2666 | * get_pathname.c: Ditto. | |
2667 | * initialize.c: Ditto. | |
2668 | * inode.c: Ditto. | |
2669 | * llseek.c: Ditto. | |
2670 | * mkdir.c: Ditto. | |
2671 | * namei.c: Ditto. | |
2672 | * newdir.c: Ditto. | |
2673 | * openfs.c: Ditto. | |
2674 | * rw_bitmaps.c: Ditto. | |
2675 | * unix_io.c: Ditto. | |
2676 | ||
2677 | * Makefile.in: Rewritten to conform to GNU coding standards and | |
2678 | support separate compilation directories. | |
2679 | ||
2680 | Thu May 11 04:13:12 1995 <tytso@rsx-11.mit.edu> | |
2681 | ||
2682 | * initialize.c (ext2fs_initialize): Don't allow more than one | |
2683 | bitmaps's worth of inodes in a group. | |
2684 | ||
f3db3566 TT |
2685 | Sat Mar 11 14:07:11 1995 Theodore Y. Ts'o <tytso@localhost> |
2686 | ||
2687 | * llseek.c (ext2_llseek): Added error checking to the llseek() | |
2688 | compat code to protect against overflow. This only | |
2689 | applies to 1.0 and early 1.1 kernels, which don't support | |
2690 | the llseek() system call. | |
2691 | ||
2692 | Thu Nov 24 16:29:00 1994 Theodore Y. Ts'o (tytso@rt-11) | |
2693 | ||
2694 | * unix_io.c (unix_open): Initialize the read_error and write_error | |
2695 | io_channel pointers to be null. | |
2696 | ||
2697 | * bb_inode.c (clear_bad_block_proc): If an illegal block number is | |
2698 | found, clear it but don't try to update the filesystem | |
2699 | accounting information, since that's hopeless anyway. | |
2700 | ||
2701 | * block.c (bloblock_iterate_ind, bloblock_iterate_dind, | |
2702 | bloblock_iterate_tind): Check to see if the indirect blocks are | |
2703 | valid before trying to read them. | |
2704 | ||
2705 | * ext2_err.et (EXT2_ET_BAD_IND_BLOCK, EX2_ET_BAD_DIND_BLOCK, | |
2706 | EXT2_ET_BAD_TIND_BLOCK): Add new error codes. | |
2707 | ||
2708 | * bitops.h (ext2fs_mark_block_bitmap, ext2fs_unmark_block_bitmap, | |
2709 | ext2fs_test_block_bitmap, ext2fs_mark_inode_bitmap, | |
2710 | ext2fs_unmark_inode_bitmap, ext2fs_test_inode_bitmap): If an | |
2711 | illegal block or inode number is passed in, return instead | |
2712 | of trying to test, set, or clear the bit. | |
2713 | ||
2714 | Mon Nov 7 21:32:33 1994 Remy Card <card@bbj> | |
2715 | ||
2716 | * Makefile: Added a dummy install target in case shared libraries | |
2717 | are not built. | |
2718 | ||
2719 | Mon Oct 24 14:11:44 1994 (tytso@rsx-11) | |
2720 | ||
2721 | * bitmaps.c (ext2fs_allocate_block_bitmap): Fix calculation of how | |
2722 | the real last block of the bitmap should be calculated. | |
2723 | ||
2724 | Wed Sep 7 10:05:36 1994 (tytso@rsx-11) | |
2725 | ||
2726 | * bitmaps.c (ext2fs_fudge_inode_bitmap_end, | |
2727 | ext2fs_fudge_block_bitmap_end, ext2fs_clear_inode_bitmap, | |
2728 | ext2fs_clear_block_bitmap, ext2fs_free_inode_bitmap, | |
2729 | ext2fs_free_block_bitmap): Add magic number checking for | |
2730 | the inode and block bitmaps. | |
2731 | ||
2732 | * bitmaps.c (ext2fs_allocate_block_bitmap): Fix to set the correct | |
2733 | magic number for a block bitmap instead of an inode bitmap. | |
2734 | ||
2735 | * inode.c (ext2fs_close_inode_scan, ext2fs_get_next_inode): Add | |
2736 | magic number checking for the inode_scan structure. | |
2737 | ||
2738 | * badblocks.c (badblocks_list_free, badblocks_list_add, | |
2739 | badblocks_list_test, badblocks_list_iterate_begin, | |
2740 | badblocks_list_iterate, badblocks_list_iterate_end): Add | |
2741 | magic number checking for the badblocks_list and | |
2742 | badblocks_iterate structures. | |
2743 | ||
2744 | * ext2_err.et (EXT2_ET_MAGIC_UNIX_IO_CHANNEL): | |
2745 | * unix_io.c (unix_open, unix_close, unix_set_blksize, unix_read_blk, | |
2746 | unix_write_blk, unix_flush): Add magic number checking | |
2747 | both for io_channel structure and unix_private_data | |
2748 | structure. | |
2749 | ||
2750 | * openfs.c (ext2fs_open): Add check for io_manager structure's | |
2751 | magic number. | |
2752 | ||
2753 | * rw_bitmaps.c (ext2fs_write_inode_bitmap, ext2fs_write_block_bitmap, | |
2754 | ext2fs_read_inode_bitmap, ext2fs_read_block_bitmap, | |
2755 | ext2fs_read_bitmaps, ext2fs_write_bitmaps): | |
2756 | * read_bb.c (ext2fs_read_bb_inode): | |
2757 | * read_bb_file.c (ext2fs_read_bb_FILE): | |
2758 | * newdir.c (ext2fs_new_dir_block): | |
2759 | * namei.c (ext2fs_dir_iterate, ext2fs_lookup, ext2fs_namei): | |
2760 | * link.c (ext2fs_link, ext2fs_unlink): | |
2761 | * inode.c (ext2fs_open_inode_scan, ext2fs_read_inode, | |
2762 | ext2fs_write_inode, ext2fs_get_blocks, | |
2763 | ext2fs_check_directory): | |
2764 | * get_pathname.c (ext2fs_get_pathname): | |
2765 | * expanddir.c (ext2fs_expand_dir): | |
2766 | * block.c (ext2fs_block_iterate): | |
2767 | * bitmaps.c (ext2fs_allocate_inode_bitmap, | |
2768 | ext2fs_allocate_block_bitmap): | |
2769 | * bb_inode.c (ext2fs_update_bb_inode): | |
2770 | * alloc.c (ext2fs_new_inode,ext2fs_new_block,ext2fs_get_free_blocks): | |
2771 | * check_desc.c (ext2fs_check_desc): | |
2772 | * closefs.c (ext2fs_close, ext2fs_flush): | |
2773 | * freefs.c (ext2fs_free): Add check for ext2_filsys magic number. | |
2774 | ||
2775 | * Makefile: | |
2776 | * ext2fs.h: | |
2777 | * openfs.c: | |
2778 | * check_desc.c (ext2fs_check_desc): Move ext2fs_check_desc from | |
2779 | openfs.c into its own file. | |
2780 | ||
2781 | * ext2fs.h (EXT2_CHECK_MAGIC): Added macro for checking for | |
2782 | structure magic numbers. | |
2783 | ||
2784 | * closefs.c (ext2fs_flush): Folded in Remy Card's changes to clear | |
2785 | the EXT2_VALID_FS flag in the backup superblock blocks, so that if | |
2786 | someone uses the -b option to specify the use of the backup | |
2787 | superblock --- this usually means that the main superblock is | |
2788 | toast. :-) | |
2789 | ||
2790 | * ext2fs.h: | |
2791 | * ext2_err.et (EXT2_ET_REV_TOO_HIGH): | |
2792 | * openfs.c (ext2fs_open): Folded in Remy Card's changes to add a | |
2793 | revision level to the superblock. | |
2794 | ||
2795 | Sun Aug 21 00:50:08 1994 Theodore Y. Ts'o (tytso@rt-11) | |
2796 | ||
2797 | * ext2fs.h: | |
2798 | * bitmaps.c: | |
2799 | * bitops.c | |
2800 | * bitops.h: | |
2801 | * openfs.c: | |
2802 | * initialize.c: Completely revamped the inode and block bitmap | |
2803 | structures, so that they can be better chance of being extensible | |
2804 | in a shared library. They are now their own type, instead of | |
2805 | being a char *. Also, the function signatures of | |
2806 | ext2fs_test_block_bitmap, ext2fs_mark_block_bitmap, | |
2807 | ext2fs_unmark_block_bitmap, ext2fs_test_inode_bitmap, | |
2808 | ext2fs_mark_inode_bitmap, and ext2fs_unmark_inode_bitmap were | |
2809 | changed to eliminate the ext2_filsys argument, since it is no | |
2810 | longer necessary. | |
2811 | ||
2812 | Wed Aug 17 21:46:44 1994 Remy Card (card@bbj) | |
2813 | ||
2814 | * unix_io.c (unix_read_blk and unix_write_blk): use the llseek | |
2815 | system call if available. | |
2816 | ||
2817 | * llseek.c: new file. This is the stub calling the llseek system | |
2818 | call which allows supports for 2GB+ file systems. | |
2819 | ||
2820 | * initialize.c (ext2fs_initialize): Ext2fs_initialize now stores | |
2821 | the creator operating system. | |
2822 | ||
2823 | Wed Aug 17 10:03:24 1994 Theodore Y. Ts'o (tytso@rt-11) | |
2824 | ||
2825 | * initialize.c (ext2fs_initialize): Ext2fs_initialize now sets up | |
2826 | the group descriptor statistics in addition to everything else. | |
2827 | This relieves mke2fs of the responsibility of doing it. | |
2828 | ||
2829 | * bitops.c, bitops.h: Add assembly inline functions for the 68000. | |
2830 | Added a new #define, _EXT2_HAVE_ASM_BITOPS_ to control whether or | |
2831 | not the generic C function equivalents should be included or not. | |
2832 | ||
2833 | * openfs.c (ext2fs_open): If a superblock is specified, then use | |
2834 | the backup group descriptors that go along with this superblock, | |
2835 | instead of using the primary group descriptors. This allows | |
2836 | e2fsck to recover filesystems where the primary group descriptors | |
2837 | have been trashed. | |
2838 | ||
2839 |