# HG changeset patch # User Matt Johnston # Date 1093323948 0 # Node ID 68b84c20ca1ee743374c88404526174e59d0ef8e # Parent 298098b2a61e19dee993a090ec8518ea19d242a8 Fix for "-l" scp option diff -r 298098b2a61e -r 68b84c20ca1e cli-runopts.c --- a/cli-runopts.c Tue Aug 24 04:12:08 2004 +0000 +++ b/cli-runopts.c Tue Aug 24 05:05:48 2004 +0000 @@ -143,12 +143,6 @@ if (argv[i][0] == '-') { /* A flag *waves* */ - if (strlen(argv[i]) > 2) { - fprintf(stderr, - "WARNING: Ignoring unknown argument '%s'\n", argv[i]); - continue; - } - switch (argv[i][1]) { case 'p': /* remoteport */ next = &cli_opts.remoteport; @@ -205,6 +199,12 @@ "WARNING: Ignoring unknown argument '%s'\n", argv[i]); break; } /* Switch */ + + /* Now we handle args where they might be "-luser" (no spaces)*/ + if (next && strlen(argv[i]) > 2) { + *next = &argv[i][2]; + next = NULL; + } continue; /* next argument */ diff -r 298098b2a61e -r 68b84c20ca1e scp.c --- a/scp.c Tue Aug 24 04:12:08 2004 +0000 +++ b/scp.c Tue Aug 24 05:05:48 2004 +0000 @@ -178,8 +178,10 @@ close(pout[1]); args.list[0] = ssh_program; - if (remuser != NULL) - addargs(&args, "-l%s", remuser); + if (remuser != NULL) { + addargs(&args, "-l"); + addargs(&args, "%s", remuser); + } addargs(&args, "%s", host); addargs(&args, "%s", cmd);