Fix a small bug on an error path introduced by the hashtree patch.
[dump.git] / CHANGES
CommitLineData
c21722b0 1$Id: CHANGES,v 1.273 2005/03/18 22:12:54 stelian Exp $
f30c53e5
SP
2
3Changes between versions 0.4b39 and 0.4b40 (released ????????????????)
4======================================================================
5
61. Changed restore to emit warnings (instead of emitting a fatal
7 error) if a file (or a directory) is unavailable for a
8 comparision (if the user doesn't have the necessary permissions
9 to access it for example). Thanks to Kenneth Porter
10 <shiva@sewingwitch.com> for the bug report.
35ed8cf8 11
979da669
SP
122. Re-done the 'do not save directory entries to non-dumped inodes
13 (excluded from dump)' feature. The previous implementation
14 worked well for excluded directories but not for regular files.
15 Thanks to Kenneth Porter <shiva@sewingwitch.com> for the bug
16 report.
17
1ba0c4bb
SP
183. Fixed a bug in dump where the tape size was miscalculated when
19 the user used -d/-s to specify the tape characteristics. Thanks
20 to Philip Goisman <goisman@physics.arizona.edu> for reporting
21 the bug.
22
c21722b0
SP
234. Fixed another bug introduced in restore with the hashtree
24 implementation. This one caused restore to stop saying
25 "removenode: non-empty directory" in some cases.
26
debbffbc
SP
27Changes between versions 0.4b38 and 0.4b39 (released January 21, 2005)
28======================================================================
35ed8cf8
SP
29
301. The newly added dump_on_cd_3 example was buggy, replace it
31 with an updated version from Andrew Basterfield
32 <bob@cemetery.homeunix.org>.
b79d20f1 33
30e8407d
SP
342. Made restore to chdir() back into the initial directory when
35 dumping core while aborting a comparision operation. The
36 previous behaviour was to write the corefile at the root of
37 the directory being compared, which could very well be
38 read only and preventing the corefile generation. Thanks
39 to Kenneth Porter <shiva@sewingwitch.com> for the bug report.
40
b43981b3
SP
413. Silenced the failure to call fgetflags() when comparing an
42 entry which has no ext2 attributes (as in lsattr()).
43
68415469
SP
444. Fix a brown paper bug in restore -C which broke restore and
45 caused modifications on the filesystem being compared
46 (directories containing a file with the same name as the
47 directory get renamed to RSTTMP...). Thanks to Kenneth Porter
48 <shiva@sewingwitch.com> for finding the bug and helping me
49 reproduce it.
50
18dc6e86
SP
515. Made restore -C force the -N flag (no writing allowed on
52 the disk) in order to prevent more bugs like the above one.
53
cdd136ec
SP
54Changes between versions 0.4b37 and 0.4b38 (released January 7, 2005)
55=====================================================================
b79d20f1
SP
56
571. Fix a couple of troff syntax bugs in the man pages.
58 Thanks to Eric Raymond <esr@thyrsus.com> for the patch.
d7783603 59
0556ca22
SP
602. Made restore use either libncurses or libtermcap, depending
61 on which one is available at configure time.
62
7d422735
SP
633. Fixed restore negative size display bug when comparing a
64 dump containing files over 2GB. Thanks to Steve Bonds
65 <sbonds@users.sourceforge.net> for the bug report.
66
585ca01a
SP
674. Do not save directory entries to non-dumped inodes
68 (excluded from dump). This will eliminate the 'missing
69 file' warnings when doing 'restore -C'.
70
241ddca3
SP
715. Fix dump crash when backuping a huge (2TB) filesystem,
72 due to a bogus calculation on the inode map size.
73 Thanks to Kevin B. Haines <K.B.Haines@rl.ac.uk> for
74 submitting the bug and testing the fix.
75
47acd076
SP
766. Fix a problem in restore where the final \0 in the symbolic
77 link names could have been lost, generating corrupt filenames.
78 Thanks to Kyle Wilson <kyle.wilson@amd.com> for reporting the
79 bug.
80
741eb204
SP
817. Implemented a hash list for the directory names in restore.
82 The linear list used before caused problems in interactive
83 restores when dealing with directories having thousands of
84 entries. Thanks to Brian Ristuccia <bristuccia@starentnetworks.com>
85 for reporting the bug.
86
a55ce914
SP
878. Improved restore -C, this time including the directory
88 attributes into the comparision.
89
909. Made restore understand tapes containing EA/ACLs (which will
91 be dumped by the next version of dump). In this version
92 extended attributes on the tape are ignored, for full EA/ACL
93 support wait for the next version or try the experimental EA
94 patch.
95
498a402f
SP
96Changes between versions 0.4b36 and 0.4b37 (released July 7, 2004)
97==================================================================
d7783603
SP
98
991. Added the --enable-staticz configure option which enables
100 dump and restore to be linked with static versions of
101 libz and libbz2 (and dynamic versions of all other libraries).
102 This will make Debian users happy, because libz and libbz2
103 were the only needed libraries living in /usr, all the
104 others live in /lib. In case of system emergency, it is
105 better not to have to rely on an extra filesystem.
106 Thanks to Bdale Garbee <bdale@gag.com> for the suggestion.
e0267986 107
b3f55532
SP
1082. Fix compilation on (at least the Linux Debian port to) AMD64.
109 (<ext2fs/ext2_types.h> defines some types (__s64 and __u64)
110 that are also defined by <linux/types.h> (<asm/types.h>) and
111 they conflict).
112
1f2c193e
SP
1133. Make dump's reading of the dumpdates file a bit more robust,
114 preventing dump from crashing when the dumpdates file has
115 been modified by hand.
116
e1e4be20
SP
1174. Fixed some offset calculations in dump code which could
118 lead to "bread lseek errors" on large filesystems. Thanks
119 to Bruce Lowekamp <lowekamp@users.sourceforge.net> for
120 reporting this bug and debugging the issue.
121
c9e4e868
SP
1225. Made dump use the blkid library when searching for devices
123 by label or uuid instead of dump's own routines.
124
97be3358
SP
1256. Corrected a bug in dump where a wrong LABEL=... line in
126 /etc/fstab could prevent dump from dumping unrelated
127 filesystems. Thanks to Bruce Lowekamp
128 <lowekamp@users.sourceforge.net> for reporting the bug.
129
ddf54486
SP
130Changes between versions 0.4b35 and 0.4b36 (released April 21, 2004)
131====================================================================
e0267986
SP
132
1331. Fixed dump compilation with old gcc versions. Thanks to
134 Mike Castle <dalgoda@users.sourceforge.net> for the patch.
8ad151aa 135
75654eee
SP
1362. Fixed some warnings (howmany, roundup, powerof2 redefined)
137 when compiling against a recent glibc version.
138
43e6ea49
SP
1393. Fixed a bug in restore preventing the read of a dump tape
140 written with Solaris 7 ufsdump. Thanks to Patrick Higgins
141 <phiggins@transzap.com> for reporting the bug and providing
142 the test case.
143
d435f57f
SP
1444. Changed dump to enable the creation of volumes of different
145 sizes in a single run (make -B accept a list of values).
146 Patch contributed by Florian Zumbiehl <florz@gmx.de>.
147
e1ba02ef
SP
1485. Use the glibc provided minor() and major() macros instead
149 of our own bitmask implementation. This should be safe for
150 when the major/minor namespace will migrate to 32 bits.
151 Thanks to Zhang Jun <zhangjun@nanjing-fnst.com> for reporting
152 the bug.
153
ae6919a7
SP
1546. Made explicit in the dump man page that dump will not create
155 a remote file, it will only write to an already existing one.
156
4acaf865
SP
1577. Another try at making size estimates better again.
158
956756f2
SP
1598. Put back the inconditional running of the end-of-tape
160 script which was changed in 0.434 to be run only when -M
161 or multiple -f were NOT specified. Some users rely on this
162 feature even when it is combined with -M/-f.
163
e4e31ce9
SP
1649. Fixed restore when restoring huge backups (where rstdir...
165 temporary files are over 2GB). Thanks to
166 Raphael Jaffey <rjaffey@artic.edu> for reporting this,
167 debugging the issue and making the patch.
168
cc7747eb
SP
16910. Made restore understand FreeBSD UFS2 tapes. Thanks to
170 David <vrtin@users.sourceforge.net> for submitting the bug
171 and providing a test case.
172
28ba5cae
SP
17311. Made dump work with an arbitrary integer level (no more 10
174 levels only limitation). Thanks to Matthew
175 <msvincen@midway.uchicago.edu> for the patch.
176
dcac75e9
SP
177Changes between versions 0.4b34 and 0.4b35 (released December 21, 2003)
178=======================================================================
8ad151aa
SP
179
1801. Added a note in the dump man page saying that the default
181 blocksize can be 32 if -d is used with a high density argument.
182 Thanks to Antonios Christofides <A.Christofides@itia.ntua.gr>
183 for the patch.
ed194aec 184
008af419
SP
1852. Fixed configure to correctly understand CPPFLAGS, CFLAGS,
186 LDFLAGS environment variables. Thanks to Arcady Genkin
187 <antipode@users.sourceforge.net> for reporting the bug.
188
0d4dfd07 1893. Made -e/-E options of dump accept an unlimited number of inodes
67793be0
SP
190 to be excluded, rather than a hardcoded maximum. Thanks to
191 Dietrich Rothe <d-rothe@users.sourceforge.net> for the patch.
192
0d4dfd07
SP
1934. Updated the autoconf system to 2.50. Forced the -D_BSD_SOURCE
194 and -D_USE_BSD_SIGNAL defines in configure in order to solve
195 64bit build problems because quad_t is redifined with a
196 different signature. Thanks to Mike Harris <mharris@redhat.com>
197 for reporting this bug.
198
5d8d264f 1995. Made restore build on Solaris, making possible to
d1925e0c
SP
200 restore Linux's "enhanced" tapes. Thanks to Uwe Gohlke
201 <uwe@ugsoft.de> for the patch.
202
2036. Made an extension in the dump tape format capable of saving
204 MacOSX specific inode extensions. Uwe Gohlke <uwe@ugsoft.de>
205 wrote the extension and contributed the restore code back
206 into this codebase. The same extension mechanism will be
207 used in the future to save ACLs...
208
2097. Made rmt work correctly with regard to QFA and local/remote
210 files and tapes. The remote access will however work only
211 when the dump provided rmt version is used. If you want to
212 use another rmt server, please do not use the QFA feature.
5d8d264f 213 Thanks to Uwe Gohlke <uwe@ugsoft.de> for the patch.
d1925e0c 214
b564cb84
SP
215Changes between versions 0.4b33 and 0.4b34 (released April 18, 2003)
216====================================================================
ed194aec
SP
217
2181. Fixed the INSTALL file to reflect the actual install paths.
219 Thanks to David Ronis <ronis@ronispc.chem.mcgill.ca> for
220 reporting the bug.
4bb009da 221
d3e542e7
SP
2222. Fixed the configure script to only check for headers presence
223 instead of trying to compile them. This should fix issues
224 with old build environments. Thanks to Kari Lempiainen
225 <kari@funky.pp.fi> for reporting the bug.
226
1176b3c1
SP
2273. Fixed restore to correctly ignore sockets when comparing
228 a dump (as socket cannot be properly restored anyway). Thanks
2d32c89c
SP
229 to Gunther Reiszig <gunther@mit.edu> for reporting the bug.
230
2314. Fixed restore to correctly access the archive file (-A argument)
232 even when using a remote tape. Thanks to Fabrice Bellet
233 <fabrice@bellet.info> for reporting the bug.
1176b3c1 234
900bffdb
SP
2355. Fixed (again) handling of long (largefile) seeks in rmt.
236 Thanks to Fabrice Bellet <fabrice@bellet.info> for reporting
237 the bug.
238
6d834d25
SP
2396. Fixed restore corner case when dealing with large block sizes
240 dump is able to write now (-b 1024). Thanks to Fabrice Bellet
241 <fabrice@bellet.info> for reporting the bug.
242
cdef84ca
SP
2437. Fixed a bug preventing dump to access a filesystem having
244 a label exactly 16 bytes in length. Thanks to <minduni@ti-edu.ch>
245 for reporting the bug.
246
3458b64d
SP
2478. Made dump store dump dates using explicit timezones, fixing a
248 problem with incremental dumps if the timezone is modified
249 between the dumps. Thanks to Philippe Troin <phil@fifi.org> for
250 the bug report and the patch.
251
2be77799
SP
2529. Fixed a bug encountered when dumping individual files (not full
253 filesystems or directories) and dangling symbolic links happen
254 to be in the list of files. For as far as dump is concerned,
255 dangling symbolic links are allowed, and are dumped as is.
256 Thanks to Jin-su Ahn <jsahn@ee.snu.ac.kr> for reporting the
257 bug and providing the fix.
258
c3f69f06
SP
25910. Fixed open and creation modes and permissions for QFA and
260 table-of-contents files in dump and restore. Thanks to
261 Philippe Troin <phil@fifi.org> for the patch.
262
26311. Fixed the archive file descriptor handling enabling it to be 0.
264 This can happen in some cases when shell redirections are used.
265 Thanks to Philippe Troin <phil@fifi.org> for the patch.
266
26712. Delayed the opening of archive file until after suid had been
268 dropped (fixing a possible security issue if dump is suid).
269 Thanks to Philippe Troin <phil@fifi.org> for the patch.
270
27113. Fixed the 'S' command handling in the rmt client part.
272 Thanks to Philippe Troin <phil@fifi.org> for the patch.
273
27414. Modified the end-of-tape script handling to print out statistics
275 (and stop the timer) before launching the eot script. Also, the eot
276 script does not get run anymore when using -M (which makes sense) or
277 when multiple tapes are listed on the command line
278 (-f tape0,tape1,tapen) (which also makes sense).
279 Thanks to Philippe Troin <phil@fifi.org> for the patch.
280
e1abc9ce
SP
28115. Relicensed dump/restore under the 'revised' BSD license, as per
282 ftp://ftp.cs.berkeley.edu/ucb/4bsd/README.Impt.License.Change.
283
206f768c
SP
28416. Added LZO compression to dump. This new compression method has
285 the advantage of being super fast, thus not killing tape streaming
286 on slow machines. Thanks to Helmut Jarausch
287 <jarausch@igpm.rwth-aachen.de> for the patch and to
288 Markus Oberhumer <markus@oberhumer.com> for giving special permission
289 to include his miniLZO project (GPL licensed) in dump/restore.
290
e2392789
SP
29117. Some small buffer overruns fixes in rmt. Thanks to Antonomasia
292 <ant@notatla.demon.co.uk> for reporting the bugs.
293
cdfe1392
SP
29418. Added a special rmt version which can do encryption when writing
295 to tape. Read examples/encrypted_rmt/README for details on
296 how to enable and configure it. Thanks to Ken Lalonde
297 <ken@globalremit.com> for the patch.
298
61e9d4ff
SP
29919. Made dump work with 2.5 kernel end of tape early warning semantics.
300 Thanks to Kai Makisara <Kai.Makisara@kolumbus.fi> for the patch.
301
8c95cc30
SP
30220. Fixed a bug which caused dump -w|-W not to work anymore, because
303 the fs_freq and fs_passno fields in /etc/mtab are always set
304 to 0 0. Thanks to Trent Piepho <xyzzy@speakeasy.org> for
305 reporting the bug.
306
cbdba727 307Changes between versions 0.4b32 and 0.4b33 (released February 10, 2003)
4bb009da
SP
308=======================================================================
309
3101. Added a note in the restore man page clarifying the question
311 'set the permissions on the current directory ?' asked by
312 restore at the end of treatment in -i and -x modes.
d86089d1 313
c898ca7a
SP
3142. Fixed the endianess issues when reading compressed tapes.
315 Thanks to Dark Force <daq4th@users.sourceforge.net> for
316 reporting this bug and providing test cases.
317
a028bdc8
SP
3183. Fixed the "ACL won't be dumped" warning message (which showed
319 an extra, unrelated error message). Thanks to Dragan Krnic
320 <dkrnic@lycos.com> for reporting this bug.
321
a8a6a503 3224. Made dump look first into /etc/mtab, then into /etc/fstab
1a886de8
SP
323 when searching for filesystem paths. Also fixed some problems
324 caused by binding mounts or multiple block device mounts.
325 Thanks to Matus Uhlar <uhlar@fantomas.sk>, Elliott Mitchell
a8a6a503
SP
326 <ehem@m5p.com>, Greg Edwards <gedwards@users.sourceforge.net>,
327 Brian Hoy <brian.hoy@opus.co.nz>. (fixes Debian bugs #147086
328 and #160305, Sourceforge bugs #618699 and #679832).
1a886de8 329
3211c85b
SP
3305. Made dump's -I option accept the value '0' meaning all the
331 read errors will be ignored. This can be useful when running
332 dump from unattended sessions (like cron jobs). Thanks to
333 John I Wang <jiwang@users.sourceforge.net> for the suggestion.
334
7fcd6df5
SP
3356. Fixed the output of dump to indicate 'blocks' instead of
336 'tape blocks' in the various messages (blocks are always
337 1 Kilobyte, tape blocks are 1 BK * '-b' argument), and
338 made it clearly print the current blocksize at the start of
339 a dump. Thanks to Michal Szymanski <msz@astrouw.edu.pl> for
340 the suggestions.
341
5bf65105
SP
3427. Made rmt understand long (largefiles) seeks.
343
dbb649e8
SP
3448. Fixed build with very old versions of libext2fs, where
345 EXT2_FT_* constants were undefined.
346
c92d83ae
SP
3479. Made dump accept the dumpdates path on the command line
348 (-D file option) instead of using only the hardcoded one.
349 Thanks to Piete Brooks <pb22@users.sourceforge.net> for the
350 suggestion.
351
1daf06b9
SP
35210. Enabled rmt, LFS, readline, QFA options by default in
353 ./configure. Updated the configure process (new versions
354 of config.guess, config.sub etc).
355
51c11d00
SP
356Changes between versions 0.4b31 and 0.4b32 (released November 15, 2002)
357=======================================================================
d86089d1
SP
358
3591. Changed dump to use fcntl(F_SETLK) style locking instead
360 of flock() when locking the dumpdates file. With the old
361 locking scheme, a local user having read rights on the
362 dumpdates file could be able to do a Denial of Service attack
363 on dump. In order to lock the dumpdates file with the new
364 scheme, the user would need to have write access on the file.
365 Thanks to Richard Johnson <Richard.Johnson3@ey.com> for
366 reporting the bug (originally a bugtraq post).
ba3af39e 367
2f562f4e
SP
3682. Fixed interactive 'ls' which caused spurious errors warnings
369 about 'undefined filetypes' detected. Thanks to Jorgen Ostling
370 <jorgen_ostling@users.sourceforge.net> for reporting this
371 bug.
372
1c736b78
SP
3733. Fixed dump's estimate when dealing with sparse inodes.
374
876861d2
SP
3754. Modified dump to allow setting a blocksize bigger than 32kB
376 (raised the limit to 1024kB), because newer hardware needs
377 this for proper operation. Thanks to Dirk Traenapp
378 <dtraenapp@users.sourceforge.net> for reporting this.
379
b8d848c9
SP
3805. Fixed a bug causing Dump to stop and report an error if an
381 inode number in the exclude file was followed by some amount
382 of whitespace. Thanks to Jeffrey Sofferin
383 <sofferin@users.sourceforge.net> for reporting this bug.
384
e531c442
SP
3856. Fixed a bug which caused restore, in some particular cases,
386 to ask some 'scary' questions and leave a bunch of RSTTMP
387 directories behind when restoring incremental tapes. Thanks
388 to Philippe Troin <phil@fifi.org> for reporting this bug and
389 providing the test cases.
390
c993d83a
SP
3917. Changed the wording when inodes are excluded from dump:
392 replaced 'Added inode 7 to exclude list' with
393 'Excluding inode 7 (resize inode) from dump', as suggested
394 by Elliott Mitchell <ehem@m5p.com> in a Debian bug report.
395
cbc7fd6a 396Changes between versions 0.4b30 and 0.4b31 (released July 30, 2002)
ba3af39e
SP
397===================================================================
398
3991. Fixed rmt open flags transmission (GNU's symbolic syntax over
400 rmt) which I broke in 0.4b29. Thanks to Eros Albertazzi
401 <eros@lamel.bo.cnr.it> for reporting the bug.
35952b8f 402
4095abc0
SP
403Changes between versions 0.4b29 and 0.4b30 (released July 25, 2002)
404===================================================================
aa1b1e7f
SP
405
4061. Made dump print out the ext2 logical block number in case of a read
407 error, which can be given as an argument to debugfs' ncheck command,
408 in order to find out the affected inode. Added note about this
409 usage in dump's man page.
ed7c25a3
SP
410
4112. Fixed a problem in restore when reading tapes written on big
412 endian machines with very old versions of dump. The patch was
413 contributed by George Helffrich <george@geology.bristol.ac.uk>.
f75cc889
SP
414
4153. Fixed the tape length calculation when using large tapes
416 and compression. Thanks to Georg Lippold
417 <g_lippold@sourceforge.net> for reporting the bug.
a9c5ed48
SP
418
4194. Added a new set of examples in dump_on_cd_2 directory, based
420 on dump_on_cd examples but somewhat enhanced, supporting DVD
421 media, and localized in english and german. Thanks to
422 Georg Lippold <g_lippold@sourceforge.net> for the new scripts.
423
9ca70cf6
SP
4245. Made dump save 32 bit UID/GID. Internally, this was achieved
425 by switching from the old BSD inode format to the new BSD
426 inode format, which means that the tape format was changed.
427 However, since all restore versions out there should
428 transparently support both inode formats, the change should
429 have no side effects. Thanks to John Yu <jky@cs.bu.edu> for
430 reporting the bug.
a18d5997
SP
431
4326. Fixed a lot of warnings in the code shown when compiling
433 with 'gcc -W'. Thanks to Matthias Andree
434 <matthias.andree@stud.uni-dortmund.de> for reporting this.
435
2a2e321d
SP
4367. Fixed a small markup bug in the dump man page. Thanks to
437 Eric S. Raymond <esr@minx.thyrsus.com> for submitting the
438 patch.
439
153f9a83
SP
4408. Rewrote entirely the man pages using the tmac.an macro
441 package (Linux man page format) instead of the original BSD
442 format. They should be now cleaner and easier to modify.
443
cf88ef4c
SP
444Changes between versions 0.4b28 and 0.4b29 (released June 8, 2002)
445==================================================================
d24dc8af
SP
446
4471. Fixed a problem in the rmt ioctl command, where ioctl's issued from
448 non Linux clients were misinterpreted. The description of the problem
449 (incompatible numbering in Linux mtio opcodes) is documented at
450 ftp://ftp.fokus.gmd.de/pub/unix/star/README.mtio . Thanks to
451