aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/ssh/sshkeyexchange.cpp
diff options
context:
space:
mode:
authorDmytro Poplavskiy <[email protected]>2016-02-22 15:28:58 +1000
committerDmytro Poplavskiy <[email protected]>2016-02-24 00:38:24 +0000
commit51edace4219293ac5a7b6fcf686606f3146088a7 (patch)
tree01ec7c29b9df4e19b8b12455fd9e047fffa3cd72 /src/libs/ssh/sshkeyexchange.cpp
parent466bf485b0e8e35339dc5fe36db28c324c14b615 (diff)
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 <[email protected]> Reviewed-by: Christian Kandeler <[email protected]>
Diffstat (limited to 'src/libs/ssh/sshkeyexchange.cpp')
-rw-r--r--src/libs/ssh/sshkeyexchange.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libs/ssh/sshkeyexchange.cpp b/src/libs/ssh/sshkeyexchange.cpp
index ef48c8f05ff..cdcb45556c5 100644
--- a/src/libs/ssh/sshkeyexchange.cpp
+++ b/src/libs/ssh/sshkeyexchange.cpp
@@ -154,9 +154,9 @@ void SshKeyExchange::sendNewKeysPacket(const SshIncomingPacket &dhReply,
DH_KA_Operation dhOp(*m_dhKey);
SecureVector<byte> encodedF = BigInt::encode(reply.f);
encodedK = dhOp.agree(encodedF, encodedF.size());
- m_dhKey.reset(nullptr);
printData("y", AbstractSshPacket::encodeMpInt(m_dhKey->get_y()));
printData("f", AbstractSshPacket::encodeMpInt(reply.f));
+ m_dhKey.reset(nullptr);
} else {
Q_ASSERT(m_ecdhKey);
concatenatedData // Q_C.