Uploaded image for project: 'Apache Guacamole - Contributions'
  1. Apache Guacamole - Contributions
  2. GUAC-1662

Allow webapp-side handling of connection errors for SSH and telnet

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Done
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: SSH, Telnet
    • Labels:
    • Sprint:
      DEV 2018-09-08
    • Story Points:
      8

      Description

      As discussed on the mailing lists, the way that the Guacamole terminal emulator is loaded prior to actually attempting the SSH/telnet connection causes issues in handling of connection errors within the webapp:

      I think this may be due to the way Guacamole currently handles SSH and telnet. Unlike VNC and RDP, where no display is given to the client until the connection is established, both SSH and telnet provide a display with a terminal while waiting for the connection to happen. From the perspective of the failover socket, the connection has succeeded.

      This should be corrected such that, to the extent possible, the terminal emulator does not start rendering frames until the connection has actually been established. This will likely mean withholding creation of the terminal emulator until it is absolutely needed - either following successful connection or upon need of username/password prompt.

      In the case of telnet, things get slightly more complicated as the username/password prompts involved are generated by the server. Even if the password is available ahead of time, properly exposing invalid credential errors will require heuristic detection of success/failure.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              mike.jumper Michael Jumper
              Reporter:
              mike.jumper Michael Jumper
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Due:
                Created:
                Updated:
                Resolved: