Commit Graph

55 Commits

Author SHA1 Message Date
chs b04cd074cb apply this commit from FreeBSD:
commit 9dda00df7e8f9279a43d92758df6a7e10a9aed95
  Author: Chuck Silvers <chs@FreeBSD.org>
  Date:   Mon Dec 12 08:14:17 2022 -0800

      restore: fix restore of NFS4 ACLs

      Changing the mode bits on a file with an NFS4 ACL results in the
      NFS4 ACL being replaced by one matching the new mode bits being set,
      so when restoring a file with an NFS4 ACL, set the owner/group/mode first
      and then set the NFS4 ACL, so that setting the mode does not throw away
      the ACL that we just set.

      Reviewed by:    mckusick
      Differential Revision:  https://reviews.freebsd.org/D37618
2022-12-12 16:53:30 +00:00
chs a932562d1e apply this change from FreeBSD:
commit c028393d7072f1f88efd8d6e6c77bb9b15b3f3b6
  Author: Kirk McKusick <mckusick@FreeBSD.org>
  Date:   Fri Apr 11 21:48:14 2008 +0000

      Correctly set file group when restore is run by a user other than root.
2022-12-10 18:49:44 +00:00
riastradh 9e8e52123d restore(8): Mark fail_dirtmp __dead to fix clang build. 2021-06-23 14:22:08 +00:00
christos e2325e1f91 Add external attribute dumping and restoring support from FreeBSD.
Does not fully work yet, attributes are being saved and restored correctly,
but don't appear in the restored files somehow.
2021-06-19 13:56:34 +00:00
enami c1e351a1b2 Don't truncate at microseconds while preserving timestamps.
One of motivation of this change is to make the behavior of test(1)
-nt/ot with preserved copy (like cp -p) closer to the NetBSD 6.
Of course whether full timestamps are kept or not depends also on
underlying file system.

