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