Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pull in changes from qtcreator #12

Open
wants to merge 107 commits into
base: master
Choose a base branch
from
Open

pull in changes from qtcreator #12

wants to merge 107 commits into from

Commits on Jan 20, 2018

  1. SSH: Add infrastructure for passing additional connection options.

    So far, the only option is whether to use the default proxy or not. More
    will follow.
    
    Change-Id: Icd1ec407a0269cc8e7577901853d3873fd03015c
    Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    b068eae View commit details
    Browse the repository at this point in the history
  2. SSH: Implement tunneling.

    This is the "direct-tcpip" port forwarding
    specified in RFC 4254.
    
    Change-Id: I1ffa2e923b4479c7211b1b4304e66895b565fb64
    Reviewed-by: hjk <qthjk@ovi.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    092da31 View commit details
    Browse the repository at this point in the history
  3. SSH: Adapt tests to API change.

    Change-Id: I0b104942d97238aff8ac21e0e047a17079a53181
    Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    229253f View commit details
    Browse the repository at this point in the history
  4. SSH: Count only non-closing channels in closeAllChannels().

    Otherwise we might get false positives in the check in
    SshConnectionManager.
    
    Change-Id: Ia54be53ce294c75fbfad2e6475c9d489d2639504
    Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    21c35a2 View commit details
    Browse the repository at this point in the history
  5. SSH: Make it configurable whether to check server data pedantically.

    While we want to conform to the specs, there are systems out there today
    whose SSH servers send non-conforming identifications strings. We now
    enable API clients to switch the respecive checks off, and we do so
    ourselves in the RemoteLinux plugin, since the only known problems
    are with OpenSSH servers.
    
    Change-Id: I9e6f9076f2dc7435a0bde7016f99cfb2fcb30a9c
    Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    c7237e4 View commit details
    Browse the repository at this point in the history
  6. Fix gcc warnings about unused variables.

    These appear when compiling in release mode.
    
    Change-Id: I76ee3b1b8d728fd839d713ee4f914b6965851b99
    Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    2ab6f8d View commit details
    Browse the repository at this point in the history
  7. SSH: Implement and make use of RFC 4256.

    There is now at least one Linux distribution (openSUSE 12.3) that
    disables the "password" authentication method in its default
    sshd_config, while others allow it, but disable "keyboard-interactive".
    This patch tackles the problem as follows:
        1) Implement RFC 4256 ("keyboard-interactive") and make this method
    available in the API.
        2) In addition, the API offers to try both password-based methods
    one after the other, until one has succeeded or all have failed.
        3) Dialogs continue to offer just the choice between "Password" and
    "Key", as to not confuse users. Internally, "Password" uses the feature
    described in 2).
    
    Task-number: QTCREATORBUG-9568
    Change-Id: Ic81bd5d2dc4b1332ea1a8be938c19811c21a9087
    Reviewed-by: hjk <hjk121@nokiamail.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    63db2c5 View commit details
    Browse the repository at this point in the history
  8. Fixes generated RSA private key in OpenSSL format with no crypt option

    * adds missing fields dmp1, dmq1 and iqmp to RSA structure
    * verified with openssl 1.0.1
    
    Change-Id: I2891cd04303f7b44bbe24a844b2d74669c07f521
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    Michal Klocek authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    1c34ca7 View commit details
    Browse the repository at this point in the history
  9. SSH: Remove questionable warning in connection manager.

    If there are still open channels in a connection being released,
    that is not necessarily a mistake: The channels could already be
    in the closing state, and it would be unreasonable for us to expect
    API clients to always wait for confirmation before releasing the
    connection, as this can complicate code quite a bit, turning a
    synchronous operation into an asynchronous one.
    
    Change-Id: If8c604c9ee1294728e7947c8d5c8130d6e704b49
    Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    38c4ed3 View commit details
    Browse the repository at this point in the history
  10. SSH: Add missing library initialization.

    Botan requires to be initialized before first use. We do that on-demand,
    but currently we miss one of the two places where this is necessary.
    The problem only manifests itself with multithreading, because Botan
    itself also does an on-demand initialization, but does not guard
    against concurrent access when doing so.
    
    Task-number: QTCREATORBUG-9980
    Change-Id: Id65c428e3d8842c8a6f16942b11d52412239d3c9
    Reviewed-by: David Kaspar <dkaspar@blackberry.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    de188b2 View commit details
    Browse the repository at this point in the history
  11. Introduce the concept of a "device process".

    Provide a QProcess-like abstraction that can be used
    to implement processes running locally or on a remote
    device. Objects of a concrete class implementing the functionality
    are created by IDevice objects.
    Current implementations are:
         - Local execution (QProcess-based), provided via the DesktopDevice.
         - Remote execution via SSH.
         - A specialized case of the former for remote Linux systems (provided by
           LinuxDevice).
    The latter is already being used in a number of places. As a result, lots of
    code dealing with details such as setting the remote environment could be
    moved to a central location. These things are no longer the concern of whoever
    is wishing to run a remote process.
    
    Change-Id: I919260ee6e77a020ca47226a4a534e7b8398106f
    Reviewed-by: hjk <hjk121@nokiamail.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    9eeb286 View commit details
    Browse the repository at this point in the history
  12. Clean up SshConnectionManager interface

    Change-Id: Id1541f83f431171dbdd94d5dd48f93e1c2cdf6fb
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    hjk authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    07a737c View commit details
    Browse the repository at this point in the history
  13. Replace QString::fromLocal8Bit("") calls

    Calling fromLocal8Bit() for literals is wrong, since that depends
    ont the user's environment. We use latin1 strings exclusively in Qt.
    
    Change-Id: I0cd0986787ea630425773672d3a892fbd0f0a77a
    Reviewed-by: hjk <hjk121@nokiamail.com>
    Kai Koehne authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    ff131ad View commit details
    Browse the repository at this point in the history
  14. SSH: Act on failing SFTP server.

    So far we ignored crashes and unexpected exits of the remote SFTP
    service under the assumption that the SSH server would catch these
    itself and act accordingly. This is not the case, however: OpenSSH,
    for instance, does not even realize if its sftp-server binary is
    not present at all. As a result, Qt Creator waits indefinitely for
    an SFTP operation to finish. Now we emit an error and close the
    offending channel.
    
    Task-number: QTCREATORBUG-10339
    Change-Id: I132ed4a0098434a4cfce6056b964bd6363951fd7
    Reviewed-by: Volker Vogelhuber <wiendl@web.de>
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    6a47196 View commit details
    Browse the repository at this point in the history
  15. Use double quotes instead of single quotes as per our guidelines.

    Change-Id: Ib608bb49e26781aef1914085a5d801fcdcd5eb56
    Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    88fb637 View commit details
    Browse the repository at this point in the history
  16. SSH: Avoid repetitive calls

    Change-Id: I3a1803cc57050c6fb90c5d143ffb2d4e98765be3
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    orgads authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    aa8ab08 View commit details
    Browse the repository at this point in the history
  17. Replace QLatin1String("x") with QLatin1Char('x') where possible

    Change-Id: I2f90c8ae7b5e968b9de882833f8661ab540a9232
    Reviewed-by: hjk <hjk121@nokiamail.com>
    Kai Koehne authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    ae43cdb View commit details
    Browse the repository at this point in the history
  18. SSH: Fix maximum packet size check.

    The statement in the RFC was misunderstood.
    
    Task-number: QTCREATORBUG-12884
    Change-Id: Icd533362ebf95d963cacc8d11da03360e742f070
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    8c2d183 View commit details
    Browse the repository at this point in the history
  19. SSH: Do not always emit an error if an SFTP channel exits.

    Channel exit is completely normal if we closed the channel, so this must
    not cause an error message.
    
    Change-Id: I57f5165b339a52a25118ad5e357f41334dadebc4
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    92ba3cd View commit details
    Browse the repository at this point in the history
  20. SSH: Add support for the recommended cipher modes from RFC 4344.

    New OpenSSH versions do not support the (required) CBC modes out of the
    box anymore, so let's add some CTR ones.
    
    Task-number: QTCREATORBUG-13340
    Change-Id: Ia3e38be3aab95be258e64396283736d246c8b93b
    Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    7b905e7 View commit details
    Browse the repository at this point in the history
  21. Ssh: Remove wrong Q_ASSERT in SshRemoteProcess destructor

    This can be triggered rather quickly by clicking "Run" for a short-
    lived application on a QNX device. The state in this situation is
    QSsh::Internal::AbstractSshChannel::SessionRequested.
    
    Change-Id: I4447b85a4e8d6ba63e30f3783d29bb0c816e0dff
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    hjk authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    2698c1f View commit details
    Browse the repository at this point in the history
  22. SSH: Fix misleading error message.

    - It is not an error if the server replies to one of our earlier
      requests while we are in closing state. This can happen if we
      close the channel shortly after sending the other request.
    - Also change the message itself, which could be interpreted as
      "packet corrupt" when we actually meant "packet unexpected".
    
    Change-Id: I735c67b2a9b41af0c5e0b8d229369d94ec37277c
    Reviewed-by: hjk <hjk121@nokiamail.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    09d875d View commit details
    Browse the repository at this point in the history
  23. Ssh: Remove indirection in AbstractSshChannel::m_timeoutTimer

    ... and connect it using Qt5-style connects.
    
    Change-Id: Ic7f36949b38d4773f5ac0f04853abf93bebcf467
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    hjk authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    4f85c30 View commit details
    Browse the repository at this point in the history
  24. SSH: Delay channel close request to server in SessionRequested state.

    If closeChannel() is called in between our channel open request to the
    server and the corresponding reply, we cannot forward the close request
    to the server, as we don't have its channel id yet. So wait until we do.
    
    Our failure to correctly handle this sequence of events was the root cause
    for the following user-visible errors:
        - A (since-removed) Q_ASSERT in ~SshRemoteProcess() was hit.
        - The server closed the connection because we referred to an invalid
          channel ("Received ieof for nonexistent channel -1").
    
    Commits 26920307f0 and 3027bcc952 are also related to this issue.
    
    Change-Id: I4994d85f5b21a72682f75389cdf8769738bd6768
    Reviewed-by: hjk <hjk121@nokiamail.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    e6adfbe View commit details
    Browse the repository at this point in the history
  25. Catch exceptions by const reference.

    Change-Id: Ic537fd123478a4f8fe4e54736d444fa64fd62d9c
    Reviewed-by: hjk <hjk121@nokiamail.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    f29c9e3 View commit details
    Browse the repository at this point in the history
  26. SSH: implement host key checking.

    Change-Id: I5f10bd801bb5cf43e58193c41e62d9ea2f9cb645
    Task-number: QTCREATORBUG-13339
    Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    9711766 View commit details
    Browse the repository at this point in the history
  27. SSH: Close unused cached connections after a period of inactivity.

    We keep connections open to avoid re-doing the authentication procedure
    when the user runs or deploys a remote app repeatedly.
    However, the connections should not be around indefinitely; we therefore
    now close them after about five minutes of inactivity.
    
    Change-Id: Ie677eb133b618d34c08528da2f2bc221472316b3
    Reviewed-by: hjk <hjk121@nokiamail.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    2f96645 View commit details
    Browse the repository at this point in the history
  28. SshConnectionManager: s/break/continue

    Probably just a thinko in the original code.
    
    Change-Id: Ie089737a3501c5aede9a2234c10e4f1c1611d952
    Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    2d6a421 View commit details
    Browse the repository at this point in the history
  29. Fix clang warning about uninitialized variable

    Change-Id: I9cdfa51dadf1014ee21a37ed97f4c543eb5c8fbb
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    hunger authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    515265b View commit details
    Browse the repository at this point in the history
  30. Port to new connect api

    Change-Id: I84834f37dd15108ed8c5fbf5353bcabc4e564f70
    Reviewed-by: hjk <hjk@theqtcompany.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Montel authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    f260362 View commit details
    Browse the repository at this point in the history
  31. Misc: Remove unneeded qualifications

    Mostly done using the following ruby script:
    Dir.glob('**/*.cpp').each { |file|
      next if file =~ %r{src/shared/qbs|/qmljs/}
      s = File.read(file)
      s.scan(/^using namespace (.*);$/) {
        ns = $1
        t = s.gsub(/^(.*)\b#{ns}::((?!Const)[A-Z])/) { |m|
          before = $1
          char = $2
          if before =~ /"|\/\/|\\|using|SIGNAL|SLOT|Q_/
            m
          else
            before + char
          end
        }
        if t != s
          puts file
          File.open(file, 'w').write(t)
        end
      }
    }
    
    Change-Id: I919da493d0629b719d328e5e71c96a29d230dfd1
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Reviewed-by: hjk <hjk@theqtcompany.com>
    orgads authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    afb16d8 View commit details
    Browse the repository at this point in the history
  32. SSH: Add support for SHA-256 HMAC.

    As recommended in RFC 6668.
    
    Task-number: QTCREATORBUG-14008
    Change-Id: Icd4613dda9cce2b482499c626b863c17e8fa0c20
    Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    ce9d57e View commit details
    Browse the repository at this point in the history
  33. Don't mix iterator and const_iterator

    This avoids unnecessary detaches of the Qt container data.
    The mismatches where detected by defining QT_STRICT_ITERATORS;
    however, this define violates the ODR (causing linker errors),
    and therefore is not added permanently.
    
    Change-Id: Idd336a9c8b394214a820437ef1b92d2101f6101c
    GPush-Base: 62b0848b9cf357bcded4184c71d490bae56c773b
    Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
    Kai Koehne authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    a07fce8 View commit details
    Browse the repository at this point in the history
  34. SSH: Fix TCP/IP forwarding support.

    We hardcoded the remote host to the SSH server for some reason, and the
    originating port was bogus as well.
    
    Change-Id: I8f6700bc12f4374302dd3bfc035c9c9f060f56ef
    Reviewed-by: Caspar Romot <cro@icd.ee>
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    6c77716 View commit details
    Browse the repository at this point in the history
  35. SSH: Minor refactorings in key exchange code.

    Change-Id: I107a61831ca7824c30dcc83b3a13f5765dd2da52
    Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    3f8f885 View commit details
    Browse the repository at this point in the history
  36. SSH: Support ECDH key exchange.

    As per RFC 5656.
    
    Task-number: QTCREATORBUG-14025
    Change-Id: I623c9f0808967f140cdfb40e11234c2e523484e6
    Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    a848d11 View commit details
    Browse the repository at this point in the history
  37. SSH: SshKeyExchangeInit is a struct.

    Use 'struct' keyword in forward declaration to avoid compiler warning.
    
    Change-Id: I5a10eabea806ce138aed31e8b1a99567afe92e77
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    arnolddumas authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    3f1d99a View commit details
    Browse the repository at this point in the history
  38. UI text: use double quotes for emphasis

    Change-Id: Ia32f968bc672c587925ebc600de06b4387966aee
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
    Leena Miettinen authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    eb5c30f View commit details
    Browse the repository at this point in the history
  39. SSH: Fix wrongly emitted assert.

    Change-Id: Ib19030ccbf708a7ad738df89f3fc0a45b0052bb9
    Reviewed-by: hjk <hjk@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    d44bc87 View commit details
    Browse the repository at this point in the history
  40. SSH: Do not tie key exchange methods to specific host key algorithms.

    Contrary to what I believed, all key exchange methods are compatible
    with all types of host key (at least for everything we support).
    
    Task-number: QTCREATORBUG-14621
    Change-Id: Iacae3d36170b9841cceb3705780a64aeb15e10b9
    Reviewed-by: Benjamin Zeller <benjamin.zeller@canonical.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    5e738e9 View commit details
    Browse the repository at this point in the history
  41. SSH: Use better member name and fix wrong comment.

    No functional changes.
    
    Change-Id: I94f30dc1d48b5a1508d704530bfa6d8af18de89e
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    57a98bc View commit details
    Browse the repository at this point in the history
  42. SSH: Give better name to member variable.

    No functional changes.
    
    Change-Id: Ie75fd001c90c2eaaf3c085c92e9ab2279e1fff98
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    1fde987 View commit details
    Browse the repository at this point in the history
  43. SSH: Fix composition of ECDH key exchange signature.

    We need to pad the encoded integers to the full width, so the
    signature will have the correct length.
    
    Change-Id: Ic844a5996ed3d8a121847d09aae1a7782ee2c24c
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    73888de View commit details
    Browse the repository at this point in the history
  44. SSH: Remove bogus compatibility check.

    All host keys can be used with all HMACs.
    
    Change-Id: I71055d3085d13683e53491ac9a9d98734dd6e7e5
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    08134e1 View commit details
    Browse the repository at this point in the history
  45. SSH: Support more ECDSA public key sizes.

    Namely, 384 and 521 bits.
    
    Change-Id: I245f8521b86d615163e5c071014e455a584c1305
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    c46a366 View commit details
    Browse the repository at this point in the history
  46. SSH: Support ECDSA user keys.

    In the default format of ssh-keygen.
    
    Change-Id: Ibea5f4bde5cc6ea343f75c73f786437178e4350e
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    569a538 View commit details
    Browse the repository at this point in the history
  47. SSH: Don't assume an exact width of ECDSA keys.

    The number specified in the algorithm name is a maximum.
    
    Change-Id: I70177a135be29adbf9b58d0dd3b9de339f0d3b7e
    Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    5fa2346 View commit details
    Browse the repository at this point in the history
  48. SSH: Support creation of ECDSA keys.

    Change-Id: Id5b5ed289a3fd86bd8b84e6429c18f417ca793a7
    Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
    Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    141724e View commit details
    Browse the repository at this point in the history
  49. SSH: Use "none" authentication type in case of an empty password.

    The "password" type as used until now should also be okay, but does not
    work with dropbear.
    
    Task-number: QTCREATORBUG-14913
    Change-Id: I2fac255acf326e509f68c9de97c3cc9f00b2a373
    Reviewed-by: hjk <hjk@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    f4c823b View commit details
    Browse the repository at this point in the history
  50. SSH: Fix GCC 5.2.1 warning in release build

    warning: 'label' may be used uninitialized in this function
    
    I know it doesn't make sense... :)
    
    Change-Id: I954ea725f7437d4b31f836134bf59b10f9fbee01
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    orgads authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    b6ed843 View commit details
    Browse the repository at this point in the history
  51. SSH: Use categorized logging.

    Change-Id: I9890c7d4a86320c835e70e66c523c5a2f7b41421
    Reviewed-by: Michal Klocek <michal.klocek@theqtcompany.com>
    Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    e085755 View commit details
    Browse the repository at this point in the history
  52. Fixed segfault in SshKeyExchange due to using object after deletion

    m_dhKey pointer has been used for debug output just after
    resetting it to nullptr.
    
    Change-Id: I1aa4e16b19c7a16738b7734423277cf7eecd8054
    Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    pdima authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    0dc9cbe View commit details
    Browse the repository at this point in the history
  53. Fix compiler warnings on windows.

    Ignore some warnings inside 3rd party code and fix a lot of conversion
    warnings.
    
    Change-Id: I909f2f31a4639015bf7dd028d2d435ff1d1167bc
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Reviewed-by: Eike Ziller <eike.ziller@qt.io>
    Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
    Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
    davschul authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    044cffe View commit details
    Browse the repository at this point in the history
  54. Ssh: Implement tcp/ip forward tunneling

    Change-Id: I529b3392ea7e4cbae2c736c9f55352ef6b19da98
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    ulherman authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    ff41132 View commit details
    Browse the repository at this point in the history
  55. SSH: Consistently use override in SshForwardTcpIpTunnel

    Fixes warnings when building with clang.
    
    Change-Id: I8775862e3ee4d717067f5cf42f9efe58e69845c7
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    hunger authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    50b8d2c View commit details
    Browse the repository at this point in the history
  56. SSH: Use Qt5-style connects

    The heavy lifting was done by clazy.
    
    Change-Id: I04261849c92c54990f9f142fe541d984c5fb21d3
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    orgads authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    cf88689 View commit details
    Browse the repository at this point in the history
  57. SSH: Fix typo in key generator that leads to a crash

    Introduced in cc04b849.
    
    Task-number: QTCREATORBUG-17349
    Change-Id: Ib392ebbffa3d3bb94890f1a55e7288859709b046
    Reviewed-by: David Schulz <david.schulz@qt.io>
    ckandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    6b139fb View commit details
    Browse the repository at this point in the history
  58. make library defines more consistency

    Change-Id: I211d511667d5b9c8f518bfbe750aca4483baff62
    Reviewed-by: Eike Ziller <eike.ziller@qt.io>
    tjenssen authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    d7d3683 View commit details
    Browse the repository at this point in the history
  59. SSH: Catch all exceptions in SshConnectionPrivate::closeConnection

    SshClientException or SshServerException might
    be thrown in SshAbstractCryptoFacility::convert
    
    Change-Id: I0950ce8d7979c171926a12f6c6d94abeffcc4b93
    Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
    rlohning authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    b4e8779 View commit details
    Browse the repository at this point in the history
  60. Remove spaces in initializer lists

    Format initializer lists code style like.
    
    Change-Id: Ib82c235e4ba7dc75ee96a7abc0c47eff7b0a9013
    Reviewed-by: hjk <hjk@qt.io>
    tjenssen authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    f6d1335 View commit details
    Browse the repository at this point in the history
  61. SSH: Add support for ssh-agent

    Task-number: QTCREATORBUG-16245
    Change-Id: Ifd30c89d19e547d7657765790b7520e42b3741c3
    Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    8b70ce7 View commit details
    Browse the repository at this point in the history
  62. SSH: Catch std::exception rather than Botan-specific ones

    In particular, the existence of Botan::Exception wrongly suggests that
    it is the parent class of all Botan-specific exceptions. This
    assumption, combined with a different bug that will be fixed in a
    follow-up commit, caused a crash in the key generator.
    
    Change-Id: I0aafb761052d185051df217c9914010235a7c77b
    Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
    ckandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    310a78e View commit details
    Browse the repository at this point in the history
  63. SSH: Fix enum values

    Newly introduced enum values need to get a higher value than the
    existing ones of the same type. Otherwise such values will be
    interpreted wrongly when loaded from settings created by earlier
    versions of Qt Creator.
    
    Task-number: QTCREATORBUG-18235
    Change-Id: I0f8497352d1ef382b5c8a65db4e1dea20b6296da
    Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
    ckandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    ab4c0b3 View commit details
    Browse the repository at this point in the history
  64. SshAgent.Request: Initialize member

    Change-Id: I4c40e95fedac64697ba22685e7638e78fa816db2
    Reviewed-by: André Hartmann <aha_1980@gmx.de>
    Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
    nib952051 authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    028fcbe View commit details
    Browse the repository at this point in the history
  65. Drop unused variables and lambda captures

    Also, add context to connect() expressions where we are or were
    capturing "this".
    
    Change-Id: I6e006ba6f83d532478018550d148ee93eca59605
    Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
    Reviewed-by: hjk <hjk@qt.io>
    Ulf Hermann authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    20c2444 View commit details
    Browse the repository at this point in the history
  66. SshExceptions derive from std::exception

    Change-Id: Id107ed53fed9ff72e90b662dfc024c4ced24a89d
    Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
    nib952051 authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    3871865 View commit details
    Browse the repository at this point in the history
  67. Ssh: Move some Ssh specific images from Utils to Ssh

    Removing the invalid resources dependency on Utils, cleaning up
    the Utils images and prevent other places from using such unthemed
    icons.
    
    Change-Id: I78f5cfe1f48d0853c6c3e8822cbb041c232db426
    Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
    aportale authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    8edddc2 View commit details
    Browse the repository at this point in the history
  68. Combine some SshConnectionParameter members

    Combine host, port, username and password into a 'url' member and
    add some convenience accessors.
    
    Change-Id: Iddc26ff00dad1285c96aa56f196dbc4febe8e974
    Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
    hjk authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    7f8cd31 View commit details
    Browse the repository at this point in the history
  69. Tests: Fix compile

    Broke with 21c66ce5.
    
    Change-Id: Iea3447a8226300333eacf8fa0df587d8ef197e8f
    Reviewed-by: Nikita Baryshnikov <nib952051@gmail.com>
    Reviewed-by: hjk <hjk@qt.io>
    Christian Stenger authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    afaef5f View commit details
    Browse the repository at this point in the history
  70. SSH: Adapt test to signal renaming.

    This was overlooked in the original patch.
    
    Change-Id: I1709e28552ed9dd83bd3e810ba51ef5ec95d8580
    Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    012bf28 View commit details
    Browse the repository at this point in the history
  71. SSH: Fix error in test.

    Change-Id: Ifda41d0fdef54cbc1c5e397be6782bda7a047098
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    dc04362 View commit details
    Browse the repository at this point in the history
  72. SSH: Fix exit code of tests.

    The test apps now return != 0 in case of an error.
    
    Change-Id: I2380bc4b8e0c85e68d79f90ccc39ad9419851b04
    Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
    Christian Kandeler authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    40e7bbc View commit details
    Browse the repository at this point in the history
  73. Reduce usage of qApp in favor of static function calls

    Q*Application classes have unusually many static functions. In many
    cases in our code, these functions are unnecessarily called as instance
    functions, using the qApp helper.
    
    This patch replaces many occurencies of qApp with the according
    Q*Application classname.
    
    Change-Id: I6099a419fa7bf969891269c37ed7a9e817ef5124
    Reviewed-by: hjk <hjk@qt.io>
    aportale authored and sandsmark committed Jan 20, 2018
    Configuration menu
    Copy the full SHA
    4b3a9fb View commit details
    Browse the repository at this point in the history
  74. Configuration menu
    Copy the full SHA
    0904e50 View commit details
    Browse the repository at this point in the history
  75. Configuration menu
    Copy the full SHA
    c5c3c1d View commit details
    Browse the repository at this point in the history
  76. Configuration menu
    Copy the full SHA
    a5ac220 View commit details
    Browse the repository at this point in the history
  77. Configuration menu
    Copy the full SHA
    0ece1b4 View commit details
    Browse the repository at this point in the history
  78. Configuration menu
    Copy the full SHA
    10f6d35 View commit details
    Browse the repository at this point in the history

