summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/copy.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/copy.h b/src/copy.h
index 69a2e2e31..e5a35cd6d 100644
--- a/src/copy.h
+++ b/src/copy.h
@@ -130,6 +130,18 @@ struct cp_options
int (*xstat) ();
};
+int stat ();
+int lstat ();
+
+/* Arrange to make lstat calls go through the wrapper function
+ on systems with an lstat function that does not dereference symlinks
+ that are specified with a trailing slash. */
+# if ! LSTAT_FOLLOWS_SLASHED_SYMLINK
+int rpl_lstat PARAMS((const char *, struct stat *));
+# undef lstat
+# define lstat rpl_lstat
+# endif
+
int
copy PARAMS ((const char *src_path, const char *dst_path,
int nonexistent_dst, const struct cp_options *options,