diff --git a/scp.c b/scp.c index 4f6a579716620f26c06f034f7026ed4ace28ced7..8c94ec84906941da316ffafad48f4cf9496a78a3 100644 --- a/scp.c +++ b/scp.c @@ -289,7 +289,6 @@ int okname(char *); void run_err(const char *,...); void verifydir(char *); -struct passwd *pwd; uid_t userid; int errs, remin, remout; int pflag, iamremote, iamrecursive, targetshouldbedirectory; @@ -396,9 +395,6 @@ main(int argc, char **argv) argc -= optind; argv += optind; - if ((pwd = getpwuid(userid = getuid())) == NULL) - fatal("unknown user %u", (u_int) userid); - if (!isatty(STDERR_FILENO)) showprogress = 0; @@ -514,7 +510,7 @@ toremote(char *targ, int argc, char **argv) host = cleanhostname(host); suser = argv[i]; if (*suser == '\0') - suser = pwd->pw_name; + continue; /* pretend there wasn't any @ at all */ else if (!okname(suser)) continue; addargs(&alist, "-l"); @@ -582,7 +578,7 @@ tolocal(int argc, char **argv) *host++ = 0; suser = argv[i]; if (*suser == '\0') - suser = pwd->pw_name; + suser = NULL; } host = cleanhostname(host); len = strlen(src) + CMDNEEDS + 20;