Commits on Apr 14, 2018

  1. Build: support pkg-config

    The Botan library ships a pkg-config file, which helps finding where the
    library has been installed.
    
    This commit does not remove the previously hardcoded paths, in order to
    keep compatibility for existing users of the library.
    mardy authored and sandsmark committed Apr 14, 2018
    Configuration menu
    Copy the full SHA
    e57d542 View commit details
    Browse the repository at this point in the history

Commits on Aug 11, 2018

  1. Configuration menu
    Copy the full SHA
    7cdfbac View commit details
    Browse the repository at this point in the history

Commits on Aug 25, 2018

  1. Configuration menu
    Copy the full SHA
    2cb5a5a View commit details
    Browse the repository at this point in the history

Commits on Oct 28, 2018

  1. Configuration menu
    Copy the full SHA
    0e32953 View commit details
    Browse the repository at this point in the history
  2. SSH: Add missing check in key exchange reply handler

    We claimed to support the diffie-hellman-group14-sha1 protocol, but
    forgot to actually handle it.
    
    Change-Id: I3193997d7270328700486a15a6281ebf8528ed56
    Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
    ckandeler authored and sandsmark committed Oct 28, 2018
    Configuration menu
    Copy the full SHA
    26ec44a View commit details
    Browse the repository at this point in the history

