summaryrefslogtreecommitdiffstats
path: root/bin/cp/cp.c
diff options
context:
space:
mode:
authorjulian <julian@FreeBSD.org>2006-08-24 20:45:38 +0000
committerjulian <julian@FreeBSD.org>2006-08-24 20:45:38 +0000
commitb0fd0e692560ae88e7e9773907b6d2c18a8d0196 (patch)
tree4d497ada8393e7dbb8d94ec459fa2ab39e7c063d /bin/cp/cp.c
parente574350b77b314c0adecc7516040ab41e14df230 (diff)
downloadFreeBSD-src-b0fd0e692560ae88e7e9773907b6d2c18a8d0196.zip
FreeBSD-src-b0fd0e692560ae88e7e9773907b6d2c18a8d0196.tar.gz
Add an option to allow copying of a hierarchy while linking he regular files.
Bikeshedded to death on: hackers Submitted by:andersonatcenttech.com MFC in: 1 month
Diffstat (limited to 'bin/cp/cp.c')
-rw-r--r--bin/cp/cp.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/bin/cp/cp.c b/bin/cp/cp.c
index b0a3db7..e87588b 100644
--- a/bin/cp/cp.c
+++ b/bin/cp/cp.c
@@ -83,7 +83,7 @@ static char emptystring[] = "";
PATH_T to = { to.p_path, emptystring, "" };
-int fflag, iflag, nflag, pflag, vflag;
+int fflag, iflag, lflag, nflag, pflag, vflag;
static int Rflag, rflag;
volatile sig_atomic_t info;
@@ -102,7 +102,7 @@ main(int argc, char *argv[])
char *target;
Hflag = Lflag = Pflag = 0;
- while ((ch = getopt(argc, argv, "HLPRfinprv")) != -1)
+ while ((ch = getopt(argc, argv, "HLPRfinprvl")) != -1)
switch (ch) {
case 'H':
Hflag = 1;
@@ -140,6 +140,9 @@ main(int argc, char *argv[])
case 'v':
vflag = 1;
break;
+ case 'l':
+ lflag = 1;
+ break;
default:
usage();
break;
@@ -457,6 +460,9 @@ copy(char *argv[], enum op type, int fts_options)
badcp = rval = 1;
}
break;
+ case S_IFSOCK:
+ warnx("%s is a socket (not copied).",
+ curr->fts_path);
case S_IFIFO:
if (Rflag) {
if (copy_fifo(curr->fts_statp, !dne))
OpenPOWER on IntegriCloud