Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/usr.sbin/sup/source

Module Name:    src
Committed By:   christos
Date:           Tue Sep 30 20:49:14 UTC 2008

Modified Files:
        src/usr.sbin/sup/source: supcmeat.c

Log Message:
Fix symlink lossage:
- Use lstat instead of stat to find the destination path. we can make a symlink
  to a broken symlink this way.
- When calling process to create a link, check if the source is a symlink
  instead of trying to remove what the symlink points to!
- Don't create hard links to directories.

XXX: NB. Still sup is broken when used with the delete option. This is because
in the delete pass, it goes and tries to delete all files in the old list
that don't exist in the new list. This is a problem when a directory becomes
a symlink to a hierarchy that contains the same names. Then sup will cross
the symlink and start deleting files and directories from the destination.
This is not easily fixed. Don't use sup with symlink/rsymlink and the delete
option at the same time or *be careful*!

To generate a diff of this commit:
cvs rdiff -r1.31 -r1.32 src/usr.sbin/sup/source/supcmeat.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Home | Main Index | Thread Index | Old Index