simon-git: putty (main): Simon Tatham

Commits to Tartarus hosted VCS tartarus-commits at lists.tartarus.org
Tue Sep 14 09:14:59 BST 2021


TL;DR:
  612b293c rlogin: defer username prompt until connection is made.
  8e35e6ee Rlogin: handle user abort at the username prompt.

Repository:     https://git.tartarus.org/simon/putty.git
On the web:     https://git.tartarus.org/?p=simon/putty.git
Branch updated: main
Committer:      Simon Tatham <anakin at pobox.com>
Date:           2021-09-14 09:14:59

commit 612b293c1e29c62ced3a1884fad57e98fb560642
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=612b293c1e29c62ced3a1884fad57e98fb560642;hp=b1d01cd3c7a499aee2e50e3b7991ff67fb998851
Author: Simon Tatham <anakin at pobox.com>
Date:   Tue Sep 14 08:20:42 2021 +0100

    rlogin: defer username prompt until connection is made.
    
    This gives more sensible handling of failed network connections: if
    the connection _doesn't_ get made, it's pointless to ask the user for
    a login username anyway, and worse still, you'd probably end up giving
    the connection-failure error message while the user was in the middle
    of answering the username prompt.
    
    But more importantly, when proxy systems start being able to present
    their own interactive prompts, it's vital that no backend should
    already be presenting a prompt while in the process of setting up a
    network connection.

 otherbackends/rlogin.c | 66 ++++++++++++++++++++++++++++----------------------
 1 file changed, 37 insertions(+), 29 deletions(-)

commit 8e35e6eeae986f1c5575790e444533c3c1269035
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=8e35e6eeae986f1c5575790e444533c3c1269035;hp=612b293c1e29c62ced3a1884fad57e98fb560642
Author: Simon Tatham <anakin at pobox.com>
Date:   Tue Sep 14 08:49:08 2021 +0100

    Rlogin: handle user abort at the username prompt.
    
    While re-testing this backend I realised that we were completely
    ignoring the actual return status from seat_get_userpass_input, once
    it stops being -1 ("prompt still in progress"). So if the user hits ^C
    or ^D at the prompt, e.g. after realising they've started PuTTY in the
    wrong mode by mistake, then we press ahead anyway and send a nonsense
    username.
    
    Now we interpret that as a request to close the connection.

 otherbackends/rlogin.c | 43 ++++++++++++++++++++++++++-----------------
 1 file changed, 26 insertions(+), 17 deletions(-)



More information about the tartarus-commits mailing list