summaryrefslogtreecommitdiff
path: root/src/libs/ssh/sshconnection.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge commit '3c85058694ee2e41658d17f524fb48f0b187d2fe'Eike Ziller2015-02-121-6/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/libs/utils/tooltip/tipcontents.cpp src/libs/utils/tooltip/tipcontents.h src/plugins/android/androiddeployqtstep.cpp src/plugins/baremetal/baremetalconstants.h src/plugins/baremetal/baremetaldevice.cpp src/plugins/baremetal/baremetaldevice.h src/plugins/baremetal/baremetaldeviceconfigurationwidget.cpp src/plugins/baremetal/baremetaldeviceconfigurationwidget.h src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h src/plugins/baremetal/baremetalplugin.cpp src/plugins/baremetal/baremetalplugin.h src/plugins/baremetal/baremetalruncontrolfactory.cpp src/plugins/baremetal/baremetalruncontrolfactory.h src/plugins/cppeditor/cppcodemodelinspectordialog.cpp src/plugins/cppeditor/cppdoxygen_test.cpp src/plugins/cppeditor/cppdoxygen_test.h src/plugins/debugger/breakpointmarker.cpp src/plugins/debugger/debuggeritemmodel.cpp src/plugins/debugger/debuggeritemmodel.h src/plugins/debugger/loadcoredialog.cpp src/plugins/genericprojectmanager/cppmodelmanagerhelper.cpp src/plugins/projectexplorer/addnewmodel.cpp src/plugins/projectexplorer/addnewmodel.h src/plugins/projectexplorer/jsonwizard/jsonfieldpage.cpp src/plugins/qmlprofiler/abstracttimelinemodel.cpp src/plugins/qmlprofiler/abstracttimelinemodel.h src/plugins/qmlprofiler/notesmodel.cpp src/plugins/qmlprofiler/qml/CategoryLabel.qml src/plugins/qmlprofiler/qml/MainView.qml src/plugins/qmlprofiler/qml/Overview.js src/plugins/qmlprofiler/qml/Overview.qml src/plugins/qmlprofiler/qml/TimeDisplay.qml src/plugins/qmlprofiler/qml/TimeMarks.qml src/plugins/qmlprofiler/qmlprofilertimelinemodelproxy.cpp src/plugins/qmlprofiler/sortedtimelinemodel.cpp src/plugins/qmlprofiler/sortedtimelinemodel.h src/plugins/qmlprofiler/timelinemodelaggregator.cpp src/plugins/qmlprofiler/timelinemodelaggregator.h src/plugins/qmlprofiler/timelinerenderer.cpp src/plugins/qmlprofiler/timelinerenderer.h src/plugins/qmlprojectmanager/QmlProjectManager.json.in src/plugins/texteditor/findinfiles.cpp src/plugins/vcsbase/vcsconfigurationpage.cpp src/shared/qbs src/shared/scriptwrapper/interface_wrap_helpers.h src/shared/scriptwrapper/wrap_helpers.h tests/auto/qmlprofiler/abstracttimelinemodel/tst_abstracttimelinemodel.cpp tests/system/suite_debugger/tst_debug_empty_main/test.py tests/system/suite_debugger/tst_qml_js_console/test.py tests/system/suite_debugger/tst_qml_locals/test.py Change-Id: I67540b648f8b162496f4aa606b04d50c7c9125c6
| * Update LicenseEike Ziller2015-01-161-6/+6
| | | | | | | | | | Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125 Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
* | SSH: implement host key checking.Christian Kandeler2014-12-151-4/+5
| | | | | | | | | | | | Change-Id: I5f10bd801bb5cf43e58193c41e62d9ea2f9cb645 Task-number: QTCREATORBUG-13339 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | Catch exceptions by const reference.Christian Kandeler2014-11-281-4/+4
|/ | | | | Change-Id: Ic537fd123478a4f8fe4e54736d444fa64fd62d9c Reviewed-by: hjk <hjk121@nokiamail.com>
* License updateEike Ziller2014-10-091-7/+8
| | | | | Change-Id: I3c22ef2685d7aa589f5d0ab74d693653a4c32082 Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
* Use double quotes instead of single quotes as per our guidelines.Christian Kandeler2014-04-221-2/+2
| | | | | Change-Id: Ib608bb49e26781aef1914085a5d801fcdcd5eb56 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
* Incremented year in copyright infoRobert Loehning2014-01-081-1/+1
| | | | | | Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* SSH: Add missing library initialization.Christian Kandeler2013-08-141-21/+7
| | | | | | | | | | | | | 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>
* Merge remote-tracking branch 'origin/2.8'Eike Ziller2013-06-251-1/+2
|\ | | | | | | | | | | | | Conflicts: src/plugins/fakevim/fakevimhandler.cpp Change-Id: I8101f18b87859924644471817d4f1408790d5628
| * Doc: use standard wording in \brief commandsLeena Miettinen2013-06-201-1/+2
| | | | | | | | | | | | | | | | | | QDoc does some magic with the \class and \namespaces and \brief commands, so the following wording must be used: "The xxx class yyy ..." Change-Id: Id231f30e8464898b776888d5423523de404aae34 Reviewed-by: Eike Ziller <eike.ziller@digia.com>
* | SSH: Implement and make use of RFC 4256.Christian Kandeler2013-06-201-21/+79
|/ | | | | | | | | | | | | | | | | | | 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>
* Merge remote-tracking branch 'origin/2.6'Oswald Buddenhagen2013-01-311-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/autotoolsprojectmanager/AutotoolsProjectManager.pluginspec.in src/plugins/debugger/qtmessageloghandler.cpp src/plugins/debugger/qtmessagelogwindow.cpp src/plugins/madde/maemodeployconfigurationwidget.cpp src/plugins/qmldesigner/components/integration/designdocumentcontroller.cpp src/plugins/qmldesigner/designercore/include/widgetqueryview.h src/plugins/qmldesigner/designercore/metainfo/metainfoparser.cpp src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.h src/plugins/qmlprojectmanager/qmlprojectapplicationwizard.cpp src/plugins/qnx/bardescriptormagicmatcher.h src/plugins/qt4projectmanager/profilekeywords.cpp src/plugins/remotelinux/deployablefilesperprofile.cpp src/plugins/remotelinux/deployablefilesperprofile.h src/plugins/remotelinux/deploymentinfo.cpp src/plugins/remotelinux/deploymentsettingsassistant.cpp src/plugins/remotelinux/profilesupdatedialog.cpp tests/auto/icheckbuild/ichecklib.cpp tests/auto/icheckbuild/parsemanager.cpp tests/auto/icheckbuild/parsemanager.h Change-Id: Ie465a578446a089e1c502d1cb1096e84ca058104
| * Incremented year in copyright infov2.6.2Robert Loehning2013-01-291-1/+1
| | | | | | | | | | Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
| * Ssh: Support older serversOrgad Shaneh2012-10-111-0/+3
| | | | | | | | | | Change-Id: I686fad0996f53d4904f5ac9a5b9a0f4393b50d9f Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* | Remove braces for single lines of conditionsOrgad Shaneh2013-01-081-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | #!/usr/bin/env ruby Dir.glob('**/*.cpp') { |file| # skip ast (excluding paste, astpath, and canv'ast'imer) next if file =~ /ast[^eip]|keywords\.|qualifiers|preprocessor|names.cpp/i s = File.read(file) next if s.include?('qlalr') orig = s.dup s.gsub!(/\n *if [^\n]*{\n[^\n]*\n\s+}(\s+else if [^\n]* {\n[^\n]*\n\s+})*(\s+else {\n[^\n]*\n\s+})?\n/m) { |m| res = $& if res =~ /^\s*(\/\/|[A-Z_]{3,})/ # C++ comment or macro (Q_UNUSED, SDEBUG), do not touch braces res else res.gsub!('} else', 'else') res.gsub!(/\n +} *\n/m, "\n") res.gsub(/ *{$/, '') end } s.gsub!(/ *$/, '') File.open(file, 'wb').write(s) if s != orig } Change-Id: I3b30ee60df0986f66c02132c65fc38a3fbb6bbdc Reviewed-by: hjk <qthjk@ovi.com>
* | SSH: Make it configurable whether to check server data pedantically.Christian Kandeler2012-10-111-12/+15
| | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/2.6'Eike Ziller2012-10-051-21/+20
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.cpp share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.h src/plugins/debugger/qtmessageloghandler.cpp src/plugins/debugger/qtmessageloghandler.h src/plugins/debugger/qtmessagelogwindow.cpp src/plugins/madde/maemodeployconfigurationwidget.cpp src/plugins/madde/maemodeployconfigurationwidget.h src/plugins/remotelinux/deployablefilesperprofile.cpp src/plugins/remotelinux/deployablefilesperprofile.h src/plugins/remotelinux/deploymentinfo.cpp src/plugins/remotelinux/deploymentinfo.h src/plugins/remotelinux/deploymentsettingsassistant.cpp src/plugins/remotelinux/profilesupdatedialog.cpp src/plugins/remotelinux/remotelinuxdeploymentdatamodel.h tests/auto/icheckbuild/ichecklib.cpp tests/auto/icheckbuild/ichecklib_global.h tests/auto/icheckbuild/parsemanager.cpp tests/auto/icheckbuild/parsemanager.h tests/manual/ssh/tunnel/tunnel.h Change-Id: I04d7761df6bd936ad00e0547974284c967d39580
| * Adjust license headershjk2012-10-051-21/+20
| | | | | | | | | | Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825 Reviewed-by: Eike Ziller <eike.ziller@digia.com>
* | Merge branch 'master' of ↵Eike Ziller2012-10-041-3/+3
|\ \ | | | | | | | | | ssh://codereview.qt-project.org:29418/qt-creator/qt-creator
| * | SSH: Add infrastructure for passing additional connection options.Christian Kandeler2012-10-041-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Merge remote-tracking branch 'origin/2.6'Eike Ziller2012-10-041-2/+2
|\ \ \ | |/ / |/| / | |/ | | | | | | | | | | Conflicts: dist/gdb/Makefile.osx src/libs/qmldebug/qmldebug.qbs src/plugins/android/androidsettingswidget.cpp Change-Id: I85627130b575f7d08f416dea52031fa72019b217
| * tr()-fixes for 2.6.Friedemann Kleint2012-10-011-2/+2
| | | | | | | | | | | | Change-Id: I6ad0e25d084cfccde6776c8d4cdaae43ea071b55 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
* | Merge remote-tracking branch 'origin/2.6'Eike Ziller2012-09-271-18/+60
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | Conflicts: share/qtcreator/qml/qmlpuppet/commands/changenodesourcecommand.h share/qtcreator/qml/qmlpuppet/commands/tokencommand.h share/qtcreator/qml/qmlpuppet/container/reparentcontainer.h share/qtcreator/qml/qmlpuppet/qml2puppet/instances/componentnodeinstance.h share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/nodeinstanceclientproxy.cpp src/plugins/git/gitsettings.cpp tests/manual/ssh/remoteprocess/remoteprocesstest.h Change-Id: I00c294e6d911d272615e65fed58562399af97a4e
| * SSH: Fix parsing of server id.Christian Kandeler2012-09-261-18/+60
| | | | | | | | | | | | | | | | | | | | | | The current implementation is a bit sloppy, so one can construct certain invalid strings that will be accepted as well as certain valid ones that will be rejected. The new checks are much more precise. Most importantly in practice, the version string "1.99" sent by some older servers is now accepted, as required by the RFC. Change-Id: Ib35c27d3a3bc4aea259b9a0dad66817435d95c0a Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
* | Do not use the fromAscii() and toAscii() functions.Christian Kandeler2012-09-211-1/+1
| | | | | | | | | | | | | | | | | | | | They are deprecated in Qt 5. Use fromLatin1() and toLatin1() instead. In Qt 5, these always do the same thing as their "Ascii" counterparts. The same goes for Qt 4, provided QTextCodec::setCodecForCStrings has not been set, which it hasn't. Change-Id: I04edeb376762b6671eff8156094f0d5e2cb8e1ea Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* | SSH: Implement tunneling.Christian Kandeler2012-08-281-0/+13
|/ | | | | | | | | 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>
* SSH: Take more care when closing channels.Christian Kandeler2012-08-201-2/+7
| | | | | | | | We can't just pretend a channel is already gone after we request it to close; it's only closed when the server has sent the acknowledgement. Change-Id: Ib6e8b9bf77635995259885af13755f5fc0e825a9 Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
* Contact -> qt-project.orgEike Ziller2012-07-191-3/+1
| | | | | Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* SSH: Close channels before re-using a connection.Christian Kandeler2012-06-281-0/+9
| | | | | | | | | | | | Otherwise a new client acquiring the connection could be affected by things happening in channels that were not opened by that client, which would certainly be unexpected. In particular, if the new owner of the connection runs in a different thread than the old one, crashes could occur since the connection assumes its channels run in the same thread. Change-Id: I4fdf2b5a3751ed506631d6878e94342da033c31c Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
* Update botan library.Christian Kandeler2012-06-261-2/+1
| | | | | | | | | | | | Old version was 1.8.8, new one is 1.10.2. We now put all the code into one pair of files (via a botan configure option) and move platform-specific defines into the pro/qbs files. Besides drastically reducing the number of files, this is expected to make future updates less messy. Change-Id: I004166b2ab15b6a699d69aebfcfd9999c5ccdb91 Reviewed-by: hjk <qthjk@ovi.com>
* SSH: Add parent object to SshConnection constructor.Christian Kandeler2012-06-081-1/+2
| | | | | | | | There's no mandatory use of shared pointers anymore, so client code should be able to make use of QObject-based ownership. Change-Id: I2344ca66a40c310ef739b32502eb8471da98c03a Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
* SSH: Fix some potential crashes.Christian Kandeler2012-06-061-3/+3
| | | | | | Change-Id: I102e35c3dcd3725f357c91d9f0a77ab28d881b0d Reviewed-by: Oliver Wolff <oliver.wolff@nokia.com> Reviewed-by: Tim Jenssen <tim.jenssen@nokia.com>
* SSH: Use plain pointers to SshConnection objects.Christian Kandeler2012-05-291-6/+2
| | | | | | | | | | It used to be shared pointers so that existing connection objects could easily be passed around in order not to open a new connection to the same server. Since the introduction of the SshConnectionManager, this is no longer necessary. Change-Id: I13fd3eceaf35d562e6260e9969abbffb01edd6b5 Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
* Move SSH support into a dedicated library.Christian Kandeler2012-05-221-0/+728
It does not belong into libUtils, which is a collection of small unrelated utility classes. Task-number: QTCREATORBUG-7218 Change-Id: Id92b9f28678afec93e6f07166adfde6550f38072 Reviewed-by: Eike Ziller <eike.ziller@nokia.com>