cpdup(1): Some improvements.
authorSascha Wildner <saw@online.de>
Sat, 14 Oct 2017 19:06:14 +0000 (21:06 +0200)
committerSascha Wildner <saw@online.de>
Sat, 14 Oct 2017 19:06:14 +0000 (21:06 +0200)
commit9d626b29a3bf154306d8096856d66541f8916722
tree6207b220379392a0a99ceba047ae82f97b2c1ffe
parent2a82addedbb7d54f94d211352edbe1d0d0e6bad8
cpdup(1): Some improvements.

* Make cpdup retry failed rmdirs after chflags. It already does this
  for remove().

* When deciding whether to copy a file, cpdup should ignore the
  UF_ARCHIVE file flag. If that flag is supported by the destination
  file system but it's cleared on a source file, then multiple
  invocations of cpdup would all copy the source file because its
  flags wouldn't match. OTOH, if the destination filesystem doesn't
  support UF_ARCHIVE, then there's no point in cpdup setting it.

Submitted-by: Will Andrews <will@firepipe.net>
Dragonfly-bug: https://bugs.dragonflybsd.org/issues/2987
               https://bugs.dragonflybsd.org/issues/2988
               https://bugs.dragonflybsd.org/issues/3067
bin/cpdup/cpdup.c