Whamcloud - gitweb
Add an option to debugfs to open filesystems in exclusive mode
[tools/e2fsprogs.git] / debugfs / ChangeLog
1 2006-03-18  Theodore Ts'o  <tytso@mit.edu>
2
3         * debugfs.c (do_open_filesys), debugfs.8.in: Add the -e option to
4                 the open_filesystem command, which requests that the
5                 filesystem be opened in exclusive mode.
6
7 2006-03-08  Theodore Ts'o  <tytso@mit.edu>
8
9         * Fix bug in icheck which incorrectly reports the last valid inode
10                 number as the owner for an EA block.
11
12 2005-12-10  Theodore Ts'o  <tytso@mit.edu>
13
14         * debugfs.c, debugfs.h, logdump.c, ls.c: Clean up various gcc
15                 -Wall complaints.
16
17 2005-09-24  Theodore Ts'o  <tytso@mit.edu>
18
19         * set_fields.c (parse_time), util.c (string_to_time), debugfs.c
20                 (do_set_current_time): Generalize the time parsing code
21                 and move it to util.c:string_to_time().  Add new command,
22                 set_current_time, which sets the time used to set the
23                 filesystems's time fields.
24
25 2005-09-06  Theodore Ts'o  <tytso@mit.edu>
26
27         * set_fields.c: Fix set_inode_field so it can properly set the
28                 i_size field.  Thanks to James Nelson for pointing this
29                 out.
30
31 2005-07-04  Theodore Ts'o  <tytso@mit.edu>
32
33         * set_fields.c: Fix a bug which caused set_inode_field to silently
34                 fail when setting the following fields: frag, fsize,
35                 uid_high, gid_high, and author.
36
37 2006-06-30  Theodore Ts'o  <tytso@mit.edu>
38
39         * Release of E2fsprogs 1.38
40
41 2005-05-05  Theodore Ts'o  <tytso@mit.edu>
42
43         * debugfs.c (do_stat): Check to make sure a filesystem is open
44                 and abort if with an error if not, to prevent a seg fault
45                 in that case.
46
47 2005-03-21  Theodore Ts'o  <tytso@mit.edu>
48
49         * Release of E2fsprogs 1.37
50
51 2005-03-21  Theodore Ts'o  <tytso@mit.edu>
52
53         * debugfs.c (internal_dump_inode_extra): Print the size of
54                 the inode's extra fields.
55
56 2005-03-20  Theodore Ts'o  <tytso@mit.edu>
57
58         * util.c (debugfs_write_new_inode): New function
59
60         * debgufs.c (do_write, do_mknod): Call ext2fs_write_new_inode()
61                 instead of ext2fs_write_inode().
62
63         * debugfs.c (do_stat): Add support for dumping extended attributes
64                 which are stored in the inode body.
65
66         * util.c (debugfs_read_inode_full): new function
67
68 2006-02-05  Theodore Ts'o  <tytso@mit.edu>
69
70         * Release of E2fsprogs 1.36
71
72 2005-02-03  Theodore Ts'o  <tytso@mit.edu>
73
74         * set_fields.c: Define _XOPEN_SOURCE to be 500 to fix compilation
75                 problems on Solaris.
76
77 2005-01-20  Theodore Ts'o  <tytso@mit.edu>
78
79         * set_fields.c: Add support for the jnl_blocks[] for set_super_value
80
81 2005-01-19  Matthias Andree <matthias.andree@gmx.de>
82
83         * set_fields.c: Add _XOPEN_SOURCE #define on all but Solaris
84                 systems so that strptime() gets defined.
85                 (parse_bmap): Add missing return statement.
86
87 2005-01-07  Theodore Ts'o  <tytso@mit.edu>
88
89         * debug_cmds.ct: Make the official name of set_inode be
90                 set_inode_field, since it is more intuitive.
91
92         * set_fields.c (print_possible_fields): Document bmap[] in
93                 "set_inode_field -l" listing.  Change name of set_inode to
94                 set_inode_field in usage message.
95
96 2004-12-23  Theodore Ts'o  <tytso@mit.edu>
97
98         * set_fields.c: Add support for array indexes, which we use for
99                 the i_block[] array.  Also add the pseudo inode field
100                 bmap, which can be used for setting logical->physical
101                 mappings directly.
102
103 2004-12-21  Theodore Ts'o  <tytso@mit.edu>
104
105         * setfields.c: Renamed from setsuper.c
106                 Added support to set date/time fields.
107                 Added support for setting superblock values wtime, mtime,
108                         lastcheck, and mkfs_time as date/time fields.
109                 Added support for the set_inode command.
110         * debugfs.h, debug_cmds.ct, debugfs.8.in: Added set_inode command
111
112 2004-12-16  Theodore Ts'o  <tytso@mit.edu>
113
114         * setsuper.c: Add definitions for newer superblock fields:
115                 reserved_gdt_blocks, jnl_backup_type, default_mount_opts,
116                 first_meta_bg, and mkfs_time.
117
118 2004-12-14  Theodore Ts'o  <tytso@mit.edu>
119
120         * Makefile.in: Move strip command to install-strip target.
121                 Use Linux-kernel-style makefile output for "make install"
122
123         * Makefile.in (installdirs): Use $(MKINSTALLDIRS) macro
124
125 2004-11-30  Theodore Ts'o  <tytso@mit.edu>
126
127         * util.c (time_to_string): If the TZ environment variable is set
128                 to GMT, use gmtime() instead of localtime() or ctime() to
129                 force the use of GMT.  This is because the dietlibc
130                 doesn't honor the TZ environment variable.
131
132         * Makefile.in: Use Linux-kernel-style makefile output to make it
133                 easier to see errors/warnings.
134
135 2004-11-29  Theodore Ts'o  <tytso@mit.edu>
136
137         * debugfs.c (do_open_filesys): Fix obvious uninitialized variable
138                 buglet.
139
140 2004-11-19  Theodore Ts'o  <tytso@mit.edu>
141
142         * debugfs.c (kill_file_by_inode): Only iterate over the inode to
143                 release blocks if the inode has them; otherwise attempting
144                 to rm devices and fast symlinks will lead to errors.
145                 (Addresses Sourceforge Bug #954741 and #957244)
146
147 2004-07-28  Theodore Ts'o  <tytso@mit.edu>
148
149         * debugfs.c, debugfs.8.in: Add new option -d which allows the
150                 system administrator to specify data source of a
151                 filesystem being opened via an e2image file.
152
153 2004-04-11  Theodore Ts'o  <tytso@mit.edu>
154
155         * util.c (open_pager): Use DEBUGFS_PAGER in preference to PAGER
156                 (Addresses Debian Bug #239547)
157
158 2004-04-03  Theodore Ts'o  <tytso@mit.edu>
159
160         * Makefile.in: Update the modtime even if subst doesn't need to
161                 update the debugfs man page, to avoid always re-running
162                 subst, especially since there are no dependencies on the
163                 man page.
164
165 2004-03-20  Theodore Ts'o  <tytso@mit.edu>
166
167         * debugfs.c (make_link): Set the filetype information when
168                 creating a link.
169
170 2004-02-28  Theodore Ts'o  <tytso@mit.edu>
171
172         * Release of E2fsprogs 1.35
173
174 2004-02-23  Theodore Ts'o  <tytso@mit.edu>
175
176         * debugfs.c (internal_dump_inode): Display the major/minor device
177                 numbers for block/character devices.
178                 (do_mknod): Add support for new-style device numbers (where
179                 the major or minor number is greater than 255 and less
180                 than 65535).  (Addresses Sourceforge bug #865289)
181
182 2004-02-21  Theodore Ts'o  <tytso@mit.edu>
183
184         * debugfs.8.in: Fix the debugfs man page to reference the
185                 init_filesys command, instead of "initialize".  (Addresses
186                 Debian Bug #232406)
187
188 2004-02-14  Theodore Ts'o  <tytso@mit.edu>
189
190         * debugfs.c (internal_dump_inode): Correctly deal with symlinks
191                 that have extended attribute information.  (Addresses
192                 Debian Bug #232328)
193
194 2004-01-24  Theodore Ts'o  <tytso@mit.edu>
195
196         * debugfs.8.in: Document the PAGER and DEBUGFS_PAGER environment
197                 variables.
198
199         * util.c (open_pager): Use the "more" pager in preference to
200                 "less", since "less" doesn't work terribly well for
201                 debugfs's purpose.
202
203 2003-12-25  Theodore Ts'o  <tytso@mit.edu>
204
205         * util.c (open_pager): Try to use the DEBUGFS_PAGER environment
206                 variable first, and then fall back to the PAGER
207                 environment variable.  Finally, search for an appropriate
208                 pager executable.
209
210 2003-12-11  Theodore Ts'o  <tytso@thunk.org>
211
212         * debugfs.c (do_write, do_mkdir): If the directory is full,
213                 automatically call ext2fs_expand_dir() and then retry to
214                 add the link to the directory as a convenience to the
215                 user.  (Addresses Debian Bug: #217892)
216                 (do_mknod): Clean up expand_dir error handling.
217
218 2003-12-07  Theodore Ts'o  <tytso@mit.edu>
219
220         * debugfs.c (do_write): Mask off the file type bits, and OR in the
221                 regular file information.  (Addresses Debian Bug: #217456)
222
223         * util.c (open_pager): Search for the pager to use, starting with
224                 'pager', and then falling back to 'less' and then 'more'.
225                 (Addresses Debian Bug: #221977)
226
227         * debugfs.c, debugfs.h, dump.c, htree.c, icheck.c, logdump.c,
228                 ls.c, lsdel.c, ncheck.c, setsuper.c, unused.c: Fix gcc
229                 -Wall nitpicks.
230
231 2003-08-24  Theodore Ts'o  <tytso@mit.edu>
232
233         * debugfs.8.in: Adjust description line so that apropos
234                 "ext2" or "ext3" will find the man page.  (Addresses
235                 Debian Bug #206845)
236
237 2003-08-21  Theodore Ts'o  <tytso@mit.edu>
238
239         * debugfs.8.in: Fully document the logdump command in the debugfs
240                 man page.
241
242         * logdump.c (do_logdump): Add -s option which will use the journal
243                 inode information in the superblock.
244
245 2003-07-25  Theodore Ts'o  <tytso@mit.edu>
246
247         * Release of E2fsprogs 1.34
248
249 2003-07-06  Theodore Ts'o  <tytso@mit.edu>
250
251         * debugfs.c (do_imap): Fix gcc -Wall nitpicks (printf format types).
252
253 2003-05-21  Theodore Ts'o  <tytso@mit.edu>
254
255         * unused.c (do_dump_unused): Add new command which dumps the
256                 unused blocks.  (Initial implementation; currently only
257                 dumps the output to stdout.)
258
259 2003-05-13  root  <tytso@mit.edu>
260
261         * util.c (reset_getopt), debugfs.c (do_open_filesys,
262         do_show_super_stats), ls.c (do_list_dir), dump.c (do_dump),
263         htree.c (do_htree_dump, do_dx_hash), logdump.c (do_logdump):
264         Define and use a new function, reset_getopt(), which does whatever
265         is necessary to reset getopt() again.  This is different for
266         different implementations, so the portabilty issues are a bit of a
267         nightmare.  (Addresses Debian bug #192834)
268         
269 2003-05-05  Theodore Ts'o  <tytso@mit.edu>
270
271         * debugfs.c (do_imap), debugfs.h, debug_cmds.ct, debugfs.8.in:
272                 Added new command, imap, which prints the location of a
273                 specified inode in the inode table.
274
275 2003-04-21  Theodore Ts'o  <tytso@mit.edu>
276
277         * Release of E2fsprogs 1.33
278
279 2003-03-16  Theodore Ts'o  <tytso@mit.edu>
280
281         * Makefile.in (DLOPEN_LIB): Link in the libdl library if it is
282                 present on the system.
283
284         * debugfs.c (main): Call ss_get_readline() to attempt to pull in
285                 the readline library.
286
287 2003-03-06  Theodore Tso  <tytso@mit.edu>
288
289         * debugfs.c (do_open_filesys, do_show_super_stats), 
290         ls.c (do_list_dir), dump.c (do_dump), htree.c (do_htree_dump, 
291         do_dx_hash), logdump.c (do_logdump): Reset optind to 1 for better
292         compatibility with non-glibc implementations of getopt.
293
294 2003-03-01  Theodore Ts'o  <tytso@mit.edu>
295
296         * Makefile.in, logdump.c (do_logdump): Use the blkid functions to
297                 find the external journal device.
298
299 2003-01-21  Theodore Ts'o  <tytso@mit.edu>
300
301         * dump.c (do_dump): Open the output file with O_LARGEFILE so we
302                 can write files larger than 2GB.
303
304 2002-11-09  Theodore Ts'o  <tytso@mit.edu>
305
306         * Release of E2fsprogs 1.32
307
308 2002-11-08  Theodore Ts'o  <tytso@mit.edu>
309
310         * Release of E2fsprogs 1.31
311
312 2002-10-31  Theodore Ts'o  <tytso@mit.edu>
313
314         * Release of E2fsprogs 1.30
315
316 2002-10-31  Theodore Ts'o  <tytso@mit.edu>
317
318         * debugfs.c (do_write): Check to see if the filename exists before
319                 creating it, and give an error if so.  Addresses
320                 Sourceforge bug #478195.
321
322 2002-10-30  Theodore Ts'o  <tytso@mit.edu>
323
324         * Makefile.in (install): Search all compression extensions when
325                 deleting old man pages.
326
327 2002-10-13  Theodore Ts'o  <tytso@mit.edu>
328
329         * debugfs.h, htree.c, setsuper.c: Fix gcc -Wall nits.
330
331 2002-10-02  Theodore Y. Ts'o  <tytso@mit.edu>
332
333         * htree.c (htree_dump_leaf_node): Use ext2fs_read_dir_block2 so
334                 that the directory entries are appropriately byte-swapped.
335
336 2001-09-24  Theodore Tso  <tytso@mit.edu>
337
338         * Release of E2fsprogs 1.29
339
340 2002-09-22  root  <tytso@mit.edu>
341
342         * htree.c (htree_dump_int_node): Flag continuation hashes to make
343                 them easier to find.
344
345 2001-08-31  Theodore Tso  <tytso@thunk.org>
346
347         * Release of E2fsprogs 1.28
348
349 2002-08-23  Theodore Ts'o  <tytso@mit.edu>
350
351         * setsuper.c: Add support for the fields s_uuid, s_journal_uuid,
352                 s_hash_seed, s_def_hash_version.  Add routines for parsing
353                 UUID's and hash algorithm identifiers.
354
355 2002-08-16  Theodore Ts'o  <tytso@mit.edu>
356
357         * icheck.c (do_icheck): Check to see if the block is listed as
358                 part of the extended attribute block.
359
360 2002-07-21  Theodore Ts'o  <tytso@mit.edu>
361
362         * htree.c (do_htree_dump): Fix a bug where we were not cleanly
363                 closing the pager after errors, which would leave the
364                 tty in noecho mode.
365
366 2002-07-18  Theodore Ts'o  <tytso@mit.edu>
367
368         * htree.c (htree_dump_int_node): Add byte swapping code sot that
369                 the htree dump function works on a big-endian machine.
370
371 2002-07-15  Theodore Ts'o  <tytso@mit.edu>
372
373         * debugfs.c (do_show_super_stats): Calculate and print the number
374                 of directories on a filesystem --- because we can and
375                 because it can be useful.
376
377 2002-07-09  Theodore Ts'o  <tytso@mit.edu>
378
379         * debugfs.c (do_rmdir), debugfs.8.in: Implement the rmdir command.
380                 Addresses Debian bug #138003.
381
382 2002-06-26  Theodore Ts'o  <tytso@mit.edu>
383
384         * htree.c (do_dx_hash): Use new ext2fs_dirhash function signature.
385                 Add getopt support so user can specify the hash version.
386
387 2002-05-11    <tytso@snap.thunk.org>
388
389         * debug_cmds.ct, debugfs.c (do_bmap): Add new command "bmap" which
390                 calculates the logical->physical block mapping for an
391                 inode.
392
393         * debugfs.c (do_init_filsys, main), util.c
394                 (common_block_args_process): Fix bad calling parameter
395                 order when calling parse_ulong.  This broke the -b  and -s
396                 options to debugfs, as well as do_init, and the testb,
397                 setb, clearb functions.
398
399 2002-04-01    <tytso@snap.thunk.org>
400
401         * util.c (parse_ulong): Fix typo which cases parse_ulong to
402                 coredump if the err variable is filled in (for example, if
403                 the -b or -s options are passed to the debugfs's
404                 command-line invocation).
405
406 2002-03-11  Theodore Tso  <tytso@mit.edu>
407
408         * ls.c (list_dir_proc): Fix bug: ls -l fails to print the file
409                 type correctly if running on big-endian systems.
410
411         * htree.c (htree_dump_leaf_node): Use the ext2_dirhash function
412                 instead of a local static function.
413
414 2002-03-08  Theodore Tso  <tytso@mit.edu>
415
416         * Release of E2fsprogs 1.27
417
418 2002-03-07    <tytso@snap.thunk.org>
419
420         * ls.c (list_dir_proc): Fix typo in debugfs which was causing a
421                 compiler warning.
422
423 2002-03-05  Theodore Tso  <tytso@mit.edu>
424
425         * lsdel.c (do_lsdel): lsdel uses the pager to print out the list
426                 of potentially deleted inode.  Thanks to Jaroslav Drzik
427                 <jdrzik@host.sk> for suggesting this enhancement.
428
429         * debugfs.c (do_modify_inode): Fix bug which caused modify_inode
430                 to core dump if a fliesystem isn't open.  Thanks to 
431                 Jaroslav Drzik <jdrzik@host.sk> for finding and reporting
432                 the bug and his proposed fix.
433
434 2002-02-26  Theodore Tso  <tytso@mit.edu>
435
436         * ls.c (list_dir_proc): When listing the directory entry in long 
437                 format, include the file type of the directory entry in 
438                 parenthesis.
439
440 2002-02-25  Theodore Tso  <tytso@mit.edu>
441
442         * util.c (open_pager): If the PAGER environment is set to __none__
443                 then don't use a pager at all, and ship it all to stdout.
444
445         * Makefile.in, debug_cmds.ct, htree.c: Add new file htree.c, which
446                 implements the three new commands, htree_dump, dx_hash,
447                 and dirsearch.
448
449 2002-02-24  Theodore Tso  <tytso@mit.edu>
450
451         * Makefile.in (install): Remove any compressed man pages before
452                 installing the man pages.
453
454 2002-02-03  Theodore Tso  <tytso@thunk.org>
455
456         * Release of E2fsprogs 1.26
457
458 2002-01-03  Theodore Tso  <tytso@mit.edu>
459
460         * lsdel.c (do_lsdel): New optional argument which allows the user
461                 to only see the most recently deleted files.
462
463         * debugfs.c (do_undel, do_testb, do_freeb, do_setb, do_ffb): Add
464                 new command, undelete, which automates undeleting a
465                 deleted inode and linking it back to a directory.  Add a
466                 count argument to the testb, freeb, setb, and ffb commands.
467
468         * ls.c (list_dir_proc, do_list_dir): Add support for -d option
469                 which lists deleted directory entries.
470
471         * debug_cmds.ct: Add new command, undelete.
472
473         * dump.c, icheck.c, logdump.c, ls.c, lsdel.c, setsuper.c,
474                 debugfs.c: Use new utility functions which factor out
475                 commonly used code.
476
477         * util.c (debugfs_read_inode, debugfs_write_inode,
478                 common_block_args_process, common_inode_args_process,
479                 common_args_process, strtoblk, parse_ulong): New
480                 functions which factor out commonly used code into
481                 subroutines for ease of maintenance and to make the
482                 executable size smaller.
483
484 2001-12-23  Theodore Tso  <tytso@mit.edu>
485
486         * Makefile.in, jfs_user.h: Move linux/jbd.h to
487                 ext2fs/kernel-jbd.h, to avoid using the system header
488                 file version of hbd.h when using diet glibc (since it
489                 forcibly adds /usr/include to the beginning of the
490                 include search path.)
491
492 2001-12-22  Theodore Tso  <tytso@mit.edu>
493
494         * debugfs.c (kill_file_by_inode, release_blocks_proc): Update the
495                 group descriptor free block and inode counts when deleting
496                 or killing a file.
497
498 2001-12-16  Theodore Tso  <tytso@mit.edu>
499
500         * setsuper.c (print_possible_fields), 
501                 logdump.c (dump_journal): Fix gcc -Wall nits
502
503         * Makefile.in, jfs_user.h: linux/jfs.h has been renamed to
504                 linux/jbd.h
505
506 2001-12-02  Theodore Tso  <tytso@mit.edu>
507
508         * util.c (close_pager): Use pclose() instead of fclose() when
509                 closing the pager stream.
510
511 2001-11-30  Theodore Tso  <tytso@mit.edu>
512
513         * debugfs.c (finish_range, dump_blocks): Fixed bug in Andreas's >
514                 2GB support changes: you need to use %lld when printf'ing
515                 an long long variable.
516
517 2001-11-24  Theodore Tso  <tytso@mit.edu>
518
519         * debugfs.8.in: Update manual page to document the set_super_value
520                 and logdump commands, and move the "specifying files"
521                 section closer to the beginning of the man page so people
522                 won't miss it.
523
524         * setsuper.c (print_possible_fields): "set_super_value -l" now
525                 prints out the list of valid superblock fields which the
526                 ssv command can set.
527
528 2001-09-20  Theodore Tso  <tytso@thunk.org>
529
530         * Release of E2fsprogs 1.25
531
532 2001-09-02  Theodore Tso  <tytso@thunk.org>
533
534         * Release of E2fsprogs 1.24a
535
536 2001-08-30  Theodore Tso  <tytso@thunk.org>
537
538         * Release of E2fsprogs 1.24
539
540 2001-08-27  Theodore Tso  <tytso@valinux.com>
541
542         * debugfs.c (main): Remove EXT2FS_VERSION from the version
543                 display, since it only confuses people.
544
545 2001-08-15  Theodore Tso  <tytso@valinux.com>
546
547         * Release of E2fsprogs 1.23
548
549 2001-08-12  Theodore Tso  <tytso@valinux.com>
550
551         * logdump.c (do_logdump, dump_journal): Add support for dumping
552                 external journals.
553
554 2001-06-23  Theodore Tso  <tytso@valinux.com>
555
556         * Release of E2fsprogs 1.22
557
558 2001-06-15  Theodore Tso  <tytso@valinux.com>
559
560         * Release of E2fsprogs 1.21
561
562 2001-06-13  Theodore Tso  <tytso@valinux.com>
563
564         * setsuper.c: Add s_lastcheck field to the fields which can be
565                 modified using set_super_value.  (Suggested by Andreas
566                 Dilger)
567
568 2001-06-03  Theodore Tso  <tytso@valinux.com>
569
570         * debugfs.c (copy_file): Fixed signed vs unsigned bug which causes
571                 read errors to not be noticed.
572
573 2001-06-01  Theodore Tso  <tytso@valinux.com>
574
575         * Makefile.in: Move include/asm/types.h.in to 
576                 lib/ext2fs/ext2_types.h.in.
577
578         * debugfs.c, debugfs.h, logdump.c: Fix various gcc -Wall nitpicks.
579
580         * logdump.c (read_journal_block): Replace pread with lseek/read
581                 combination.
582
583 2001-05-25  Theodore Tso  <tytso@valinux.com>
584
585         * Release of E2fsprogs 1.20
586
587 2001-05-14  Theodore Tso  <tytso@valinux.com>
588
589         * debugfs.h: Change location of ext2_fs.h to be ext2fs/ext2_fs.h
590
591 2001-05-12  Theodore Tso  <tytso@valinux.com>
592
593         * debugfs.c (print_features): Use fputs instead of printf to
594                 output using the passed-in FILE *.
595
596 2001-05-09  Theodore Tso  <tytso@valinux.com>
597
598         * debugfs.c (do_write, do_mknod): Set the file type information
599                 when creating the inode.
600
601 2001-05-03  Theodore Tso  <tytso@valinux.com>
602
603         * debugfs.c (do_open_filesys, main): Add -i option which will
604                 allow debugfs to examine ext2 image files.
605
606 2001-03-29  Theodore Tso  <tytso@valinux.com>
607
608         * debugfs.c (dump_blocks, dump_inode, internal_dump_inode): Add
609                 internal_dump_inode() interface for the logdump command.
610
611         * logdump.c: Imported code from Stephen Tweedie to dump the ext3
612                 journal.
613
614 2001-03-18  Theodore Tso  <tytso@valinux.com>
615
616         * debugfs.c (do_write, do_mknod): Remove extra (useless) call to
617                 ext2fs_write_inode.
618
619 2001-01-12  Theodore Ts'o  <tytso@valinux.com>
620
621         * setsuper.c: Cleaned up some random whitespace problems.
622
623         * debugfs.h,  debugfs.c  (do_show_super_stats): Use  full words
624                 instead of pluralism hack  to make I18N conversion easier.
625                 Clean up gcc -Wall complaints.
626
627 2001-01-11    <tytso@snap.thunk.org>
628
629         * debugfs.c, debugfs.h, dump.c, icheck.c, ls.c, lsdel.c, ncheck.c,
630                 setsuper.c, util.c: Change ino_t to ext2_ino_t.  Fix a few
631                 minor gcc-wall complaints while we're at it.
632
633 2001-01-01    <tytso@snap.thunk.org>
634
635         * debugfs.c Replace use of struct ext2fs_sb with struct
636                 ext2_super_block.
637
638 2000-12-30    <tytso@snap.thunk.org>
639
640         * dump.c (fix_perms): Fix bug for systems which don't have fchown;
641                 was incorrectly using chmod instead of chown.
642
643         * setsuper.c (find_field): Strip the s_prefix if given for ssv
644                 fields.  Remove hard-coded s_ from inode_size
645                 field.  (Suggested by Andreas Dilger)
646
647         * debugfs.c (do_modify_inode): Add the ability to set the inode
648                 generation number.  (Suggested by Andreas Dilger)
649
650 2000-08-23    <tytso@valinux.com>
651
652         * util.c (string_to_inode): Use strtoul instead of atoi, so that
653                 hex inode numbers will be accepted.
654
655 2000-08-19    <tytso@valinux.com>
656
657         * util.c (open_pager): Set SIGPIPE to be ignored, so that quitting
658                 out of the pager doesn't blow away debugfs.
659
660 2000-08-14    <tytso@valinux.com>
661
662         * debugfs.c (do_show_super_stats): Use list_super2() instead of
663                 using explicit printf statements.  (We get a more complete
664                 printout this way.)
665
666         * util.c (open_pager): If the PAGER environment variable is not
667                 set, default to using "more".
668
669         * setsuper.c: New function which implements the set_super_value
670                 command.  Allows the user to set arbitrary superblock
671                 fields.
672
673         * debugfs.c (dump_inode): Cap the length when printing a fast
674                 symbolic link to inode.i_size.
675                 (list_blocks_proc): Print block ranges (4510-4533) to make
676                 the stat output easier to read.
677
678 2000-06-27  Andreas Dilger <adilger@turbolabs.com>
679
680         * debugfs.c (list_blocks_proc): show relative inode block numbers
681                 and/or indirect block status
682
683 2000-07-13    <tytso@valinux.com>
684
685         * Release of E2fsprogs 1.19
686
687 2000-07-05  Theodore Ts'o  <tytso@valinux.com>
688
689         * debugfs.c (dump_inode): Make the generation field be printed as
690                 an unsigned integer.
691
692 2000-07-04    <tytso@snap.thunk.org>
693
694         * Makefile.in: Use _SS_DIR_OVERRIDE to make sure we get the
695                 mk_cmds support files from the source tree.
696
697 2000-06-09    <tytso@snap.thunk.org>
698
699         * lsdel.c (do_lsdel): Handle bad bad blocks in inode table.
700
701 2000-05-27  Theodore Ts'o  <tytso@valinux.com>
702
703         * debugfs.c (do_testb, do_testi): Call check_fs_bitmaps to avoid
704                 coredumping if the bitmaps aren't loaded.
705
706         * util.c (check_fs_bitmaps): New function which checks whether or
707                 not the bitmaps are loaded.
708
709 2000-05-23  Aaron Crane  <aaronc@pobox.com>
710
711         * debugfs.8.in: Documented new behaviour.
712
713         * ls.c (ls_l_file): Fix Y2K bug -- was printing 22-May-100 for
714                 recent files.  Switched to 4-digit years.
715
716         * dump.c, debug_cmds.ct (do_rdump): Add new debugfs command
717                 "rdump", which recursively dumps a directory and its
718                 contents.
719                 (fix_perms): New function.  Break permission-fixing
720                 code out of dump_file() so it can be called by rdump
721                 code as well.
722                 (dump_file): Call fix_perms().
723
724         * debugfs.c, debug_cmds.ct (do_lcd): Add new debugfs command
725                 "lcd", which changes the cwd on the native filesystem.
726
727         * debugfs.c (open_filesystem): Extra args for superblock,
728                 blocksize, and catastrophic mode.  Changed callers.
729                 (do_open_filesys, main): Accept new -b, -s, -c options
730                 for open_filesystem.
731
732 2000-02-02  Theodore Ts'o  <tytso@valinux.com>
733
734         * debugfs.c (dump_inode): Remove #ifdef for i_version
735                 vs. i_generation since we know it will always be
736                 i_generation now.
737
738 2000-01-18  Theodore Ts'o  <tytso@valinux.com>
739
740         * debugfs.c (main): Use return instead of exit at the end of main
741                 to avoid some compiler warnings.
742
743         * Makefile.in: Since LIBUUID can sometimes include
744                 "-lsocket" we need a separate DEPLIBUUID that can be used
745                 in Makefile's dependency rules.
746
747 1999-11-19    <tytso@valinux.com>
748
749         * Makefile.in (distclean): Remove TAGS and Makefile.in.old from
750                 the source directory.
751
752 1999-11-10    <tytso@valinux.com>
753
754         * Release of E2fsprogs 1.18
755
756 1999-11-08    <tytso@valinux.com>
757
758         * icheck.c (do_icheck): 
759         * ncheck.c (do_ncheck): If ext2fs_open_inode_scan() returns 
760                 EXT2_ET_BAD_BLOCK_IN_INODE_TABLE loop to skip over the bad
761                 blocks in the inode table.
762
763 1999-10-26    <tytso@valinux.com>
764
765         * Release of E2fsprogs 1.17
766
767 1999-10-26    <tytso@valinux.com>
768
769         * debugfs.h: Add declaration for do_features()
770
771         * debugfs.c: Add #incldue of e2p.h to fix gcc warnings.
772
773 1999-10-25    <tytso@valinux.com>
774
775         * debugfs.c (do_dirty_filesys): Make the "dirty" command clear the
776                 valid bit on the superblock.  (And with a -clean option to
777                 set the valid bit.)  Originally it was used just to set
778                 the "needs to be written" bit in the in-core version of
779                 the fs structure.
780
781 1999-10-22    <tytso@valinux.com>
782
783         * Release of E2fsprogs 1.16
784
785 1999-09-07    <tytso@rsts-11.mit.edu>
786
787         * debugfs.c, debug_cmds.ct: Add new debugfs command "feature"
788                 which allows the user to set or clear filesystme features.
789                 Add the -f (force) option to the open command.  Add the 
790                 -h (superblock header only) option to the stats command.
791
792 1999-07-30    <tytso@rsts-11.mit.edu>
793
794         * debugfs.c (dump_inode): Fix debugfs message so it is the same
795                 for when compiled under either Linux 2.2 or 2.3.  This
796                 allows for the f_swapfs regression test suite to work
797                 regardless of which OS e2fsprogs was compiled on.
798
799 1999-07-18  Theodore Ts'o  <tytso@rsts-11.mit.edu>
800
801         * Release of E2fsprogs 1.15
802
803 1999-06-23    <tytso@valinux.com>
804
805         * debugfs.c (dump_inode): Add compatibility for Linux 2.3 kernels
806                 that use i_generation instead of i_version.  Patch
807                 supplied by Jon Bright <sircus@sircus.demon.co.uk>.
808
809 1999-02-09  Theodore Ts'o  <tytso@rsts-11.mit.edu>
810
811         * icheck.c (do_icheck): Check to make sure the inode has valid
812                 blocks before iterating over that inode's blocks.
813
814 1999-01-09  Theodore Ts'o  <tytso@rsts-11.mit.edu>
815
816         * Release of E2fsprogs 1.14
817
818 1998-12-15  Theodore Ts'o  <tytso@rsts-11.mit.edu>
819
820         * Release of E2fsprogs 1.13
821
822 1998-12-03  Theodore Ts'o  <tytso@rsts-11.mit.edu>
823
824         * Makefile.in: Updated dependencies.
825
826 1998-07-31  Theodore Ts'o  <tytso@rsts-11.mit.edu>
827
828         * debugfs.c (do_stat, do_clri): Fix bug where debugfs wasn't
829                 displaying the error message if ext2fs_read_inode() failed.
830                 (do_rm): Fix similar problem for call to ext2fs_namei().
831         
832 1998-07-09  Theodore Ts'o  <tytso@rsts-11.mit.edu>
833
834         * Release of E2fsprogs 1.12
835
836 1998-06-27  Theodore Ts'o  <tytso@rsts-11.mit.edu>
837
838         * debugfs.c: Add a -V option which displays the current version.
839
840 1998-03-31  Theodore Ts'o  <tytso@rsts-11.mit.edu>
841
842         * Makefile.in: Change to use new installation directory variables
843                 convention.  Fix installdirs and uninstall rules to reflect
844                 the fact that debugfs has been installed in the root
845                 filesystem.  Fix uninstall rules to take $(DESTDIR) into
846                 account.
847
848 1998-03-29  Theodore Ts'o  <tytso@rsts-11.mit.edu>
849
850         * debugfs.h: Add declaration for do_dirty_filsys() to prevent
851                 -Wall warnings.
852
853         * debugfs.c (copy_file): 
854         * dump.c (dump_file): Fix -Wall warning caused by
855                 signed/unsigned mismatch. 
856
857 1998-03-23  Theodore Ts'o  <tytso@rsts-11.mit.edu>
858
859         * debugfs.c, ls.c, lsdel.c: Add support for large files.  (The
860                 high 32 bits share space with the i_dir_acl field.)
861
862 Sun Mar  8 22:53:04 1998  Theodore Ts'o  <tytso@rsts-11.mit.edu>
863
864         * ls.c (list_dir_proc): Mask off high 8 bits from
865                 dirent->name_len.
866
867 Mon Dec  1 13:21:09 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
868
869         * Makefile.in: Install debugfs in /sbin, instead of /usr/sbin.
870
871 Sat Oct 25 18:35:30 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
872
873         * debugfs.c (copy_file), dump.c (dump_file): Change to use the new
874                 fileio primitives in libext2.
875
876 Fri Oct 24 23:47:43 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
877
878         * debugfs.c (main, do_open_filesys): 
879         * dump.c (do_dump): Make the variable which getopt returns into be
880                 an int, so that it won't lose on platforms where char is
881                 unsigned. 
882
883 Tue Oct 14 21:50:24 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
884
885         * debugfs.c (main): When printing a usage message, have main
886                 return 1 (instead of not specifying a return value, bad!)
887
888 Mon Sep 15 22:03:36 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
889
890         * debugfs.c (main): Fix declaration of main so that it returns an int.
891
892 Tue Jun 17 01:33:20 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
893
894         * Release of E2fsprogs 1.11
895
896 Thu May  8 23:05:40 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
897
898         * debugfs.8.in: Fix minor typos and grammer oops found by Bill
899                 Hawes (whawes@star.net).
900
901 Thu Apr 24 12:16:42 1997  Theodre Ts'o  <tytso@localhost.mit.edu>
902
903         * Release of E2fsprogs version 1.10
904
905 Thu Apr 17 12:23:38 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
906
907         * Release of E2fsprogs version 1.09
908
909 Fri Apr 11 18:56:26 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
910
911         * Release of E2fsprogs version 1.08
912
913 Thu Apr 10 14:36:05 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
914
915         * ls.c: New file which implements the ls command.  Added the -l
916                 option. 
917
918 Wed Mar 12 13:32:05 1997  Theodore Y. Ts'o  <tytso@mit.edu>
919
920         * Release of E2fsprogs version 1.07
921
922 Wed Jan  1 23:53:26 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>
923
924         * lsdel.c (do_lsdel): Use time_to_string() instead of ctime().
925
926 Tue Oct  8 02:02:03 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
927
928         * Release of E2fsprogs version 1.06
929
930 Thu Sep 12 15:23:07 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
931
932         * Release of E2fsprogs version 1.05
933
934 Mon Sep  9 23:05:11 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
935
936         * debugfs.c (unlink_file_by_name): If unlinking a file with a
937                 directory path, correctly replace the slash with a NULL.
938                 (do_show_debugfs_params): Don't try to print the open mode
939                 if there's no filesystem opened (since that will cause a
940                 core dump).
941                 (main): Fix usage string; the -w and device elements are
942                 independently optional.
943
944 Tu Sep  3 15:09:39 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
945
946         * debugfs.c (main): Added -f option to debugfs, which takes a
947                 command file of debugfs commands and executes them.
948
949 Sat Aug 31 01:18:43 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
950
951         * debugfs.8.in: Heavily edited and improved manual page.
952
953         * dump.c (dump_file): Improve the write function for writing out
954                 the file, so that it is limited to the actual size of the
955                 file, instead of outputing the nulls following the EOF.
956                 Make sure dump_file does the right thing for files with holes.
957                 (do_dump): Add support for the -p option to the dump
958                 command, which attempts to preserve the owner and
959                 permissions field.
960
961 Fri Aug 30 14:56:59 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
962
963         * debugfs.c (main): Add -R option to debugfs, which allows it to
964                 take a single debugfs command on the command line.
965
966 Fri Aug  9 09:03:31 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
967
968         * debugfs.c (do_open_filesys): Set optind to 0 to reset getopt(),
969                 to be complete correct.
970                 (do_show_super_stats): Print OS type, volume label, last
971                 mounted directory, and UUID.
972                 (dump_inode): Print the fragment information in a
973                 filesystem independent way.
974                 (do_modify_inode): Modify the fragement information in a
975                 filesystem independent way.
976
977 Thu May 16 11:12:30 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
978
979         * Release of E2fsprogs version 1.04
980
981 Wed May 3 20:41:26 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>
982
983         * debugfs.c (dump_inode): Correctly print the translator on the hurd.
984                (do_modify_inode): Modify the translator block on the hurd.
985
986 Wed Mar 27 00:33:40 1996    <tytso@rsts-11.mit.edu>
987
988         * Release of E2fsprogs version 1.03
989
990 Wed Jan 31 11:06:08 1996    <tytso@rsts-11.mit.edu>
991
992         * Release of E2fsprogs version 1.02
993
994 Fri Dec  1 22:42:31 1995    <tytso@rsts-11.mit.edu>
995
996         * Makefile.in (LIBS): Rearrange the order of the libraries to be
997                 linked, so that -lext2fs is before -lcom_err.
998
999 Thu Oct 26 12:05:06 1995    <tytso@rsts-11.mit.edu>
1000
1001         * Makefile.in (install): Strip programs when they are installed.
1002
1003 Fri Aug 18 15:09:08 1995  Theodore Y. Ts'o  <tytso@dcl>
1004
1005         * debugfs.c (do_find_free_block): Fix typo in code which checked
1006                 to see if the usage message should be printed.
1007
1008 Thu Aug 17 22:55:58 1995    <tytso@rsts-11.mit.edu>
1009
1010         * debugfs.c (do_open_filesys): Change to always set optreset to 1,
1011                 to make BSD getopt()'s happy.  Also set optind to 1, which
1012                 should make more getopt()'s happy.
1013
1014 Fri Aug 11 08:45:01 1995  Theodore Y. Ts'o  <tytso@lurch.mit.edu>
1015
1016         * debugfs.c (do_find_free_block, do_find_free_inode): Fix bug in
1017                 the usage handling where "ffi ?" or "ffb ?" would
1018                 dereference a NULL pointer.
1019
1020 Fri Aug 11 14:21:07 1995  Remy Card  <card@bbj>
1021
1022         * debugfs.8: Updated date and version number.
1023
1024 Thu Aug 10 14:28:50 1995  Remy Card  <card@bbj>
1025
1026         * debugfs.8: Fixed a spelling error in Ted's name :-)
1027
1028 Mon Jun 12 19:08:25 1995  Theodore Y. Ts'o  (tytso@dcl)
1029
1030         * debugfs.c, ncheck.c, icheck.c, lsdel.c, dump.c: Include
1031                 <errno.h> (if it exists)
1032
1033         * debugfs.c, dump.c, icheck.c, lsdel.c, ncheck.c: Don't include
1034                 <getopt.h> if it doesn't exist.
1035
1036 Sun Jun 11 15:21:07 1995  Theodore Y. Ts'o  <tytso@lurch.mit.edu>
1037
1038         * ncheck.c (do_ncheck): Use LINUX_S_ISDIR instead of S_ISDIR
1039
1040         * debugfs.c: Implement the mknod and write commands (from Linus).
1041
1042                 Change names of modify_char, modify_short, and modify_long
1043                 to be modify_u8, modify_u16, and modify_u32, respectively.
1044
1045 Thu Jun  8 12:29:15 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>
1046
1047         * debugfs.c (dump_inode): Only print out inode frag fields if
1048         HAVE_EXT2_FRAGS is defined (by configure).  Don't print out the
1049         reserved field at all for  now.
1050
1051         * Makefile.in: Rewritten to conform to GNU coding standards and
1052         support separate compilation directories.
1053
1054 Thu Nov 24 17:46:23 1994  Theodore Y. Ts'o  (tytso@rt-11)
1055
1056         * dump.c: Added two new commands, "dump" and "cat", which allow
1057                 the user to dump the contents of an inode to a file or to
1058                 stdout, respectively.
1059
1060