=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/ssh/sftp.c,v retrieving revision 1.200 retrieving revision 1.201 diff -u -r1.200 -r1.201 --- src/usr.bin/ssh/sftp.c 2020/04/03 05:53:52 1.200 +++ src/usr.bin/ssh/sftp.c 2020/08/03 02:43:41 1.201 @@ -1,4 +1,4 @@ -/* $OpenBSD: sftp.c,v 1.200 2020/04/03 05:53:52 jmc Exp $ */ +/* $OpenBSD: sftp.c,v 1.201 2020/08/03 02:43:41 djm Exp $ */ /* * Copyright (c) 2001-2004 Damien Miller * @@ -2316,7 +2316,7 @@ extern char *__progname; fprintf(stderr, - "usage: %s [-46aCfNpqrv] [-B buffer_size] [-b batchfile] [-c cipher]\n" + "usage: %s [-46AaCfNpqrv] [-B buffer_size] [-b batchfile] [-c cipher]\n" " [-D sftp_server_path] [-F ssh_config] [-i identity_file]\n" " [-J destination] [-l limit] [-o ssh_option] [-P port]\n" " [-R num_requests] [-S program] [-s subsystem | sftp_server]\n" @@ -2351,7 +2351,6 @@ args.list = NULL; addargs(&args, "%s", ssh_program); addargs(&args, "-oForwardX11 no"); - addargs(&args, "-oForwardAgent no"); addargs(&args, "-oPermitLocalCommand no"); addargs(&args, "-oClearAllForwardings yes"); @@ -2359,9 +2358,10 @@ infile = stdin; while ((ch = getopt(argc, argv, - "1246afhNpqrvCc:D:i:l:o:s:S:b:B:F:J:P:R:")) != -1) { + "1246AafhNpqrvCc:D:i:l:o:s:S:b:B:F:J:P:R:")) != -1) { switch (ch) { /* Passed through to ssh(1) */ + case 'A': case '4': case '6': case 'C': @@ -2460,6 +2460,9 @@ usage(); } } + + /* Do this last because we want the user to be able to override it */ + addargs(&args, "-oForwardAgent no"); if (!isatty(STDERR_FILENO)) showprogress = 0;