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