# HG changeset patch # User Matt Johnston # Date 1364744905 -28800 # Node ID 714b9106e3353885e084a474f856200ce8fe486d # Parent fedfb8ede1fdebad5d19df7bd4d452c3264d9545 Send an auth packet straight away, save another roundtrip This needs a bit of testing to make sure it doesn't have side-effects. diff -r fedfb8ede1fd -r 714b9106e335 cli-auth.c --- a/cli-auth.c Sun Mar 31 23:29:03 2013 +0800 +++ b/cli-auth.c Sun Mar 31 23:48:25 2013 +0800 @@ -40,11 +40,12 @@ /* Send a "none" auth request to get available methods */ void cli_auth_getmethods() { - TRACE(("enter cli_auth_getmethods")) - +#ifdef CLI_IMMEDIATE_AUTH + ses.authstate.authtypes = AUTH_TYPE_PUBKEY | AUTH_TYPE_PASSWORD | AUTH_TYPE_INTERACT; + cli_auth_try(); +#else CHECKCLEARTOWRITE(); - buf_putbyte(ses.writepayload, SSH_MSG_USERAUTH_REQUEST); buf_putstring(ses.writepayload, cli_opts.username, strlen(cli_opts.username)); @@ -53,8 +54,8 @@ buf_putstring(ses.writepayload, "none", 4); /* 'none' method */ encrypt_packet(); +#endif TRACE(("leave cli_auth_getmethods")) - } void recv_msg_userauth_banner() { diff -r fedfb8ede1fd -r 714b9106e335 sysoptions.h --- a/sysoptions.h Sun Mar 31 23:29:03 2013 +0800 +++ b/sysoptions.h Sun Mar 31 23:48:25 2013 +0800 @@ -188,6 +188,9 @@ #define DROPBEAR_KEY_LINES /* ie we're using authorized_keys or known_hosts */ #endif +/* Send an auth request straight away rather than trying "none" type to get a list */ +#define CLI_IMMEDIATE_AUTH + /* Changing this is inadvisable, it appears to have problems * with flushing compressed data */ #define DROPBEAR_ZLIB_MEM_LEVEL 8