History log of /freebsd-10.0-release/sbin/dump/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
259065 07-Dec-2013 gjb

- Copy stable/10 (r259064) to releng/10.0 as part of the
10.0-RELEASE cycle.
- Update __FreeBSD_version [1]
- Set branch name to -RC1

[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so
start releng/10.0 at '100' so the branch is started with
a value ending in zero.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


243665 29-Nov-2012 eadler

Mark non-returning function as such

PR: bin/172978
Approved by: cperciva
MFC after: 3 days


241013 27-Sep-2012 mdf

Fix sbin/ build with a 64-bit ino_t.

Original code by: Gleb Kurtsou


235837 23-May-2012 joel

mdoc: move two sentences from synopsis to description (where they really
belong). With this change, mandoc now formats these manpages properly.


229403 03-Jan-2012 ed

Replace index() and rindex() calls with strchr() and strrchr().

The index() and rindex() functions were marked LEGACY in the 2001
revision of POSIX and were subsequently removed from the 2008 revision.
The strchr() and strrchr() functions are part of the C standard.

This makes the source code a lot more consistent, as most of these C
files also call into other str*() routines. In fact, about a dozen
already perform strchr() calls.


226520 18-Oct-2011 mckusick

The current /etc/dumpdates file restricts device names to 32 characters.
With the addition of various GEOM layers some device names now exceed
this length, for example /dev/mirror/encrypted.elig.journal. This
change expands the field to 53 bytes which brings the /etc/dumpdates
lines to 80 characters. Exceeding 80 characters makes the /etc/dumpdates
file much less human readable. A test is added to dump so that it
verifies that the device name will fit in the 53 character field
failing the dump if it is too long.

This change has been checked to verify that its /etc/dumpdates file
is compatible with older versions of dump.

Reported by: Martin Sugioarto <martin@sugioarto.com>
PR: kern/160678
MFC after: 3 weeks


217769 24-Jan-2011 mckusick

The dump, fsck_ffs, fsdb, fsirand, newfs, makefs, and quot utilities
include sys/time.h instead of time.h. This include is incorrect as
per the manpages for the APIs and the POSIX definitions. This commit
replaces sys/time.h where necessary with time.h.

The commit also includes some minor style(9) header fixup in newfs.

This commit is part of a larger effort by Garrett Cooper started in
//depot/user/gcooper/posix-conformance-work/ -- to make FreeBSD more
POSIX compliant.

Submitted by: Garrett Cooper yanegomi at gmail dot com


203459 03-Feb-2010 delphij

Plug two memory leaks in error case.

MFC after: 1 month


198236 19-Oct-2009 ru

Switch the default WARNS level for sbin/ to 6.

Submitted by: Ulrich Spörlein


193022 29-May-2009 brian

Make dump -W show the level correctly.

PR: 129110
Submitted by: Mike Voorhis <mvoorhis@cs.wpi.edu>
MFC after: 3 weeks


189267 02-Mar-2009 cy

Verify that the filesystem being referenced in fstab is indeed a UFS
filesystem. This avoids confusion with nullfs and unionfs filesystems
which reference the root of a UFS filesystem as a target.

PR: 116849
Approved by: kib


179275 24-May-2008 mckusick

Expand dump to allow MAX_INT dump levels.

PR: bin/100732
Submitted by: Matthew Vincenz <msvincen@midway.uchicago.edu>


179267 23-May-2008 mckusick

When using dump to generate level 0 dumps which are then rsync'ed
to a remote machine, the fact that the dump date is stored with
each header (inode) record makes rsync significantly less efficient
than necessary. This also applies to inode access times when they
are not important data to retain. When implementing an offsite
backup solution of this type, these dates in particular are not
important, especially if it prevents effective offsite backups.

PR: bin/91049
Submitted by: Forrest W Christian <fwc@mt.net>


168392 05-Apr-2007 thomas

(bread): For a read that is contained entirely within a block, never copy
out more than size bytes to the caller's buffer.

PR: bin/111191
Reviewed by: pb
MFC after: 1 week


167055 27-Feb-2007 mckusick

Fix an error in dumping large sparse files containing extended attributes.


167011 26-Feb-2007 mckusick

Update the dump program to save extended attributes. Update
the restore program to restore all dumped extended attributes.

If the restore is running as root, it will always be able
to restore all extended attributes. If it is not running
as root, it makes a best effort to set them. Using the -v
command line flag or the `verbose' command in interactive
mode will display all the extended attributes being set on
files (and at the end on directories) that are being restored.
It will note any extended attributes that could not be set.

The extended attributes are placed on the dump image immediately
following each file's data. Older versions of restore can work
with the newer dump images. Old versions of restore will
correctly restore the file data and then (silently) skip
over the extended attribute data and proceed to the next file.

This resolves PR 93085 which will be closed once the code
has been MFC'ed.

Note that this code will not compile until these header
files have been updated: <protocols/dumprestore.h> and
<sys/extattr.h>.

PR: bin/93085
Comments from: Poul-Henning Kamp and Robert Watson
MFC after: 3 weeks


163280 12-Oct-2006 ru

Make "dump /filesystem" (without options) work.

PR: docs/84408
MFC after: 3 days


162395 18-Sep-2006 ru

Markup fixes.


161362 16-Aug-2006 thomas

Clarify documentation of '-L' command line switch: the snapshot is
unlinked as soon as the dump starts (and removed when the dump is
completed, and the dump process exits). Previous wording was confusing
because users might expect the snapshot to be visible in the .snap
subdirectory while dump is running.

MFC after: 1 week


161333 15-Aug-2006 mjacob

If rawname returns NULL, deal with it appropriately.

PR: 94045
Submitted by: Andrey Elsukov
MFC after: 1 week


161025 06-Aug-2006 marck

Eliminate a pair of unneeded parentheses slipped in from previous version of
fix.

Noticed by: ru


161017 06-Aug-2006 marck

strlen(3) returns size_t, which is not strictly equivalent to int an 64-bit
archs, hence printf(3) warning. Fix this.

Noticed by: tinderbox
Approved by: rse


161000 05-Aug-2006 rse

Do not pass-through the tailing newline character from the ctime(3)
output to setproctitle(3) in order to get rid of the ugly two-character
escape sequence "\n" in the ps(1) output of a dump(8) process:

<< [...] finished in 0:00 at Sat Aug 5 14:44:39 2006\n (dump)
>> [...] finished in 0:00 at Sat Aug 5 14:44:39 2006 (dump)


157660 11-Apr-2006 dwmalone

Dump keeps a bitmap of the state of various inodes, which is sized
to match the number of inodes on the disk. If we find a directory
entry with a crazy inode number in it, don't look beyond the end
of the bitmap to find that inode's state. Instead skip that directory
entry and print a warning.

Reviewed by: iedowse
MFC after: 3 weeks


155981 24-Feb-2006 keramida

Revert a minor glitch of revision 1.69

Submitted by: Andriy Tkachuk <andrit@ukr.net>
X-MFC after: RE approval


153674 23-Dec-2005 imp

Add the example that green@ used in his commit log for the dump to a
pipe functionality. I've done a cvs log main.c about a dozen times
now. Maybe others will find this useful.


148600 31-Jul-2005 ceri

Correct the description of the TAPE environment variable.
Based on:

PR: docs/84200
Submitted by: Gary W. Swearingen <garys at opusnet dot com>
MFC after: 1 week


145794 02-May-2005 delphij

Make gcc4 happy by making consistent signedness.


145238 18-Apr-2005 imp

'r' disk devices no longer exist, so don't try to create a pathname
that has an 'r' in it.

This also eliminates a bogus use of strlcat.
PR: 80064


142968 02-Mar-2005 iedowse

Use a signal-safe type for two variables that are used to synchronise
with a signal handler. This fixes a race condition introduced by
compiler reordering that caused dump to sometimes get stuck,
especially while dumping large filesystems.


141965 16-Feb-2005 obrien

va_list style tweaks


141611 10-Feb-2005 ru

Sync program's usage() with manpage's SYNOPSIS.


140602 21-Jan-2005 wes

Improved error checking for existence of a .snap directory to
generate snapshots in when -L is requested. If the .snap directory
does not exist, or is not a directory, issue a warning and revert
to the non- live behavior.

Obtained from: St. Bernard Software RAPID


140415 18-Jan-2005 ru

Sort sections.


140368 17-Jan-2005 ru

Added the EXIT STATUS section where appropriate.


139422 30-Dec-2004 obrien

Clearer va-args usage.

Submitted by: bde


138314 02-Dec-2004 maxim

o Do not dump core in -W if dumpdates was not readable and ddatev == NULL.

PR: bin/69977

o Remove unused ddates_in.

Obtained from: NetBSD
MFC after: 3 weeks


132762 28-Jul-2004 kan

Avoid casts as lvalues.


130753 19-Jun-2004 iedowse

Print the `99.99% done, finished soon' message only as often as the
normal status messages. Previously a large number of these new
messages could be spewed out towards the end of a dump.

Reviewed by: imp


129556 21-May-2004 imp

Enter the 1990's and assume that the computer knows what time it is.
Print the ETA of dump being finished, rather than a cryptic delta
time. Also, if we have written more blocks than the tapesize, assume
that we are 99.99% done and that we'll be finished 'soon'.


129327 17-May-2004 ru

Assorted markup, grammar, and spelling fixes.


128175 13-Apr-2004 green

Add -P arguments for dump(8) and restore(8) which allow the user to
use backup methods other than files and tapes. The -P argument is
a normal sh(1) pipeline with either $DUMP_VOLUME or $RESTORE_VOLUME
defined in the environment, respectively.

For example, I can back up my home to three DVD+R[W]s as so:
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/ad0s2e 40028550 10093140 26733126 27% /home
green# dump -0 -L -C16 -B4589840 -P 'growisofs -Z /dev/cd0=/dev/fd/0' /home


128166 12-Apr-2004 green

Improve the warnings for dump -L and do not bother doing the snapshot if
it is specified for read-only filesystems.

Submitted by: Jason Young <jyoung8607@hotmail.com>
PR: 46672


128085 10-Apr-2004 bde

Fixed unformatting of copyright clause 4 in previous commit.


128073 09-Apr-2004 markm

Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core, imp


124551 15-Jan-2004 alex

Add RSH to the list of enviroment variables.


124132 04-Jan-2004 iedowse

Define _PATH_MKSNAP_FFS and use it in dump(8) instead of assuming
that mksnap_ffs(8) can be found using the current $PATH.

Reviewed by: mckusick


122874 18-Nov-2003 mckusick

Document that the live dump command (`dump -L') creates its snapshot
in the .snap directory in the root of the filesystem being dumped.
Document that if the .snap directory is missing that it must be
created manually and that it should be owned by user root and
group operator and set to mode 770 before a live dump can be run.


122787 16-Nov-2003 mckusick

Convert the live dump command (`dump -L') to use mksnap_ffs instead
of trying to directly create the snapshot itself. This change allows
users logged into the system as operator to run live dumps.

Note that dump no longer tries to create the snapshot in the root of
the filesystem, but rather in a .snap directory in the root of the
filesystem. The reason is that the operator is usually not permitted
to write into the root of the filesystem. The newfs command and
background fsck have both been modified to create a .snap directory
in the root of the filesystem, but if neither of these have been run,
then the .snap directory must be created manually by the superuser
before a live dump can be run. The .snap directory should be owned
by user root and group operator and set to mode 770.


122669 14-Nov-2003 johan

Make this WARNS=2 clean by
- using (intmax_t) and %j
- giving a non-empty format string to msg()

Include <stdint.h> directly instead of depending on <inttypes.h>
to do it.

Tested by: make universe


122140 05-Nov-2003 kensmith

- add explanation of what an active file system is
- explain the reason for permitting 32 read errors for a dump

PR: docs/35602 and docs/35607
Reviewed by: jhb
Approved by: blackend (mentor)


122060 04-Nov-2003 iedowse

In mapdirs(), do not use the `dp' inode pointer after searchdir()
has been called, since it points to a shared inode buffer that may
be overwritten. The two cases where `dp' was used incorrectly appear
to have been overlooked when "nodump" inheritance was first added
in revision 1.12.

This is reported to correct propagation of the nodump flag on
directories that are larger than one block in size.

PR: bin/58912
Submitted by: Volker Paepcke <vpaepcke@incore.de>
MFC after: 1 week


122047 04-Nov-2003 iedowse

Add missing prototype for cread().


120323 21-Sep-2003 ps

revert to version 1.25 and use va_copy to obtain another copy of the
variable arguments. version 1.26 incorrectly truncated the message if
the buffer was too long.

Requested by: bde


120306 20-Sep-2003 ps

Fix improper use of varargs.

Reviewed by: peter


117533 14-Jul-2003 grog

Remove reference to max block size. dump no longer limits the block size.


116035 08-Jun-2003 charnier

Add section number to .Xr


114810 07-May-2003 mckusick

Dump is hard-wired to believe that it can read disks on
1024-byte boundaries. For many years this was a reasonable
assumption. However, in recent years we have begun seeing
devices with 2048-byte sectors. These devices return errors
when dump tries to read starting in the middle of a sector
or when it tries to read only the first half of a sector.
Rather than change the native block size used by dump (and
thus create an incompatible dump format), this fix checks
for transfer requests that start and/or end on a non-sector
boundary. When such a read is detected, the new code reads
the entire sector and copies out just the part that dump
needs.

Reviewed by: Poul-Henning Kamp <phk@critter.freebsd.dk>
Approved by: re (John Baldwin <jhb@FreeBSD.org>)
Sponsored by: DARPA & NAI Labs.


114463 01-May-2003 ru

Removed all vestiges of KerberosIV.


114456 01-May-2003 ru

Fixed the MLINKS assignment style.


114452 01-May-2003 markm

De-Kerberise (KerberosIV). KerberosIV is no longer present, and
remote backups can still be done with Kerberos authentication using
SSH and Kerberos 5.


113214 07-Apr-2003 mdodd

Avoid a name conflict with future functionality:

getfstab() -> dump_getfstab()


111287 23-Feb-2003 ru

Sort options.


109825 25-Jan-2003 dillon

Readjust the cache initialization code to make it more obvious that the
cache is bypassed when disabled.


109190 13-Jan-2003 dillon

really, this time for sure. Fix formatting in usage().


109189 13-Jan-2003 dillon

Grr. I keep forgetting things. Include -C in dump's usage() .


109188 13-Jan-2003 dillon

Add support for obsolete option form for -C


109187 13-Jan-2003 dillon

Add a caching option to dump. Use -C. Note that NetBSD has a caching option
called -r but it takes 512 byte blocks instead of megabytes, and I felt a
megabytes specification would be far more useful so I did not use the same
option character.

This will *greatly* improve dump performance at the cost of possibly
missing filesystem changes that occur between passes, and does a fairly
good job making up for the loss of buffered block devices. Caching is disabled
by default to retain historical behavior.

In tests, dump performance improved by about 40% when dumping / or /usr.

Beware that dump forks and the cache may wind up being larger then you
specify, but a more complex shared memory implementation would not produce
results that are all that much better so I kept it simple for now.

MFC after: 3 days


109067 10-Jan-2003 sheldonh

Add TAPE to the ENVIRONMENT section and standardize the section, using a
list instead of prose.

MFC after: 1 month


108221 23-Dec-2002 ru

Fixed the abuses of .Ql visible on stderr in troff mode.

PR: docs/37176


107788 12-Dec-2002 ru

Uniformly refer to a file system as "file system".

Approved by: re


107559 03-Dec-2002 mckusick

Add the `L' option to dump to notify it that it is dumping a
live filesystem. To obtain a consistent dump image, dump takes
a snapshot of the filesystem and then does a dump of the snapshot.
The snapshot is removed when the dump is complete.

Also add an operator warning that the `L' option should be used
if dump is run on a live filesystem without the `L' option being
specified. The alternative would be to silently use a snapshot
any time that a live filesystem is dumped, but this change in
dump semantics seemed too drastic at this time.

Sponsored by: DARPA & NAI Labs.
Approved by: re


107542 03-Dec-2002 mckusick

Correct the estimated block count calculated by dump to account
for the minimal amount of space used by a snapshot.

Sponsored by: DARPA & NAI Labs.


107541 03-Dec-2002 mckusick

Properly handle UFS2 sparsely allocated inodes. The UFS2 filesystem
only preallocates a small number of inodes. The dump program tries
to scan through all the allocated inodes on a filesystem which
causes bad behavior if they have never been allocated. Thus dump
must calculate the set of inodes that have actually been allocated
and scan only those inodes.

Sponsored by: DARPA & NAI Labs.


107430 30-Nov-2002 mckusick

Mark snapshots so that dump will dump them as zero length
regular files rather than trying to interpret the snapshot.

Sponsored by: DARPA & NAI Labs.


107294 27-Nov-2002 mckusick

Create a new 32-bit fs_flags word in the superblock. Add code to move
the old 8-bit fs_old_flags to the new location the first time that the
filesystem is mounted by a new kernel. One of the unused flags in
fs_old_flags is used to indicate that the flags have been moved.
Leave the fs_old_flags word intact so that it will work properly if
used on an old kernel.

Change the fs_sblockloc superblock location field to be in units
of bytes instead of in units of filesystem fragments. The old units
did not work properly when the fragment size exceeeded the superblock
size (8192). Update old fs_sblockloc values at the same time that
the flags are moved.

Suggested by: BOUWSMA Barry <freebsd-misuser@netscum.dyndns.dk>
Sponsored by: DARPA & NAI Labs.


104290 01-Oct-2002 bde

Changed "file system" back to "filesystem" in the usage message. English
rules don't apply to tokens that are supposed to represent single args.
This was only fixed in the man page.

Fixed other differences between the man page and the usage message (1
formatting bug and 1 syntax bug).


103949 25-Sep-2002 mike

Use the standardized CHAR_BIT constant instead of NBBY in userland.


102464 27-Aug-2002 trhodes

Fix some 'SYNOPSIS' and 'usage' messages.


102446 26-Aug-2002 trhodes

Fix Synopsis


102411 25-Aug-2002 charnier

Replace various spelling with FALLTHROUGH which is lint()able


102231 21-Aug-2002 trhodes

s/filesystem/file system/g as discussed on -developers


100207 17-Jul-2002 mckusick

Change utimes to set the file creation time (for filesystems that
support creation times such as UFS2) to the value of the
modification time if the value of the modification time is older
than the current creation time. See utimes(2) for further details.

Sponsored by: DARPA & NAI Labs.


99626 08-Jul-2002 iedowse

Oops, the previous revision (1.22) introduced a potential alignment
issue, since the MAXBSIZE-sized buffers are accessed as arrays of
block pointers, but were declared as char[] arrays. Use a union to
avoid this, which also makes a number of casts unnecessary.

Pointed out by: bde
Reviewed by: bde


99579 08-Jul-2002 robert

- Do not include <utmp.h> for no reason.
- Remove unneeded utmp path constant.


99564 08-Jul-2002 iedowse

Use a fixed MAXBSIZE-size auto array instead of a static pointer
to a malloc'd buffer in dmpindir() and dirindir(). These functions
recursively call themselves to handle deeper levels of indirect
blocks, so a single static buffer was not suitable.

Bug tracked down by: Don Lewis <dl-freebsd@catspoiler.org>
Approach suggested by: bde


99562 08-Jul-2002 iedowse

Replace the use of %qd with intmax_t/%jd and fix a number of -Wall
and -Wformat warnings:
o Include timeconv.h for the time conversion functions.
o Remove unused variables.
o Correct a few cases where %d was used when printing longs.


99530 07-Jul-2002 iedowse

Fix some printf format errors.

Submitted by: Don Lewis <dl-freebsd@catspoiler.org>


99501 06-Jul-2002 charnier

The .Nm utility


98542 21-Jun-2002 mckusick

This commit adds basic support for the UFS2 filesystem. The UFS2
filesystem expands the inode to 256 bytes to make space for 64-bit
block pointers. It also adds a file-creation time field, an ability
to use jumbo blocks per inode to allow extent like pointer density,
and space for extended attributes (up to twice the filesystem block
size worth of attributes, e.g., on a 16K filesystem, there is space
for 32K of attributes). UFS2 fully supports and runs existing UFS1
filesystems. New filesystems built using newfs can be built in either
UFS1 or UFS2 format using the -O option. In this commit UFS1 is
the default format, so if you want to build UFS2 format filesystems,
you must specify -O 2. This default will be changed to UFS2 when
UFS2 proves itself to be stable. In this commit the boot code for
reading UFS2 filesystems is not compiled (see /sys/boot/common/ufsread.c)
as there is insufficient space in the boot block. Once the size of the
boot block is increased, this code can be defined.

Things to note: the definition of SBSIZE has changed to SBLOCKSIZE.
The header file <ufs/ufs/dinode.h> must be included before
<ufs/ffs/fs.h> so as to get the definitions of ufs2_daddr_t and
ufs_lbn_t.

Still TODO:
Verify that the first level bootstraps work for all the architectures.
Convert the utility ffsinfo to understand UFS2 and test growfs.
Add support for the extended attribute storage. Update soft updates
to ensure integrity of extended attribute storage. Switch the
current extended attribute interfaces to use the extended attribute
storage. Add the extent like functionality (framework is there,
but is currently never used).

Sponsored by: DARPA & NAI Labs.
Reviewed by: Poul-Henning Kamp <phk@freebsd.org>


97956 06-Jun-2002 phk

s/daddr_t/ufs_daddr_t/g

This should fix the issues which cropped up after daddr_t grew up.

Sponsored by: DARPA & NAI Labs.


97474 29-May-2002 ru

mdoc(7) police: nits.


96807 17-May-2002 jmallett

Move _PATH_WALL from dump and shutdown's local pathnames.h to paths.h.


96707 16-May-2002 trhodes

more file system > filesystem


96478 12-May-2002 phk

Sigh, more BBSIZE related breakage.

Sponsored by: DARPA & NAI Labs.


94985 18-Apr-2002 ru

Replaced exists() tests with two equivalent defined().

LIBDIR is defined in bsd.own.mk but sys.mk no longer
includes bsd.own.mk as of revision 1.60.


94911 17-Apr-2002 trhodes

dump(8)'s manual page is confusing in its use of records, blocks,
blocksizes, etc
does not give the default of -b
only mentiones rdump in the NAME section
uses both filesystem and file system in similar contexts

PR: 34248
Submitted by: Gary W. Swearingen <swear@blarg.net>
MFC after: 3 days


92837 20-Mar-2002 imp

o remove __P
o Use ANSI function definitions
o unifdef -D__STDC__


92334 15-Mar-2002 ru

mdoc(7) police: tiny fixes.


91540 01-Mar-2002 iedowse

Add a new "-S" flag to dump to allow it just print out dump estimate
size and then exit.

PR: bin/35450
Submitted by: Mark Hannon <markhannon@optushome.com.au>
Obtained from: NetBSD
MFC after: 1 week


90743 16-Feb-2002 iedowse

Supply progress information in dump's process title, which is useful
for monitoring automated backups. This is based on a patch by Mikhail
Teterin, with some changes to make its operation clearer and to
update the proctitle more frequently.

PR: bin/32138


90742 16-Feb-2002 iedowse

On receipt of a SIGINFO, schedule an immediate printout of the
percentage complete and remaining time estimate.

PR: bin/32138
Submitted by: mi


90496 11-Feb-2002 iedowse

Make dump's behaviour more sensible when the output file is a fifo.
Normally trewind() performs a close-open-close cycle to rewind the
tape when closing the device, but this is not ideal for fifos. We
now skip the final open-close if the output descriptor is a fifo.

PR: bin/25474
Submitted by: Alex Bakhtin <bakhtin@amt.ru>
MFC after: 1 week


90492 10-Feb-2002 dd

Make it clear that dump(8)'s honoring of the UF_NODUMP flag is subject
to the -h option. While here, xref chflags(1).

PR: 33907
Submitted by: Gary W. Swearingen <swear@blarg.net>


89572 19-Jan-2002 dillon

I've been meaning to do this for a while. Add an underscore to the
time_to_xxx() and xxx_to_time() functions. e.g. _time_to_xxx()
instead of time_to_xxx(), to make it more obvious that these are
stopgap functions & placemarkers and not meant to create a defacto
standard. They will eventually be replaced when a real standard
comes out of committee.


87413 05-Dec-2001 obrien

Files in subdirectories of directories that have the nodump flag set
are sometimes incorrectly being dumped.

The problem arises because the subdirectory only gets its entry
cleared from usedinomap if it is also present in dumpinomap, and it is
the absence of a directory in usedinomap that internally indicates
that the directory is under the effects of UF_NODUMP (either directly
or inherited).

PR: 32414
Submitted by: David C Lawrence <tale@dd.org>


87325 04-Dec-2001 obrien

Default to WARNS=2.
Binary builds that cannot handle this must explicitly set WARNS=0.

Reviewed by: mike


86473 17-Nov-2001 iedowse

Zap a number of #ifdef sunos blocks, and all of the `register'
keywords.


86470 16-Nov-2001 iedowse

Give a sensible error message when the filesystem to be dumped is
not listed in /etc/fstab. Previously, the user would be greeted
with "DUMP: bad sblock magic number" when dump tried to parse
the directory contents as an FFS filesystem.

PR: bin/12789
Submitted by: Bob Willcox <bob@pmr.com>


85635 28-Oct-2001 dillon

Make the protocol/dumprestore.h header match restore's idea of the dump
header for the case where sizeof(time_t) != sizeof(int). dumprestore.h
was embedding time_t when it should have been embedding int32_t.

Use time_to_time32() and time32_to_time() to convert between the
protocoll/file-format time and time_t.


85622 28-Oct-2001 dillon

deltat declared time_t, msg("") call used %d (assumed time_t == int).
Changed deltat to be an int (result of delta time calculation).

MFC after: 1 day


83083 05-Sep-2001 ru

SECURITY.

Notify operators using wall(1)'s -g option.
Drop ``setgid tty'' privilege.

Obtained from: OpenBSD
MFC after: 1 month


82974 04-Sep-2001 ru

Don't reinvent the wheel; use strptime(3).

MFC after: 2 weeks


81497 10-Aug-2001 kris

Mark some functions as __printflike()

MFC After: 1 week


79762 15-Jul-2001 dd

Sort options in DESCRIPTION.


79761 15-Jul-2001 dd

Bump date for addition of -D.


79754 15-Jul-2001 dd

Remove whitespace at EOL.


79530 10-Jul-2001 ru

mdoc(7) police: removed HISTORY info from the .Os call.


79520 10-Jul-2001 ru

mdoc(7) police:
Restored .Pa for ``dumpdates'' (it's still a file).
Also, removed duplicate ``file'' words.


79442 09-Jul-2001 dillon

Add manual page and usage for dump -D (supplied by Dima Dorfman) (will also
be MFC'd)

Submitted by: Dima Dorfman <dima@unixfreak.org>


79428 08-Jul-2001 dillon

Oops, forgot to add 'D' to the option morphing block.


79427 08-Jul-2001 dillon

Add a -D option to dump, allowing the path for the /etc/dumpdates file to be
changed, so independant entities backing up the same thing to different
media can be made not to trip over each other.

MFC after: 3 days


79039 01-Jul-2001 mikeh

Convert two instances of a lseek()+read() combination to a pread().

PR: bin/17640
MFC after: 2 weeks


77929 09-Jun-2001 dd

Since we use getopt (in rev. 1.12), there's no need for the case's for
the individual options to increment argv and decrement argc. This
caused the -T option to swallow an extra argument.

PR: 27982
Submitted by: Samuel Greear <sgreear@vsni.com>


75689 19-Apr-2001 jkh

Fix bogon with the nodump flag.

Submitted by: Dima Dorfman <dima@unixfreak.org>


75023 30-Mar-2001 obrien

Remove two lint directives that aren't needed since rev 1.5.


74873 27-Mar-2001 obrien

Make rev 1.5 better match the rest of dump(8)'s output.


74872 27-Mar-2001 obrien

Do not exit if unable to read /etc/dumpdates or create it.
If one is trying to dump or repair an ill system, give the user a fighting
chance. Refusing to operate w/o a very non-critical file (feature) is
just plain stupid.


74815 26-Mar-2001 ru

- Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.


74531 20-Mar-2001 ru

Set the default manual section for sbin/ to 8.


74028 09-Mar-2001 obrien

bye-bye documented raw devices


73986 08-Mar-2001 obrien

Move _PATH_DEFTAPE to <paths.h> to remove all the duplication of definitons,
and remove leading `r'(aw) from it.


73375 03-Mar-2001 obrien

Support inheritance of the "nodump" flag down a hierarchy.

Submitted by: Dima Dorfman <dima@unixfreak.org>
Obtained from: NetBSD


71787 29-Jan-2001 phk

Use <sys/queue.h> instead of home-rolled list.

Submitted by: "Jason Smethers" <jsmethers@pdq.net>


71750 28-Jan-2001 phk

Use \a instead of \007 for making noise.

Submitted by: "Jason Smethers" <jsmethers@pdq.net>


70152 18-Dec-2000 ru

Prepare for mdoc(7)NG.


68960 20-Nov-2000 ru

mdoc(7) police: use the new features of the Nm macro.


68575 10-Nov-2000 ru

Avoid use of direct troff requests in mdoc(7) manual pages.


60132 07-May-2000 kris

Update device name.


59216 14-Apr-2000 imp

Add include of errno.h where needed, remove extern int errno where not.

These commits were inspired by a similar commit to netbsd.


58928 02-Apr-2000 joerg

Avoid rawname() stupidly prepending an `r' before the device name even
in cases where the supplied name was already pointing to a character
special device. This fixes the breakage that occured when trying to
dump a filesystem by name (e. g. /usr), with an fstab already
mentioning the raw device name (like /dev/rda0g) where dump attempted
to use /dev/rrda0g then.

Also removed the now obsolete remark that fstab were carrying block
special names.


57668 01-Mar-2000 sheldonh

Remove single-space hard sentence breaks. These degrade the quality
of the typeset output, tend to make diffs harder to read and provide
bad examples for new-comers to mdoc.


57660 01-Mar-2000 nik

Remove xrefs to obsolete ft driver.

PR: docs/17080
Submitted by: Udo Erdelhoff <ue@nathan.ruhr.de>


57449 24-Feb-2000 markm

Use libcrypto instead of libdes.


56407 23-Jan-2000 mpp

Fix various man pages to stop abusing the .Bx macro to generate
the strings "FreeBSD" and "NetBSD". Use the .Fx or .Nx macro
instead.


55760 10-Jan-2000 phantom

Add `.Nm rdump' to NAME section.


53084 10-Nov-1999 imp

vsprintf -> vsnprintf in msg().


51444 20-Sep-1999 markm

Prepare for K5.


51435 19-Sep-1999 markm

Fix for new KerberosFix for new Kerberos44


50476 28-Aug-1999 peter

$Id$ -> $FreeBSD$


48688 08-Jul-1999 billf

Fix nested if/else within an if


48447 02-Jul-1999 jkh

Fix time of last dump handling.

Submittted by: Richard Wiwatowski <rjwiwat@ozemail.com.au>


47446 24-May-1999 jmz

Fix typo in dump reporting

PR: bin/10573
Submitted by: Christian Weisgerber <naddy@mips.rhein-neckar.de>


46360 03-May-1999 mjacob

temporary workaround for bin/11464


44929 21-Mar-1999 jkh

The attached patch to /usr/src/sbin/dump/optr.c changes the comparison
so that dumps are treated by dump -w as having been done on midnight
of the day they were actually run. This makes dump -w behave as
expected for regularly scheduled daily dumps - if they all run the
same day. It makes dump -w behave strangely if you dump late in the
day and check again after midnight, but that is the lesser of two
evils.

Submitted by: Mike Meyer <mwm@phone.net>
PR: 9429


40668 27-Oct-1998 dima

64bit fixes.
(Note: ``dump'' doesn't work on alpha yet. Apparently there's a problem
somewhere is the physio() area)

Submitted by: myself && Matt Dillon.


39559 22-Sep-1998 roberto

Change rst0 into rsa0.


39495 19-Sep-1998 obrien

Remove useless `BINOWN=root' now that it is the default.


39382 16-Sep-1998 andreas

checked, that new sa CAM driver takes care of using buffer sizes
<= 64 KB. Was able to dump/restore with block sizes of 96, 128 and
200. using systat -vmstat I noticed transfer blocksizes <= 64KB,
so physio's limits aren't touched.
Since this check was originally from me, I feels safe now to back it
out.


39256 15-Sep-1998 gibbs

Add support for dealing with ENOSPC as the error code returned by a tape
device hitting EOM on a write.


38149 06-Aug-1998 markm

Fix LIBDIR (for aout/ELF).


37635 14-Jul-1998 jkoshy

Make `dump' exit codes confirm to manual page.

PR: 5346
Style-check-by: bde


36997 15-Jun-1998 charnier

Correct use of .Nm. Add rcsid. Remove unused #includes.


36115 17-May-1998 fenner

Turn on TCP_NODELAY on the remote socket, to turn off sender silly window
syndrome avoidance. The combination of SWS avoidance and ack-every-other
causes low throughput if the block size divided by the MSS is odd (which
is true with the default block size and MSS).
Turning on TCP_NODELAY disables the Nagle algorithm and sender SWS avoidance.
The rdump request/response protocol can not invoke Nagle and cannot cause
SWS, so this has no negative effects.


35911 10-May-1998 steve

Fix minor typo.

PR: 6571
Submitted by: Stephen J. Roznowski <sjr@home.net>


32758 25-Jan-1998 jb

read() and write() return ssize_t not int, so the first arg to atomic()
should be ssize_t too.


32219 03-Jan-1998 steve

The default dumplevel is 0.

PR: 5413
Submitted by: NOKUBI Hirotaka <hnokubi@yyy.or.jp>


30692 24-Oct-1997 markm

Make this part of the 'krb' distribution.


30568 19-Oct-1997 joerg

Fix the man page description about what will go into an incremental
backup.

PR: docs/4785
Submitted by: Matthew Dillon


30341 12-Oct-1997 joerg

Do not account the tape change time for ETA estimations.

PR: bin/4369
Submitted by: blank@fox.uni-trier.de (Sascha Blank)


30338 12-Oct-1997 joerg

The unit for the B option is 1 KB, not `dump records'.

PR: docs/4223


29919 28-Sep-1997 markm

Changes for the new KTH KerberosIV.


28633 23-Aug-1997 steve

Remove the reference to the nonexistant dump(5) manpage.

PR: docs/3704


26543 10-Jun-1997 charnier

Add Id. Cosmetic in usage string.


25514 06-May-1997 joerg

Fix a long-standing bug with dump not treating errors correctly. They
were mishandled as an EOF, which became fatal if your first tape was
accidentally write-protected.

PR: bin/850 dump treats write-protect as an EOT...


25288 29-Apr-1997 wollman

Implement Kerberized rcmd for rdump/rrestore. This is lacking the
options one would normally expect to set the realm, enable encryption,
and whatnot, but this actually is able to contact the remote server,
so at least it's a start. (As a bonus, the stripped static binary is
unquestionably exportable.)


23892 15-Mar-1997 peter

Document the -a option in .Fl form instead of .Cm form to be consistant
with the rest of the manpage. (Lite2 documents it in getopt form, Lite1
did it in old-style arg format)


23891 15-Mar-1997 peter

The -a option (autosize) option got mangled during the Lite2 merge.

Pointed out by: Tom Jackson <tom@peeper.jackson.org>


23672 11-Mar-1997 peter

Merge Lite2 changes (rather bigish, the dump/restore folks should check)


23670 11-Mar-1997 peter

This commit was generated by cvs2svn to compensate for changes in r23669,
which included commits to RCS files with non-trunk default branches.


22990 22-Feb-1997 peter

Revert $FreeBSD$ to $Id$


22810 16-Feb-1997 jkh

Update CHANGEDSINCE macro to conform to -current dinode.h


22505 09-Feb-1997 eivind

Removed default setuid and added a comment to the manpage explaining this.


22192 01-Feb-1997 joerg

Add the `a' option (``auto-size'') to bypass all tape length
considerations, and dump right to the end of medium.


21673 14-Jan-1997 jkh

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


21635 13-Jan-1997 wosch

Sort cross references.


21413 08-Jan-1997 peter

Fix double typo


21409 07-Jan-1997 imp

Fix many buffer overflows, correct usage of strcat and implement
$TAPE. Inspired by OpenBSD's work in this area.

Reviewed by: Peter Wemm, Guido van Rooij and Jordan Hubbard.
Obtained from: OpenBSD


21407 07-Jan-1997 pst

bin/1789: dump estimates a negative number of tapes needed for huge dumps


21021 29-Dec-1996 obrien

Backing out my change of /etc/rmt -> /usr/sbin/rmt.
Added comments in both files stateing why /etc/rmt is correct so someone
else wont do the same thing again.

Suggested by: Warner Losh & Ollivier


20996 29-Dec-1996 obrien

rmt is /usr/sbin/rmt, not /etc/rmt which is a link to /usr/sbin/rmt


19317 01-Nov-1996 fenner

Use fprintf(stderr,) instead of msgtail() so it works for restore as well.


19315 01-Nov-1996 peter

Temporarily disable an information message that was added in the last
commit.. This causes a link error in sbin/restore which also uses this
file.


19300 01-Nov-1996 fenner

Make rdump error messages a little clearer and make them look like dump
messages, and make it explicit that stderr output came from the remote end.
(e.g. "rmt: command not found")


19239 28-Oct-1996 fenner

If rcmd() fails, return immediately instead of trying a bunch of
setsockopt()'s on a -1 file descriptor.

Remove attempt to decrease TCP MSS; it makes no sense.

Set the IP TOS to IPTOS_THROUGHPUT as an indication that this is an
application sending large blocks of data, as recommended by RFC1700.


18410 20-Sep-1996 nate

ts_sec -> tv_sec
ts_nsec -> tv_nsec


18286 14-Sep-1996 bde

Don't use __dead or __pure in user code. They were obfuscations
for gcc >= 2.5 and no-ops for gcc >= 2.6. Converted to use __dead2
or __pure2 where it wasn't already done, except in math.h where use
of __pure was mostly wrong.


17787 23-Aug-1996 mpp

Use the .At macro where appropriate.


12986 23-Dec-1995 joerg

Put the superfluous "DUMP:" back in the statistics line, to make
Amanda happy.


12377 18-Nov-1995 joerg

Andreas Klemm's patch set for dump(8), with some minor (cosmetic)
changes and one addition by me.

. Use reasonable defaults for the tape drive (/dev/rst0) instead of
something we actually don't have.

. Add a summary line displaying the alapsed time and the total throughput.

. Replace "rmt" for the remote location of rmt(8) by "/etc/rmt", since this
is the historical protocol, and relying on the $PATH causes a big pain.
Make it adjustable via an environmental variable though.

Reviewed by: joerg (for Andreas' part)
Submitted by: andreas@knobel.gun.de (Andreas Klemm)


11770 24-Oct-1995 jkh

Fix a silly bug where MAXPATHLEN was subtracted from the string length rather
than the other way around!
Submitted by: Elmar Bartel <bartel@informatik.tu-muenchen.de>


9987 07-Aug-1995 wollman

Delete bogus referneces to timezone code internal header file `tzfile.h',
which is no longer bogusly installed in /usr/include.


9527 15-Jul-1995 rgrimes

Man page was incorrectly pointing to /etc/dump, it should be /sbin/dump.

Submitted by: faried nawaz <fn@big-brother.csrv.uidaho.edu>


9294 24-Jun-1995 joerg

When using dump/rdump on large filesytems (my case 3 GB), the lseek
claims multiple times to have failed. The problem is a off_t is
converted into a int and checked for a negative. A true lseek check
should be checking if the off_t is equal to -1 for failure.

(Suggested fix from PR #bin/461)

Submitted by: mark tinguely <tinguely@opus.cs.ndsu.NoDak.edu>


8871 30-May-1995 rgrimes

Remove trailing whitespace.


5912 26-Jan-1995 jkh

Add pointer to the `ft' command.


3974 28-Oct-1994 joerg

Fixed an evil bug where rawname() could write across the boundaries of
an array. The bug became obvious in the old system where the array was only
32 characters long (now MAXPATHLEN). Dump honored its name then (:-)
and dumped its core when calling dump -w for a fstab that contained rather long
NFS file system names. Even though this is rather unlikely to happen now,
a bug is a bug:)


1855 05-Aug-1994 wollman

Convert to our man installation style. Also fixed long-standing bug
in `fastboot'/`fasthalt' in which the interpreter would hang around
after `reboot' or `halt' is run, causing an irritating ``Killed'' message.


1559 26-May-1994 rgrimes

This commit was generated by cvs2svn to compensate for changes in r1558,
which included commits to RCS files with non-trunk default branches.