Commit Graph

218 Commits

Author SHA1 Message Date
enami c886a0529a Convert `nblksread' to in terms of device block size. This restores
originally intended behaviour (see tech-userlevel archive around 1999 March).
2003-02-04 08:11:50 +00:00
enami 799974edb6 Cosmetic changes. 2003-02-04 08:06:42 +00:00
hannken c089bab65b Merge "struct cheader" and "struct cdesc" into an union.
No more alignment problems if the alignment of these two differs.

Approved by: Manuel Bouyer <bouyer@netbsd.org>
2003-02-03 23:08:37 +00:00
fvdl a3ff3a3038 Bump daddr_t to 64 bits. Replace it with int32_t in all places where
it was used on-disk, so that on-disk formats remain the same.
Remove ufs_daddr_t and ufs_lbn_t for the time being.
2003-01-24 21:55:02 +00:00
kleink b3df6303a9 Rename `sigset' locals to avoid symbol shadowing warning. 2003-01-16 09:38:37 +00:00
itojun bc0b132907 should be safer to cast to u_long than to cast down to int 2002-11-17 04:49:18 +00:00
tsutsui b2c857ac58 Add a cast to sizeof in printf() arg since _BSD_SIZE_T is unsigned long
on some ports.
2002-11-17 04:44:42 +00:00
itojun 94ccb14a99 use strlcpy. use sizeof() instead of xxLEN to avoid de-synchronization 2002-11-16 14:15:35 +00:00
wiz 2fb4b1db52 New sentence, new line. By Robert Elz with minimal fixes. 2002-10-01 13:40:23 +00:00
lukem 19eb88dfa1 Add fix from FreeBSD traverse.c 1.16:
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).

	FreeBSD PR: 32414
	Submitted by:   David C Lawrence <tale@dd.org>
2002-09-30 10:48:49 +00:00
lukem 7360d7b6ae Use ${NETBSDSRCDIR}/some/path instead of ${.CURDIR}/../../some/path 2002-08-19 10:16:51 +00:00
yamt 41d3da5939 save/restore errno in signal handlers. 2002-08-18 08:03:35 +00:00
itojun 2abe377059 defend against malicious line in ut_line, which could cause unwanted
writes to anything under /dev.  revoke setuid/gid privs earlier.
From: xs@kittenz.org
2002-08-16 20:21:48 +00:00
christos 8e5a0987a4 support utmpx 2002-08-02 02:07:09 +00:00
wiz f26d205dbb Typo fix, from jslag@prop.walkerart.org via OpenBSD. 2002-02-26 02:00:15 +00:00
lukem 56705fb84f rcsid 2002-02-19 23:11:28 +00:00
wiz b8ed997fc6 Fix typo in macro. 2002-01-21 18:14:33 +00:00
bouyer cf39881866 For -l: specify the timeout on the command line (in seconds) instead of
hardwiring it to 2s, as suggested on tech-userlevel.
2002-01-07 17:34:08 +00:00
lukem 9dcaec9cca Add -a to "auto-size" the tape, rather than relying upon other options
to define the tape size.  Requires the tape driver to either return ENOSPC
at end of media, or 0 when a write is attempted (such as the "early warning"
support in st(4) enabled with "mt eew 1").   From FreeBSD.
2001-12-30 04:03:16 +00:00
lukem 8975510a51 Fixes from FreeBSD:
- Fix error if first tape was write protected.  Fix NetBSD PRs 4754 and 6098.
- Make dump exit codes confirm to manual page.
- Use \a instead of \7 to make noise.
- Fix estimated number of tapes for huge dumps to cartridges.
- Use <sys/queue.h> SLIST_* instead of home-rolled lists.
- Do not exit if unable to read or create /etc/dumpdates.
- Support output (tape) device returning ENOSPC for end-of-media on a write.

Fixes by me:
- Remove unused ddates_in.
- Don't dump core if SIGINFO is received before 1 second has elapsed.
- Only process SIGINFO in current "active" child.
- Don't dump core in -w if dumpdates wasn't readable and ddatev == NULL
- Minor KNF; wrap some lines
2001-12-25 12:06:26 +00:00
lukem 1f19340e88 document more of the debug options 2001-12-25 11:56:14 +00:00
lukem 1c9f606d2a For dump_lfs(8), in getfstab(), only "lfs" (instead of "ufs" or "ffs").
Fix from Minoura Makoto in [bin/10525].
2001-12-24 03:02:34 +00:00
lukem b73cca7b92 clean up from time_t -> int32_t change in dumprestore.h 2001-12-23 14:42:22 +00:00
lukem 1ab8ecafe7 unifdef sunos 2001-12-23 12:54:53 +00:00
lukem b734f790f5 nuke trailing whitespace 2001-12-23 12:29:55 +00:00
lukem e9164a9509 When using the read cache in bread(), ensure that the current (sub)block
isn't past the end of the file system.

