SSH error messages not shown - Mailing list pgadmin-hackers

From Jacek Wielemborek
Subject SSH error messages not shown
Date
Msg-id 557C4AA2.3000401@gmail.com
Whole thread Raw
Responses Re: SSH error messages not shown
List pgadmin-hackers
Hi,

When an libssh2 call fails, pgAdmin III just shows the error code and
nothing else. Consider the following patch - this is what I created
while wondering why my hostkeys don't work:

diff --git a/pgadmin/utils/sshTunnel.cpp b/pgadmin/utils/sshTunnel.cpp
index fd80214..e15f764 100644
--- a/pgadmin/utils/sshTunnel.cpp
+++ b/pgadmin/utils/sshTunnel.cpp
@@ -201,8 +201,13 @@ bool CSSHTunnelThread::Initialize()
 #endif
                        if (rc)
                        {
-
LogSSHTunnelErrors(wxString::Format(_("SSH error: Authentication by
identity file failed with error code %d"), rc), GetId());
+                               char* errmsg;
+                               int errmsg_len;
+                               libssh2_session_last_error(m_session,
&errmsg, &errmsg_len, 0);
+                               wxString errmsg_s(errmsg, wxConvLibc);
+
LogSSHTunnelErrors(wxString::Format(_("SSH error: Authentication by
identity file failed with error code %d [%s]"), rc, errmsg_s.c_str()),
GetId());
                                Cleanup();
+                               free(errmsg);
                                return false;
                        }
                }

Perhaps we could use this kind of routines wherever rc is being checked?

Cheers,
d33tah


Attachment

pgadmin-hackers by date:

Previous
From: Sanket Mehta
Date:
Subject: Re: [PATCH] Fix crash when disabling auto commit
Next
From: Jacek Wielemborek
Date:
Subject: valgrind complains a lot when trying to establish an SSH tunnel while giving wrong key