Commits on Feb 23, 2019

  1. Configuration menu
    Copy the full SHA
    1ab49f2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7866649 View commit details
    Browse the repository at this point in the history
  3. add/port autotests

    upstream commit:
    
      commit 1c6c64df2058cb8f2a06fce1a4ffa5476a80b762
      Author: Christian Kandeler <christian.kandeler@qt.io>
      Date:   Tue Oct 16 17:38:12 2018 +0200
    
          SSH: Turn some manual tests into autotests
    
          Change-Id: Id098709ff74dfc31a26ef42d559ce35d0120c0c3
          Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
    sandsmark committed Feb 23, 2019
    Configuration menu
    Copy the full SHA
    187d2d1 View commit details
    Browse the repository at this point in the history
  4. SSH: Remove nonsensical check

    There is no minimum requirement for the per-channel maximum packet size.
    
    Change-Id: Iced6e3bb1b77f7642d39d4a113ab4236af6b247b
    Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
    ckandeler authored and sandsmark committed Feb 23, 2019
    Configuration menu
    Copy the full SHA
    6d87bd6 View commit details
    Browse the repository at this point in the history
  5. SSH: Introduce and handle generic "channel open" packets

    There are other "channel open" requests than the one for forwarded TCP/
    IP. Factor out the generic parts.
    
    Change-Id: I593a9a075d87d57850697459ab0814c07b75c4d4
    Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
    ckandeler authored and sandsmark committed Feb 23, 2019
    Configuration menu
    Copy the full SHA
    cabe2ba View commit details
    Browse the repository at this point in the history
  6. SSH: Implement X11 forwarding

    Change-Id: Ia7b15e784cb098bc7c6c6be2748d772192187e97
    Reviewed-by: hjk <hjk@qt.io>
    Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
    ckandeler authored and sandsmark committed Feb 23, 2019
    Configuration menu
    Copy the full SHA
    0a74883 View commit details
    Browse the repository at this point in the history
  7. SSH: Add support for "new" OpenSSH private key format

    This format has been around for a while, but with release 7.8 has become
    the default for all keys generated by ssh-keygen.
    
    Change-Id: I0d8f666996832de49aad4f6bd246a5ed820df6cd
    Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
    ckandeler authored and sandsmark committed Feb 23, 2019
    Configuration menu
    Copy the full SHA
    0aa925e View commit details
    Browse the repository at this point in the history
  8. SSH: Fix autotest

    The SshX11InfoRetriever object must not be allocated on the stack, and
    the failure signal was potentially emitted too early for the test to
    catch it.
    
    Change-Id: Iac53546deee183c8f02bafdcc11a7910f3e392c0
    Reviewed-by: Christian Stenger <christian.stenger@qt.io>
    ckandeler authored and sandsmark committed Feb 23, 2019
    Configuration menu
    Copy the full SHA
    19250a2 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d791d38 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2019

  1. Configuration menu
    Copy the full SHA
    72b6960 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    61d6ef8 View commit details
    Browse the repository at this point in the history
  3. add install target

    sandsmark committed Jul 16, 2019
    Configuration menu
    Copy the full SHA
    08e4e5a View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2019

  1. Configuration menu
    Copy the full SHA
    83c376f View commit details
    Browse the repository at this point in the history

Commits on Oct 12, 2019

  1. Configuration menu
    Copy the full SHA
    a1a5ed6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3f53f5f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1248ec8 View commit details
    Browse the repository at this point in the history
  4. I'm blind

    sandsmark committed Oct 12, 2019
    Configuration menu
    Copy the full SHA
    a0797ae View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    22b3253 View commit details
    Browse the repository at this point in the history

Commits on Oct 20, 2019

  1. Configuration menu
    Copy the full SHA
    0433fee View commit details
    Browse the repository at this point in the history
  2. update readme

    sandsmark committed Oct 20, 2019
    Configuration menu
    Copy the full SHA
    4a85dba View commit details
    Browse the repository at this point in the history
  3. add readme for the autotest

    sandsmark committed Oct 20, 2019
    Configuration menu
    Copy the full SHA
    49d552a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    47829fa View commit details
    Browse the repository at this point in the history
  5. start documenting the API

    sandsmark committed Oct 20, 2019
    Configuration menu
    Copy the full SHA
    8a076a2 View commit details
    Browse the repository at this point in the history

Commits on Nov 30, 2019

  1. Configuration menu
    Copy the full SHA
    776125d View commit details
    Browse the repository at this point in the history