git: cpdup - Multiple additions, fixes, and one removal

Matthew Dillon dillon at crater.dragonflybsd.org
Thu Dec 3 13:00:36 PST 2009


commit 293141b7083f343cbec98a068441d2af3a93bb89
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Thu Dec 3 12:55:24 2009 -0800

    cpdup - Multiple additions, fixes, and one removal
    
    * Make -x/-X (cpignore) work with remote sources.
    
    * Add Makefile hack for _ST_FLAGS_PRESENT_ on FreeBSD.
    
    * Suppress "Handshaked with <host>" and "Not running as root"
      messages when the -q option was specified.
    
    * Mount points are now skipped completely.  (Before this,
      the directories and .cpignore inside them were still read.)
    
    * Extract scanning directories (src and dst) from DoCopy() into
      a function ScanDir(), and use ScanDir() for both src and dst.
    
    * Remove threads support.  It never worked very well and is
      getting in the way of new development.  The intention is to
      develop a more efficient pipelined algorithm in the future
      which does not require threading the program.
    
    * Use getopt(3) instead of non-standard parser, making sure
      that all options still work exactly as documented in the
      manual page.
    
    * Use fnmatch(3) instead of WildCmp(), adding support for
      bracket expressions (e.g. [xyz0-9]) and escaping (e.g. foo\*).
      I also suspect that fnmatch() is more efficient.
    
    * Use the same syntax for remote paths as scp(1), so local paths
      that contain colons can be specified (e.g. "./foo:bar");
      extract that code into its own function SplitRemote().
    
    * Add protocol commands hc_geteuid() and hc_getgroups().
      Use them to properly check permissions for various operations
      that would require root privileges on the target machine.
    
    * Bugfix:  If a symlink already existed on the target but the
      owner/group didn't match, cpdup missed to update it.
      Added a call to hc_lchown() to fix that, if privileges allow.
    
    * Bugfix:  The dispatch[] array wasn't initialized, so the slave
      crashed upon an unknown command instead of calling rc_badop().
    
    * Bump protocol version to 3 in order to be able to maintain
      backwards compatibility with older clients.
    
    * Bump utility version to 1.16.
    
    * Make the source compile with WARNS=6.
      It still doesn't pass -ansi -pedantic, though.  :-)
    
    * Document -j0, -k and -K in usage message (misc.c).
    
    * Update the manual page, fix mdoc markup and various details.
    
    * Add "ssh security tips" section to the BACKUPS text file.
    
    Submitted-by: Oliver Fromme <olli at fromme.com>

Summary of changes:
 bin/cpdup/BACKUPS   |   64 ++++-
 bin/cpdup/Makefile  |    6 +-
 bin/cpdup/PORTING   |    6 +-
 bin/cpdup/cpdup.1   |  141 ++++++----
 bin/cpdup/cpdup.c   |  838 +++++++++++++++++++++++++--------------------------
 bin/cpdup/cpdup.h   |   13 +-
 bin/cpdup/hclink.c  |  162 +----------
 bin/cpdup/hclink.h  |   18 +-
 bin/cpdup/hcproto.c |  176 +++++++++--
 bin/cpdup/hcproto.h |    7 +-
 bin/cpdup/misc.c    |    9 +-
 11 files changed, 728 insertions(+), 712 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/293141b7083f343cbec98a068441d2af3a93bb89


-- 
DragonFly BSD source repository





More information about the Commits mailing list