On 10/07/2010 03:41 PM, David C. Rankin wrote:
On 10/07/2010 03:00 PM, David C. Rankin wrote:
I don't know what recent update may have caused this (I suspect openssl), but it isn't suse specific. It also broke on Arch. The strange thing with both is 'fish' works fine -- even on a non-standard port. (apparently fish respects ~/.ssh/config)
I should be clear. I run ssh on high ports 6500+ and have for years (keeps the script kiddies at bay). This bug effects kde3 sftp where ssh (of the remote host) is on a non-standard port (not 22). I have all my places setup with sftp as:
sftp://host:port/dir
which have worked since the dawn of time in kde3 konqueror, kate, kwrite, etc... Now if you attempt to connect with a remote host on a non-standard port you get the error:
Unexpected sftp error: 2 - konqueror
Error encountered while talking to ssh
However if ssh for the remote host is on port 22, then
sftp://host/dir
works just fine. stfp still works fine in gnome and kde4 with the host:port format, it is just kde3 that is impacted on 11.3. Also, scp, rsync, etc.. all continue to work fine and all respect the ~/.ssh/config Host/Port pairs.
So something changed that breaks kde3's use of the 'sftp://host:port/dir' url format when (port != 22).
Let me know if I can send anything else or run further tests that might help.
It does seem that a problem remains in kdebase/kioslave/sftp that makes sftp to non-standard ports incompatible with openssh 5.6. Researching prior problems created by openssh version changes, I ran across this old gentoo description of the same error: They fixed: ksshprocess.cpp line 101 "ssh-userauth2 successful:" change to: "Authentication succeeded" (to cure the problem with openssh 3.6) It looks like a similar change has been made here that breaks sftp to non-standard ports in konqueror/kwrite/kate/etc... Looking at ksshprocess.cpp, there is an array of accepted responses for success & failed: const char * const KSshProcess::authSuccessMsg[] = { "Authentication succeeded", "ssh-userauth2 successful", "Received SSH_CROSS_AUTHENTICATED packet" }; const char* const KSshProcess::authFailedMsg[] = { "Permission denied (", "Permission denied (", "Authentication failed." }; Two questions: (1) how do I get the response from konqueror's failed sftp to high ports to tell if the response is matching one of the success strings?; and (2) have there been any changes/patches to ksshprocess.cpp in the opensuse KDE:/KDE3/openSUSE_11.3/ srpms? Also, since I was able to connect using i586 packages, this may be an x86_64 only issue. Let me know your thoughts. -- David C. Rankin, J.D.,P.E. Rankin Law Firm, PLLC 510 Ochiltree Street Nacogdoches, Texas 75961 Telephone: (936) 715-9333 Facsimile: (936) 715-9339 www.rankinlawfirm.com -- To unsubscribe, e-mail: opensuse-kde3+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kde3+help@opensuse.org