The ifdef added in mv(1) since existing ifdefs was our local change
to compile it on solaris (though I couldn't test it):
http://mail-index.netbsd.org/tech-userlevel/2014/11/28/msg008831.html
2015-03-02 03:17:24 +00:00
dholland 5a420c1b9a Stick UFS_ in front of these symbols:
DIRBLKSIZ
   DIRECTSIZ
   DIRSIZ
   OLDDIRFMT
   NEWDIRFMT

Part of PR 47909.
2013-06-09 17:57:08 +00:00
dholland dcd34a91c5 Stuff UFS_ in front of a few of ufs's symbols to reduce namespace
pollution. Specifically:
   ROOTINO -> UFS_ROOTINO
   WINO -> UFS_WINO
   NXADDR -> UFS_NXADDR
   NDADDR -> UFS_NDADDR
   NIADDR -> UFS_NIADDR
   MAXSYMLINKLEN -> UFS_MAXSYMLINKLEN
   MAXSYMLINKLEN_UFS[12] -> UFS[12]_MAXSYMLINKLEN (for consistency)

Sort out ext2fs's misuse of NDADDR and NIADDR; fortunately, these have
the same values in ext2fs and ffs.

No functional change intended.
2013-01-22 09:39:11 +00:00
lukem 292ab8c29d fix sign-compare issues 2009-04-07 12:38:12 +00:00
yamt bbac3fbde4 remove a useless cast. 2009-02-18 13:13:27 +00:00
christos c4ee9f6d2e 64 bit inode changes 2005-08-19 02:07:18 +00:00
christos 58874431a5 add const 2005-06-27 02:03:28 +00:00
christos cb1c4f11bb sprinkle const. 2005-06-27 01:55:52 +00:00
xtraeme f224c38b66 Kill __P(), use ANSI function declarations. 2005-02-17 15:00:33 +00:00
fredb 57aad81b8e Make a judicious choice as to whether to apply the permissions
of the root inode of the dump to the current working directory,
rather than interrogate the user. Closes PR bin/24690. Reviewed
by bouyer, tron, imp.
2005-01-08 14:30:39 +00:00
bouyer 0a0bd752e8 Add an option (-M) to write a mtree specification (which needs to be passed
through sort before being feed to mtree) with file flags, instead of restoring
file flags at the same time as other attributes. Fix various issue with
schg, uchg, sappnd or uappnd flags which cause restore to fail in some case.
Discussed on tech-userlevel:
http://mail-index.netbsd.org/tech-userlevel/2004/10/12/0000.html
2004-10-22 22:38:38 +00:00
fvdl 0be1698412 Fix byteswapping a direntry. From Wolfgang Solfrank. 2003-11-05 22:27:16 +00:00
agc 276d62f603 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22308, verified by myself.
2003-08-07 10:04:22 +00:00
fvdl 42614ed3f3 Add support for UFS2. UFS2 is an enhanced FFS, adding support for
64 bit block pointers, extended attribute storage, and a few
other things.

This commit does not yet include the code to manipulate the extended
storage (for e.g. ACLs), this will be done later.

Originally written by Kirk McKusick and Network Associates Laboratories for
FreeBSD.
2003-04-02 10:39:19 +00:00
simonb 1d08e313ae Don't bother testing if a uint8_t is > 256 -- that test is always false. 2002-05-09 02:55:49 +00:00
lukem 2b8424b54a oops; another minor fix from rev 1.34 noticed by Simon Gerraty 2002-01-04 06:48:49 +00:00
lukem 5b5d0d23b8 oops, remove temporary comment 2001-11-01 08:21:57 +00:00
lukem 7f675a25b7 fix -Wshadow warnings 2001-11-01 08:21:07 +00:00
enami 06a7912b58 Don't actually set attributes of directory if -N flag is given. 1998-05-12 00:42:48 +00:00
bouyer d1c8f32096 Update for new headers. 1998-03-18 17:18:21 +00:00
mycroft f19fd07b85 Use futimes(2). Do {f,}utimes(2) *before* {f,}chflags(2), for obvious
reasons.
1997-10-19 13:29:22 +00:00
lukem 7120b2eafb resolve conflicts from lite-2 merge 1997-09-16 13:44:12 +00:00
mrg 52ff5d8fee make these compile on the alpha after WARNS=1. 1997-09-16 08:37:01 +00:00
lukem 8b03c7fc43 * cleanup for WARNS=1
* fix use of .Nm
1997-09-15 08:04:28 +00:00
lukem 7da56091ad as inspired by a commit message of Todd Miller <millert@cvs.openbsd.org>:
* cleanup a bit for -Wall
* use __progname instead of "restore"
1997-07-06 08:51:28 +00:00
lukem a260da3f8b Support using $TMPDIR for rst{dir,modes}* files, so that large
restores can be done on machines with small /tmp's by setting TMPDIR
elsewhere. This shouldn't be a security issue as restore(8) isn't
set?id anymore.
1997-07-01 05:37:49 +00:00
lukem a9fe880b0c explicitly \0 terminate locname[] in treescan(). should fix [bin/2093] 1997-06-03 04:27:49 +00:00
pk 0c19f22e3f * NULL => 0 (Arne Juul; PR#3629)
* Nuke spacoids
1997-05-17 19:38:12 +00:00
lukem ceb1313a6a use _PATH_DEFTAPE from <paths.h> instead of "pathnames.h"
cleanup references/examples to use /dev/rst* instead of /dev/rmt*
minor .Nm usage cleanup in man page
1997-04-15 07:12:19 +00:00
lukem 8c5cee237e * use mkstemp() instead of mktemp()
* remove "register" qualifiers
1997-03-19 08:42:51 +00:00
cgd a0c5caa042 patches from Tom I Helbekkmo <tih@nhh.no> to deal with type-size issues,
so this works (better, at least) on 64-bit machines (e.g. alpha).
1996-11-30 18:01:52 +00:00
lukem 9ab7d8e652 use unique temporary files for all operations except 'r' and 'R', which still
base temp files on dumpdate. explain why in the man page. fixes [bin/2870]
1996-10-24 04:01:10 +00:00
thorpej 5d6afee55f Use snprintf() rather than sprintf(). 1996-09-27 03:23:33 +00:00
thorpej 6c2fa7eac7 Back out last change (and re-open PR); the patch is incomplete, and
I realized it _just_ as CVS checked the file back in.
1996-09-27 03:15:00 +00:00
thorpej f864e10c5f Make unique temporary file names.
From Luke Mewburn <lukem@supp.cpr.itg.telecom.com.au>, PR #2544.
1996-09-27 03:07:05 +00:00
cgd dd12858b36 stat structure POSIXification 1995-06-19 00:20:11 +00:00
mycroft 5827156eb1 Back out previous change. 1995-06-11 05:28:52 +00:00
cgd 788733b7a9 typeof(timeval.tv_sec) != time_t 1995-06-07 17:14:21 +00:00
cgd 0114e805ce convert to new RCS Id conventions; reduce my headache 1995-03-18 14:54:19 +00:00
mycroft d8b173be70 Use atexit() rather than tweaking every exit() to call the cleanup function. 1995-02-20 19:43:51 +00:00
mycroft 33ea52b638 Mostly sync with CSRG. 1994-12-28 02:21:43 +00:00
mycroft ea7b5d4ec6 Eliminate uses of some obsolete functions. 1994-09-23 14:26:58 +00:00
mycroft 03f3c15cdd Simplify that code a little. 1994-06-18 18:20:46 +00:00
mycroft 64069a045f Fix a byte-order problem when reading directory entries from old file systems
that were on little-endian machines.
1994-06-18 18:14:07 +00:00
mycroft 625a6892f7 Update from 4.4-Lite, with local changes. 1994-06-08 19:27:32 +00:00
cgd 725ed31e82 copyright foo 1994-05-17 04:13:48 +00:00