[BACK]Return to scp.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/scp.c between version 1.217 and 1.218

version 1.217, 2021/08/04 01:34:55 version 1.218, 2021/08/07 00:00:33
Line 423 
Line 423 
                 newargv[n] = xstrdup(argv[n]);                  newargv[n] = xstrdup(argv[n]);
         argv = newargv;          argv = newargv;
   
           log_init(argv0, log_level, SYSLOG_FACILITY_USER, 1);
   
         memset(&args, '\0', sizeof(args));          memset(&args, '\0', sizeof(args));
         memset(&remote_remote_args, '\0', sizeof(remote_remote_args));          memset(&remote_remote_args, '\0', sizeof(remote_remote_args));
         args.list = remote_remote_args.list = NULL;          args.list = remote_remote_args.list = NULL;
Line 543 
Line 545 
         /* Do this last because we want the user to be able to override it */          /* Do this last because we want the user to be able to override it */
         addargs(&args, "-oForwardAgent=no");          addargs(&args, "-oForwardAgent=no");
   
         if (mode != MODE_SFTP && sftp_direct != NULL)          if (iamremote)
                 fatal("SFTP direct can be used only in SFTP mode");                  mode = MODE_SCP;
   
         if (mode == MODE_SFTP && iamremote)  
                 fatal("The server can not be ran in SFTP mode");  
   
         if ((pwd = getpwuid(userid = getuid())) == NULL)          if ((pwd = getpwuid(userid = getuid())) == NULL)
                 fatal("unknown user %u", (u_int) userid);                  fatal("unknown user %u", (u_int) userid);
   
Line 979 
Line 978 
                         continue;                          continue;
                 }                  }
                 if (host && throughlocal) {     /* extended remote to remote */                  if (host && throughlocal) {     /* extended remote to remote */
                         if (mode == MODE_SFTP) {                          /* XXX uses scp; need to support SFTP remote-remote */
                                 /* TODO */  
                                 fatal("Extended remote to remote through local "  
                                     "is not yet supported with SFTP");  
                         }  
                         xasprintf(&bp, "%s -f %s%s", cmd,                          xasprintf(&bp, "%s -f %s%s", cmd,
                             *src == '-' ? "-- " : "", src);                              *src == '-' ? "-- " : "", src);
                         if (do_cmd(ssh_program, host, suser, sport, bp,                          if (do_cmd(ssh_program, host, suser, sport, bp,
Line 1035 
Line 1030 
                         addargs(&alist, "--");                          addargs(&alist, "--");
                         addargs(&alist, "%s", host);                          addargs(&alist, "%s", host);
                         addargs(&alist, "%s", cmd);                          addargs(&alist, "%s", cmd);
                         /*  
                          * This will work only if the first remote scp  
                          * supports sftp mode  
                          */  
                         if (mode == MODE_SFTP) {  
                                 addargs(&alist, "-M");  
                                 addargs(&alist, "sftp");  
                         }  
                         addargs(&alist, "%s", src);                          addargs(&alist, "%s", src);
                         addargs(&alist, "%s%s%s:%s",                          addargs(&alist, "%s%s%s:%s",
                             tuser ? tuser : "", tuser ? "@" : "",                              tuser ? tuser : "", tuser ? "@" : "",

Legend:
Removed from v.1.217  
changed lines
  Added in v.1.218