30 Q_NETWORK_EXPORT QSslKeyingMaterial();
31 Q_NETWORK_EXPORT
explicit QSslKeyingMaterial(
const QByteArray &label, qsizetype size);
32 Q_NETWORK_EXPORT
explicit QSslKeyingMaterial(
const QByteArray &label, qsizetype size,
33 const QByteArray &context);
34 Q_NETWORK_EXPORT QSslKeyingMaterial(
const QSslKeyingMaterial &other);
35 Q_NETWORK_EXPORT QSslKeyingMaterial &operator=(
const QSslKeyingMaterial &other);
36 QSslKeyingMaterial(QSslKeyingMaterial &&other)
noexcept
37 : m_label(std::move(other.m_label)),
38 m_context(std::move(other.m_context)),
39 m_value(std::move(other.m_value)),
40 m_requestedSize(other.m_requestedSize),
41 m_reserved{std::exchange(other.m_reserved,
nullptr)}
43 QT_MOVE_ASSIGNMENT_OPERATOR_IMPL_VIA_PURE_SWAP(QSslKeyingMaterial)
44 Q_NETWORK_EXPORT ~QSslKeyingMaterial();
46 Q_NETWORK_EXPORT
bool isValid()
const noexcept;
48 QByteArray label()
const
53 QByteArray context()
const
58 QByteArray value()
const
63 qsizetype requestedSize()
const noexcept
65 return m_requestedSize;
68 void swap(QSslKeyingMaterial &other)
noexcept
70 m_label.swap(other.m_label);
71 m_context.swap(other.m_context);
72 m_value.swap(other.m_value);
73 std::swap(m_requestedSize, other.m_requestedSize);
74 qt_ptr_swap(m_reserved, other.m_reserved);
81 qsizetype m_requestedSize = 0;
82 Q_DECL_UNUSED_MEMBER
void *m_reserved =
nullptr;
84 friend Q_NETWORK_EXPORT
bool comparesEqual(
const QSslKeyingMaterial &lhs,
85 const QSslKeyingMaterial &rhs)
noexcept;
86 Q_DECLARE_EQUALITY_COMPARABLE(QSslKeyingMaterial)
88 friend size_t qHash(
const QSslKeyingMaterial &material)
noexcept
89 {
return qHash(material, 0); }
90 friend Q_NETWORK_EXPORT size_t qHash(
const QSslKeyingMaterial &material, size_t seed)
noexcept;
92#ifndef QT_NO_DEBUG_STREAM
93 friend Q_NETWORK_EXPORT QDebug operator<<(QDebug debug,
const QSslKeyingMaterial &keying);
96 friend class QTlsPrivate::TlsCryptographOpenSSL;