summaryrefslogtreecommitdiffstats
path: root/bin/rcp/rcp.c
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1999-07-04 15:42:04 +0000
committerbde <bde@FreeBSD.org>1999-07-04 15:42:04 +0000
commit301e8ec7e200d92c22aa269ef742a3c88a4308d0 (patch)
treef4311c1713cc9666d46fd81a9f393fd3d707843b /bin/rcp/rcp.c
parent99d8c42b7225a12d1398ce70011f92d356e17acf (diff)
downloadFreeBSD-src-301e8ec7e200d92c22aa269ef742a3c88a4308d0.zip
FreeBSD-src-301e8ec7e200d92c22aa269ef742a3c88a4308d0.tar.gz
Improved error handling in rev.1.18: don't ignore failure of execve().
Fixed some style bugs in rev.1.18.
Diffstat (limited to 'bin/rcp/rcp.c')
-rw-r--r--bin/rcp/rcp.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/bin/rcp/rcp.c b/bin/rcp/rcp.c
index b2d5d4e..4dc8fa1 100644
--- a/bin/rcp/rcp.c
+++ b/bin/rcp/rcp.c
@@ -42,7 +42,7 @@ static char const copyright[] =
static char sccsid[] = "@(#)rcp.c 8.2 (Berkeley) 4/2/94";
#endif
static const char rcsid[] =
- "$Id: rcp.c,v 1.21 1998/10/09 06:31:45 markm Exp $";
+ "$Id: rcp.c,v 1.22 1999/04/25 10:36:00 dt Exp $";
#endif /* not lint */
#include <sys/param.h>
@@ -121,9 +121,8 @@ main(argc, argv)
char *argv[];
{
struct servent *sp;
- int ch, fflag, tflag;
+ int ch, fflag, i, tflag;
char *targ, *shell;
- int i;
#ifdef KERBEROS
char *k;
#endif
@@ -131,14 +130,13 @@ main(argc, argv)
/*
* Prepare for execing ourselves.
*/
-
argc_copy = argc + 1;
argv_copy = malloc((argc_copy + 1) * sizeof(*argv_copy));
if (argv_copy == NULL)
err(1, "malloc");
argv_copy[0] = argv[0];
argv_copy[1] = "-K";
- for(i = 1; i < argc; ++i) {
+ for (i = 1; i < argc; ++i) {
argv_copy[i + 1] = strdup(argv[i]);
if (argv_copy[i + 1] == NULL)
errx(1, "strdup: out of memory");
@@ -824,6 +822,7 @@ kerberos(host, bp, locuser, user)
else if (errno == ENOENT)
oldw("can't provide Kerberos authentication data");
execv(_PATH_RCP, argv_copy);
+ err(1, "execv: %s", _PATH_RCP);
}
} else {
#ifdef CRYPT
OpenPOWER on IntegriCloud