Should fix the "spins forever but doing nothing" bug that dump
would occasionally have.
2001-12-22 08:45:36 +00:00
lukem 4720d32cfe - use correct type for minTime in findlru() (size_t instead of int)
- clean up whitespace
2001-12-22 08:05:24 +00:00
lukem 750a014c75 In rawread(), add back a check to ensure that dump doesn't try to read
past EOM and fail with "short read error". This check was part of
traverse.c::bread(), and was removed when that function was migrated
to rcache.c::rawread() as part of the "read cache" functionality.

This should fix the problem with dump barfing on "short read" when "-r 0",
but I'm still debugging the problem where dump gets to a point and
"does nothing" when the read cache is being used.
2001-12-22 07:45:38 +00:00
soren 11c2f93975 Another little mistake, spotted by wiz. 2001-12-20 20:20:38 +00:00
soren dc53bf3cba Sync getopt() / man page with actual getopt options. 2001-12-20 20:10:33 +00:00
bouyer 740dbf0d62 Add a -l (autoload) flag. For multivolume dumps, this makes dump eject the
tape when a volume is full, and try to reopen the tape drive for 2 mn.
To be used with tape changers which load the next tape when the current one is
ejected.
While I'm there fix eject handling for remote tape.
2001-12-14 14:43:33 +00:00
wiz ed5ba510c2 One '\' too many. 2001-12-07 19:50:20 +00:00
lukem 29d31edd5f relax the restriction on -F that the file system image argument must be a
regular file
2001-11-16 04:41:23 +00:00
lukem 4c4307e3ce fix -Wshadow warnings 2001-11-01 08:03:03 +00:00
lukem ca2a1a8c3b in msg(), don't call va_list using functions twice in a row without calling
va_start() in between; reorder code so that we call vsnprintf and then
just fputs that buffer. crank the size of lastmsg whilst we're here
problem noted by Hideo Saito in [bin/14348].
2001-10-25 08:04:27 +00:00
wiz 699d58b177 Whitespace fixes, sort SEE ALSO, sort sections. 2001-10-15 13:43:06 +00:00
blymn a152a6a92a Add the capability for dump to print timestamps on all informational
messages.
2001-10-15 13:25:33 +00:00
lukem 1b81d6353d remove third argument (`int ns') from ffs_sb_swap(), and let ffs_sb_swap()
determine the endianness of the `struct fs *o' superblock from o->fs_magic
and set needswap as necessary, rather than trusting the caller to get
it right.  invariably, almost every caller of ffs_sb_swap() was calling it
with ns set to the wrong value for ns anyway!
ansi KNF ffs_bswap.c declarations whilst here.

this fixes all sorts of problems when trying to use other-endian file systems,
notably the kernel trying to access memory *way* off, possibly corrupting or
panicing, and userland programs SEGVing and/or corrupting things (e.g,
"fsck_ffs -B"  to swap a file system endianness).

whilst the previous rev of ffs_bswap.c (1.10, 2000/12/23) made this problem
worse, i suspect that the problem was always there and previous versions
just happened not to trash things at the wrong time.

FFS_EI should now be a lot more stable.
2001-08-17 02:18:46 +00:00
lukem b1a3e1140e - implement -F, which indicates that files-to-dump is a regular file
containing a file system image (instead of being a single file as
  part of a subtree dump)
- use "file system" instead of "filesystem" or "file-system"
2001-08-14 06:51:36 +00:00
lukem d5eaa32503 s/filesystem/file system/ 2001-08-14 05:44:44 +00:00
lukem b00117c331 s/filesystem/file system/dump.h 2001-08-14 05:44:15 +00:00
david a84be23c10 Patch to drop setgid tty privs until forking for operator notification 2001-08-08 16:49:54 +00:00
mrg d699caad5a reset uid & gid around calling rmthost(). 2001-07-17 10:56:53 +00:00
mrg 5c897ed92f display what signal, not "unknown" 2001-07-16 13:30:13 +00:00
wiz 73f545bb5b Drop arguments of .Os. 2001-06-05 11:22:41 +00:00
hannken de85f7e43e Assign a saved copy of dt->fs_file to mountpoint. dt->fs_file will be freed
otherwise resulting in a wrong spcl.c_filesys .
2001-06-03 09:51:10 +00:00
lukem 9af1692ef1 * improve parsing of file-systems-to-dump when a path is given:
- if it's a path to an unmounted file-system listed in /etc/fstab, use
	that instead of assuming the user wanted a subtree dump of the parent
	directory. this restores the behaviour of dump before the subtree
	dumping code went in.
      - if it's a path to a mounted file-system which is not in /etc/fstab,
	use the info from getmntinfo(3). previously, dump would choke.
* implement error checked malloc(), calloc(), strdup(), and use
  appropriately (some of the calloc()s weren't being checked)
* use 'file-system' instead of 'filesystem' in the man page
2001-05-28 01:09:54 +00:00
lukem cc5935ebba unifdef !__STDC__ (missed in previous) 2001-05-28 00:41:14 +00:00
lukem 713ffa0ec4 more KNF 2001-05-27 15:07:34 +00:00
lukem 99feaf5b29 knf to ansi 2001-05-27 14:17:56 +00:00
lukem e7bcd6bf17 use strdup appropriately 2001-05-26 07:48:15 +00:00
tron b82fe09a8d Add "e" option to usage message. Problem pointed out by Takahiro Kambe
in private e-mail.
2001-05-12 10:26:22 +00:00
tron b72a1f53d6 Fix bug in new "e" option: only eject tape if it is full, not if the dump
was finished.
2001-05-12 08:03:01 +00:00
tron d6be44d3c8 Add a new option "e" to "dump" which allows to eject tapes automatically
if a tape change is required.
2001-05-07 21:17:48 +00:00
christos b9140b5b9f restore needs the rcmd operations. 2001-02-04 21:37:29 +00:00
christos 91a0880aad fix redundant decls 2001-02-04 21:33:19 +00:00
scw e89e2124d1 Global variables don't need to be initialised to zero. 2000-12-13 22:45:12 +00:00
scw 8c5df3aa33 `dev_bsize' needs to be declared extern. 2000-12-13 22:44:44 +00:00
he ecaef6e7a4 Better fix for format warnings.
The type of time_t varies between ports, so we need to cast
before printing.  It appears to be sufficient and safe to use (int).
2000-10-11 20:25:29 +00:00
briggs 1e8e167a26 Fix format warnings 2000-10-11 04:57:42 +00:00
is 9979da6cbb Format string cleanups by Bill Sommerfeld. 2000-10-10 20:24:49 +00:00
perseant 2763cc1921 Working version of aborted dump{,_lfs} join. 1999-10-01 04:35:21 +00:00
perseant e8247b4092 Back out changes made on the 29th, not at all the changes I intended to commit.
(I don't know how I did it though ... I'll figure it out tonight.)
I'll reapply this, in a working form, this evening.
1999-09-30 20:39:58 +00:00
perseant 54fd3dd508 Adapt dump(8) to use filestore-independent (but still ufs-specific)
replacements for NINDIR, fsbtodb, etc.  Create dump_lfs by adding a few
LFS-filestore-specific routines.  As described in PR#8317.
1999-09-29 04:57:48 +00:00
abs 125cb421d5 Note the default tape device is taken from _PATH_DEFTAPE in /usr/include/paths.h 1999-07-01 19:18:47 +00:00
abs f6e78dac05 Default device is nrst0 not rst0 1999-06-28 01:32:49 +00:00
sommerfe 3a1d0ae5c7 Avoid byte overflow in block estimate for large files 1999-05-05 16:53:46 +00:00
bouyer 491d912f59 Implement a read cache, as announced on tech-userlevel. Default is 32k
read buffer size, 512 buffer or 15% of the user memory. Can be changed
with the -k and -s options.
1999-03-23 14:22:59 +00:00
bouyer 1746034b3e Handle "nodump" flag on directories, by not dumping any files or directories
under it. Based on some parts of PR 6705 by Brian Grayson.
In the Makefile, add (commented out) debug options that can be turned on.
1999-03-09 17:25:52 +00:00
mycroft f6590b22cd Clean up SYNOPSIS formatting. 1999-03-07 11:02:05 +00:00
bouyer 3e3f9c7795 #include machine/bswap.h and remove -lutil. 1999-01-15 13:32:05 +00:00
lukem 5b05a0328e s/1998/1999/ 1999-01-03 14:33:44 +00:00
lukem 2faa2d1ff5 add support for '-L label', which file(1) and restore(1) can extract from the
header. mostly based on [bin/6715] from Brian Grayson <bgrayson@ece.utexas.edu>

old filesystems don't have fs_qbmask and fs_qfmask set in the superblock;
fudge them as per code in /sys/ufs/ffs/ffs_vfsops.c::ffs_oldfscompat().
bug and suggested fix from Robert Elz <kre@munnari.OZ.AU> in [bin/6610]
    XXX: there may be other variables required as well...
1999-01-03 02:17:46 +00:00
lukem 21ae292644 add support for '-L label', which file(1) and restore(1) can extract
from the header.
mostly based on [bin/6715] from Brian Grayson <bgrayson@ece.utexas.edu>
1999-01-03 02:17:45 +00:00
tron 46ce633a7b Add reference to "st(4)" as suggested by Brian Grayson in PR bin/6713. 1999-01-02 16:28:39 +00:00
lukem 5f22ea3a31 fix estimate of blocks for subsets.
fix from Brian Grayson <bgrayson@ece.utexas.edu> in [bin/6607]
1998-12-28 13:38:29 +00:00
ross 029a64cc29 from Erik Bertelsen <erik@mediator.uni-c.dk>
{ put } { in } { lots } { of } { these } { to } { shut } { up } { egcs }
1998-08-25 19:18:12 +00:00
frueauf d3c525bb9a A dump level above 0 saves new or modified files since the last dump of
a lower level, not the same level. Fixes pr 5402 by Kevin Sullivan.
1998-08-11 09:52:35 +00:00
thorpej ae36dbe3f7 Turn on TCP_NODELAY on the remote tape socket, from FreeBSD. Here is the
commit message from Bill 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.

Also, put back the code that sets the TOS to "throughput", which seems to
have been erroneously removed during the Lite-2 merge.
1998-07-30 18:14:00 +00:00
lukem 786b86d71b use AF_LOCAL instead of AF_UNIX 1998-07-18 05:04:35 +00:00
mrg 2beab49a06 - use an array MAXHOSTNAMELEN+1 size to hold hostnames
- ensure hostname from gethostname() is nul-terminated in all cases
- minor KNF
- use MAXHOSTNAMELEN over various other values/defines
- be safe will buffers that hold hostnames
1998-07-06 06:45:41 +00:00
fair 1de21af0c2 PR#5697 + nroff cleanup 1998-07-03 11:17:46 +00:00
fair 3d7afc6d03 fix bad .Xr references 1998-04-29 09:49:10 +00:00
fair dc026e0515 Change occurrences of "UNIX" to .Ux or .At as appropriate. 1998-04-28 06:00:51 +00:00
bouyer d90a3686d5 PR bin/5346 from haszlaki@UAccess.NET:
After parsing the entries from /etc/dumpdates, remember ou entrie, in order
to print the date after /etc/dumpdates has been rewritten.
1998-04-22 08:55:18 +00:00
kleink 0cadc2826a Need <time.h> for time(), localtime() and ctime() prototypes. 1998-04-01 16:15:40 +00:00
kleink 22821b35cd Need <time.h> for ctime() prototype. 1998-04-01 16:08:26 +00:00
mrg c6f31851ad use <errno.h> 1998-03-30 01:54:40 +00:00
bouyer 34ccbd430c Add support for non-native byte order FFS. The dump is in filesystem byte
order, restore already knows how to byteswap dumps.
1998-03-18 16:54:56 +00:00
christos 98216d6649 Use strptime() instead of a home grown parser. 1998-02-04 14:49:11 +00:00
mrg 9f84449ae5 add missing .Nm sections. 1997-11-11 14:39:59 +00:00
enami 0d4522a03f Fix .Nm usage. 1997-10-20 09:11:16 +00:00
christos e230a48b57 CFLAGS->CPPFLAGS 1997-10-10 19:47:50 +00:00
lukem 865fe3908e Various changes from Brian Grayson <bgrayson@ece.utexas.edu> in [bin/4103]
* exit after providing an estimate if -S was given. the PR used -e,
  but checking around indicated prior art in Solaris usin -S.
* remove superfluous 'DUMP:' prefix in two messages
* initialise blocksperfile explicitly (not necessary, but everything
  else in that section gets initialised, so be consistant :)
* display the ``pretty'' name of the dumped directory, so the user
  knows if it's a subset or not
1997-09-18 03:03:55 +00:00
mrg 52ff5d8fee make these compile on the alpha after WARNS=1. 1997-09-16 08:37:01 +00:00
lukem 919c9246d4 resolve conflicts from lite-2 import 1997-09-16 06:41:19 +00:00
lukem 43a95d024f remove __dead 1997-09-15 12:42:54 +00:00
lukem a84bab531d * cleanup for WARNS=1
* fix use of .Nm
* comment out some unused(?) functions
1997-09-15 07:58:01 +00:00
mrg 66bc7bd651 fix PR#3710, reported by Tatoku Ogaito <tacha@trap.fukui-med.ac.jp>.
- don't pass pw->pw_name into functions; make a copy.
1997-06-05 16:10:46 +00:00
lukem d82e5e1e13 cleanup xrefs 1997-06-05 11:15:06 +00:00