diff options
author | Sona Kurazyan <sona.kurazyan@qt.io> | 2019-03-27 16:41:48 +0100 |
---|---|---|
committer | Sona Kurazyan <sona.kurazyan@qt.io> | 2019-03-29 12:32:33 +0000 |
commit | 64b696e5176b9672a03f0d2f47cc47236b3551ed (patch) | |
tree | 5d4ad6e1c5e1f8d3a2e6c9735ac51f3496a70f67 | |
parent | d1e1548ccf83bf393dfa36b2c0eb464b59a2926d (diff) |
Close the DTLS connection during destruction
Change-Id: Id7bc8ac1506ae543c7964b0bdcacf39588cd7334
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
-rw-r--r-- | src/coap/qcoapqudpconnection.cpp | 10 | ||||
-rw-r--r-- | src/coap/qcoapqudpconnection_p.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/coap/qcoapqudpconnection.cpp b/src/coap/qcoapqudpconnection.cpp index 27a23e0..636554c 100644 --- a/src/coap/qcoapqudpconnection.cpp +++ b/src/coap/qcoapqudpconnection.cpp @@ -164,6 +164,16 @@ QCoapQUdpConnectionPrivate::QCoapQUdpConnectionPrivate(QtCoap::SecurityMode secu { } +QCoapQUdpConnectionPrivate::~QCoapQUdpConnectionPrivate() +{ +#if QT_CONFIG(dtls) + if (dtls && dtls->isConnectionEncrypted()) { + Q_ASSERT(udpSocket); + dtls->shutdown(udpSocket); + } +#endif +} + /*! \internal diff --git a/src/coap/qcoapqudpconnection_p.h b/src/coap/qcoapqudpconnection_p.h index 5491b60..587f5a2 100644 --- a/src/coap/qcoapqudpconnection_p.h +++ b/src/coap/qcoapqudpconnection_p.h @@ -57,6 +57,7 @@ class Q_AUTOTEST_EXPORT QCoapQUdpConnectionPrivate : public QCoapConnectionPriva { public: QCoapQUdpConnectionPrivate(QtCoap::SecurityMode security = QtCoap::NoSec); + ~QCoapQUdpConnectionPrivate() override; virtual bool bind(); |