]> git.wh0rd.org - dump.git/blob - CHANGES
Prepare for release 0.4b14
[dump.git] / CHANGES
1 $Id: CHANGES,v 1.43 2000/02/10 10:22:04 stelian Exp $
2
3 Changes between versions 0.4b13 and 0.4b14 (released February 10, 2000)
4 =======================================================================
5
6 1. Fixed a bug in dump which may have caused invalid deleted
7 directories to be dumped out if they were deleted after the
8 mapping pass. This could occure on active filesystem and lead
9 to heap corruption (causing dump malfunction in many possible ways).
10 Thanks to Jan Sanislo <oystr@cs.washington.edu> for finding this
11 bug and submitting the patch.
12
13 2. Fixed the handling of the filesystem parameter in dump. A
14 '/mnt/disk' parameter caused the disk contents to be dumped,
15 but a '/mnt/disk/' parameter caused the mountpoint directory
16 to be dumped (generally an empty directory).
17
18 3. Improved the output of dump in order to tell which directory
19 it is currently dumping (when dumping a subtree).
20
21 4. Added the '-e' exclude inode option to dump. Thanks to
22 Isaac Chuang <ike@isl.stanford.edu> for contributing with the patch.
23
24 5. Added a REPORTING-BUGS file in order to provide a guide
25 on how to correctly report a bug in dump/restore.
26
27 6. Fixed a restore problem when restoring a hard link to an inode
28 having the immutable or append-only attribute set. Thanks to
29 Ambrose Li <acli@mingpaoxpress.com> for submitting the patch.
30
31 7. Fixed a compatibility problem between dumps made on little
32 endian machines (the format was correct) and big endian
33 machines (the format was incorrect). This fix break the
34 compatibility with the older dumps made on big endian
35 machines (sparc, m86k, ppc etc). For the first time in
36 linux dump's history (I believe), the dumps made by *BSD,
37 Linux/alpha, Linux/sparc and Linux/x86 are compatible,
38 so interchangeable. Thanks to Rob Cermak
39 <cermak@ahab.rutgers.edu> for submitting the bug and
40 helping me test the fix.
41
42 8. Fixed the way dump reports the remaining percent/time, if
43 the number of blocks actually dumped exceeds the estimated
44 number of blocks. Thanks to Jean-Paul van der Jagt
45 <jeanpaul@dutepp0.et.tudelft.nl> for reporting the bug.
46
47 Changes between versions 0.4b12 and 0.4b13 (released January 21, 2000)
48 ======================================================================
49
50 1. Small Y2K fix in the man pages :). Thanks to Bernhard Sadlowski
51 <sadlowsk@Mathematik.Uni-Bielefeld.DE> for reporting the bug.
52
53 2. Removed the requirement to build the RPM as root from the
54 spec file. Thanks to Christian Weisgerber
55 <naddy@mips.rhein-neckar.de> for submitting this.
56
57 3. Fixed a bug in dump related to the 'filetype' feature of ext2fs,
58 causing dump to block when dumping really huge filesystems.
59 Many thanks to Patrik Schindler <poc@pocnet.net> for
60 helping me find this bug.
61
62 4. Fixed the treatment for an interrupt signal when dump access
63 the remote tape through RSH. Thanks to Christian Weisgerber
64 <naddy@mips.rhein-neckar.de> for providing the patch.
65
66 5. Fixed a bug which was causing dump/restore to display
67 garbage characters instead of the remote host name.
68
69 Changes between versions 0.4b11 and 0.4b12 (released January 8, 2000)
70 =====================================================================
71
72 1. Small fix in the dump man page. Thanks to Thorsten Kukuk
73 <kukuk@suse.de> for submitting the patch.
74
75 2. Fix for the exit code when using the size estimate option of
76 dump. Thanks to Matti Taskinen <mkt@rni.helsinki.fi> for
77 submitting the patch.
78
79 3. Handle EINTR in atomical reads/writes in dump, which was causing
80 dump to fail on some systems. Thanks to Eric Jergensen
81 <eric@dvns.com> for reporting the bug and submitting the patch.
82
83 4. Handle more than 16 characters for the device names in dumpdates.
84 (up to 255 now). Thanks to Rainer Clasen <bj@ncc.cicely.de> for
85 tracking down the problem and proposing the solution.
86
87 5. Fixed a bug in dump which prevented the creation of the
88 dumpdates file when doing a 0-level dump without already
89 having a dumpdates file. Thanks to Patrik Schindler
90 <poc@pocnet.net> for reporting the bug.
91
92 6. Changed the way dump 'S' flag reports the size estimate
93 from number of blocks into bytes (making it compatible
94 with the Solaris version, and simplifying things for
95 amanda users). Thanks to Jason L Tibbitts III
96 <tibbs@math.uh.edu> for reporting the bug.
97
98 7. Fixed a compatibility problem in linux/alpha dump tape format.
99 Now the linux/alpha dump are (again) compatible with the
100 other dump formats. But this breaks compatibility with
101 older dumps made on alpha. Thanks to Mike Tibor
102 <tibor@lib.uaa.alaska.edu> for helping me in finding this bug.
103
104 Changes between versions 0.4b10 and 0.4b11 (released December 5, 1999)
105 ======================================================================
106
107 1. Added a '--enable-kerberos' to configure.
108
109 2. Added a 'S' option to dump which determines the amount of space
110 that is needed to perform the dump without actually doing it, similar
111 to the Sun's ufsdump 'S' option. Patch contributed by Rob Cermak
112 <cermak@ahab.rutgers.edu>.
113
114 3. Added a 'M' multi-volume option to dump and restore which enables
115 dumping to multiple files (useful when dumping to an ext2
116 partition to make several dump files in order to bypass the 2GB
117 file size limitation). The 'f' argument is treated as a prefix and
118 the output files will be named <prefix>001, <prefix>002 etc. With
119 the 'M' flag, restore automatically selects the right file without
120 asking to enter a new tape each time.
121
122 4. Fixed a memory leak which was causing dump to grow very big
123 (270MB when dumping a 10GB filesystem...). Thanks to Jason
124 Fearon <jasonf@netrider.org.au> for reporting the bug.
125
126 Changes between versions 0.4b9 and 0.4b10 (released November 21, 1999)
127 ======================================================================
128
129 1. Make configure test if the system glob routines support
130 extended syntax (ALTDIRFUNC). If not, use the internal glob
131 routines instead of system ones. Thanks to Bernhard Sadlowski
132 <sadlowsk@Mathematik.Uni-Bielefeld.DE> for reporting the bug
133 and helping me resolve this and other minor libc5 compiling
134 glitches.
135
136 2. Fix a problem when dumping a ext2fs with the 'filetype'
137 feature enabled. Thanks to Patrick J. LoPresti
138 <patl@cag.lcs.mit.edu> for reporting the bug and to
139 Theodore Y. Ts'o <tytso@mit.edu> for providing the patch.
140
141 3. Made the nodump flag work on directories. A directory which
142 has the nodump flag gets never dumped, regardless of its
143 contents.
144
145 4. Integrate a patch from Jeremy Fitzhardinge <jeremy@goop.org>
146 which allows dump on an active ext3 filesystem. However, this
147 is a "quick and dirty" patch which enables backup of an ext3
148 filesystem through the ext2 compatibility (by ignoring the
149 NEEDS_RECOVERY bit). The journal file is not recognized and
150 it is dumped (it should not).
151
152 5. Test the superblock compatibility flags when dumping, in order
153 to be sure that we know how to deal with specific features.
154
155 Changes between versions 0.4b8 and 0.4b9 (released November 5, 1999)
156 ====================================================================
157
158 1. Use lchown instead of chown, fixing a possible security problem
159 when restoring symlinks (a malicious user could use this
160 to deliberately corrupt the ownership of important system files).
161 Thanks to Chris Siebenmann <cks@utcc.utoronto.ca> for detecting
162 this and providing the patch.
163
164 Changes between versions 0.4b7 and 0.4b8 (released November 3, 1999)
165 ====================================================================
166
167 1. Put dump sources under CVS, added Id tags in all files so
168 one can use 'ident' on binary files.
169
170 2. Added the dump/restore version in the usage text so one can
171 easily verify the version he is using.
172
173 3. Small patch from Nuno Oliveira <nuno@eq.uc.pt> which fixes
174 a va_start/va_end problem on linux-ppc (always call va_start
175 va_end in pairs each time we use a vararg function).
176
177 4. Added again the DT_* constants because old libc does not
178 contain them :(. Thanks to Eric Maisonobe <virnet@nat.fr>
179 for submitting the bug report.
180
181 5. Use ext2fs_llseek instead of llseek. With recent e2fsprogs
182 this should enable dumping big (huge) filesystems.
183
184 6. Added the RSH environment variable in order to be able to
185 use a rsh replacement like ssh when doing remote backups (and
186 bypass the security limitations of rcmd). Now you can do remote
187 backups without being root (or making dump setuid root).
188
189 7. Modified again the way dumpdates works. For incremental dumps,
190 we need to read dumpdates even if we are not using 'u' option.
191 Thanks to Bdale Garbee <bdale@gag.com> for his ideas on how
192 this should work.
193
194 Changes between versions 0.4b6 and 0.4b7 (released October 8, 1999)
195 ===================================================================
196
197 1. Removed the 'k' flag from the restore 'about' text if kerberos
198 was not compiled in.
199
200 2. Prototyped (f)setflags from e2fsprogs and corrected the calls
201 to them (fsetflags takes a char*, setflags an open fd!).
202
203 3. (f)setflags is called only if the flags aren't empty. If the
204 file is a special file, a warning is printed, because changing
205 flags implies opening the device. Normally, a special file
206 should not have any flag... (Debian bug #29775, patch provided
207 by Abhijit Dasgupta <abhijit@ans.net>).
208
209 4. Made possible to dump a file system not mentioned in /etc/fstab.
210 (Debian bug #11904, patch provided by Eirik Fuller <eirik@netcom.com>).
211
212 5. Changed the default behaviour to not create dumpdates
213 unless 'u' option is specified. Removed the old "debian-patch"
214 which provided the same thing. (Debian bug #38136, #33818).
215
216 6. Removed all those dump*announce, since they were getting old...
217
218 7. Added warning messages if dumpdates does not exist and
219 when an inferior level dump does not exist (except for a level 0
220 dump).
221
222 8. Debugged the glob calls in interactive mode: restore used a
223 dirent struct which was different from the /usr/include/dirent.h
224 one (this used to work, is it a glibc2 change?), so none of the
225 compat glob (which used /usr/include/dirent.h) or the system glob
226 worked. Restore use now the system dirent (and the system
227 DT_* constants), which are compatible with BSD ones.
228
229 9. Added a configure flag (--with-dumpdatespath) to specify
230 the location of dumpdates file. By default, it is
231 /etc/dumpdates.
232
233 10. Added the "AUTHOR" and "AVAILABILITY" sections and
234 included the current date/version in man pages.
235
236 11. Corrected the estimation of remaining time when
237 the operator doesn't change the tapes quickly enough. This
238 was an old bug, I thought I corrected it, and discovered
239 that in fact it was corrected in two different places, so
240 the results canceled each other...
241
242 Changes between versions 0.4b5 and 0.4b6 (released October 1, 1999)
243 ===================================================================
244
245 1. Integrated multiple patches from RedHat, Debian and SuSE:
246
247 - tweak dump/itime.c to not try to read dumpdates if the 'u' option
248 isn't specified.
249 - several fixes in the man pages.
250 - update the default tape device to /dev/st0.
251 - many updates for Linux Alpha (byte ordering, size_t etc).
252 - buffer overruns.
253 - use environment variable for TMPDIR (instead of /tmp).
254 - use sigjmp_buf instead of jmp_buf (RedHat bug #3260).
255 - workaround egcs bug (RedHat bugs #4281 and #2989).
256 - wire $(OPT) throughout Makefile's.
257
258 2. Upgrade the dump revision to 1, making possible to dump filesystems
259 made with e2fsprogs-1.15 or newer. Nothing seems to break...
260
261 3. Fix some compile warnings, prototype all functions.
262
263 4. Use glibc err/glob instead of internal compatibility
264 routines (only if available).
265
266 5. Fix a compile error on Linux 2.2.7 / libc5 (5.4.44) (patch provided
267 by Bernhard Sadlowski <sadlowsk@mathematik.uni-bielefeld.de>).
268
269 Changes between versions 0.4b4 and 0.4b5 (released September 22, 1999)
270 ======================================================================
271
272 1. Integrated the changes from FreeBSD-3.1-RELEASE
273 (mostly bug fixes, buffer overruns, dump has now an "automatic
274 tape length calculation" flag, dump/restore can use kerberos now
275 (this is NOT tested), use environment variables for TAPE and
276 RMT etc.).
277
278 2. Integrated three RedHat patches ("glibc", "kernel" and "bread" patches)
279
280 3. Corrected a bug in restore when using 'C' option with multi-volumes
281 tapes (files splited accros two tapes give "size changed" errors
282 when comparing).
283
284 4. Corrected the long standing bug when dumping multiple tapes.
285 This works for me, needs further testing.
286
287 Changes between versions 0.4b3 and 0.4b4 (released January 17, 1997)
288 ====================================================================
289
290 1. Dump now runs correctly on kernels 2.1.x
291 Fix made by Gerald Peters <gapeters@worldnet.att.net>
292
293 Changes between versions 0.4b2 and 0.4b3
294 ========================================
295
296 1. Use realpath() if available
297
298 2. Report statistics
299
300 Changes between versions 0.4b1 and 0.4b2
301 ========================================
302
303 1. Fixed the bug fix from Greg Lutz (I had made a mistake when integrating
304 the patch)
305
306 2. Fixed restore to make it able to read FreeBSD 2.x dumps again
307
308 3. Fixed configure.in to correctly handle --enable-rmt
309
310 Changes between versions 0.3 and 0.4b1
311 ======================================
312
313 1. Integrated the changes from 4.4BSD-Lite2
314
315 2. Integrated the patches from Debian and Red Hat
316
317 3. Portability changes: use the __u32, __u16, __s32, and __s16 types
318
319 4. Changed dump to use the Ext2fs library to get block addresses. This
320 should solve the endianness problem on SparcLinux.
321
322 5. Created a configure.in file (shamelessly stolen from the e2fsprogs
323 distribution's one) to use autoconf
324
325 6. Fixed a few minor bugs
326
327 Changes between versions 0.2e and 0.2f
328 ======================================
329
330 1. Added the creation of named pipes (fifos) in restore.
331
332 2. Added the -N flag in the restore manual page.
333
334 3. Added the file kernel.patch which contains the llseek() optimization
335 patch for 1.2.x kernels.
336
337 4. Fixed a bug in the restoration of symbolic links: owner and group were
338 not restored.
339
340 5. Integrated some changes from FreeBSD 2.2.
341
342 6. Added a call to ftruncate() after restoring each file to restore
343 correctly files ending by a hole.
344
345 Changes between versions 0.2d and 0.2e
346 ======================================
347
348 1. Fixed a bug in the "set owner/mode" process. Every file was restored
349 with owner = root (0) and group = root/wheel/whatever (0).
350
351 Changes between versions 0.2c and 0.2d
352 ======================================
353
354 1. Dump is now able to backup 2GB+ filesystems.
355
356 2. Dump and restore can now be linked as static binaries.
357
358 Changes between versions 0.2b and 0.2c
359 ======================================
360
361 1. Fixed a bug when dumping ``slow'' (i.e. normal) symbolic links.
362
363 Changes between versions 0.2a and 0.2b
364 ======================================
365
366 1. Really fixed the bug that I should have corrected in 0.2a.
367
368 2. Enabled optimization again.
369
370 Changes between versions 0.2 and 0.2a
371 =====================================
372
373 1. Disabled the optimization during compilation.
374
375 Changes between versions 0.1 and 0.2
376 ====================================
377
378 1. Fixed a bug in fstab.c which caused a null pointer to be stored in
379 the fs_type field (actually, I modified the file fstab.c to make it
380 use the mntent functions).
381
382 2. Dump and restore now use a 4.3 BSD compatible dump format. Backups
383 made by dump should be readable by the BSD restore and backups made
384 by the BSD dump should be readable by restore. Unfortunately, this
385 means that the dump format has changed between version 0.1 and version
386 0.2 :-(
387
388 3. Dump is now able to backup a subtree, it is no longer limited to whole
389 filesystems like the BSD version.
390
391 4. Dump now uses ext2_llseek() so it is able to backup filesystems bigger
392 than 2 GB.
393
394 Changes between versions 0.0 and 0.1
395 ====================================
396
397 1. Now create links rdump and rrestore during the `make install' step.
398
399 2. Linux port specific bugs added to the manual pages
400
401 3. Incorrect estimation of the number of tapes blocks fixed when doing
402 incremental backups.
403
404 4. Better ls-like format in restore in interactive mode.