46 const QSharedPointer<const chipauthenticationinfo_st> mDelegate;
49 [[nodiscard]] ASN1_OBJECT* getProtocolObjectIdentifier()
const override;
50 static bool acceptsProtocol(
const ASN1_OBJECT* pObjectIdentifier);
53 static QSharedPointer<const ChipAuthenticationInfo>
decode(
const QByteArray& pBytes)
55 if (
const auto& delegate = decodeObject<chipauthenticationinfo_st>(pBytes,
false))
57 if (ChipAuthenticationInfo::acceptsProtocol(delegate->mProtocol))
59 return QSharedPointer<const ChipAuthenticationInfo>::create(delegate);
62 return QSharedPointer<const ChipAuthenticationInfo>();
66 [[nodiscard]] QByteArray
encode()
const
72 [[nodiscard]]
int getVersion()
const;
73 [[nodiscard]]
int getKeyId()
const;
77inline QDebug
operator<<(QDebug pDbg,
const QSharedPointer<const ChipAuthenticationInfo>& pChipAuthenticationInfo)
79 QDebugStateSaver saver(pDbg);
80 pDbg.nospace().noquote() << pChipAuthenticationInfo->getOid()
81 <<
", version: " << pChipAuthenticationInfo->getVersion()
82 <<
", keyId: " << pChipAuthenticationInfo->getKeyId();
#define DECLARE_ASN1_OBJECT(name)
Definition: ASN1TemplateUtil.h:169
Definition: ChipAuthenticationInfo.h:42
static QSharedPointer< const ChipAuthenticationInfo > decode(const QByteArray &pBytes)
Definition: ChipAuthenticationInfo.h:53
QByteArray encode() const
Definition: ChipAuthenticationInfo.h:66
Definition: SecurityInfo.h:47
A simple template renderer.
Definition: ActivationContext.h:15
QByteArray encodeObject(T *pObject)
Template function for encoding an OpenSSL type as DER encoded QByteArray.
Definition: ASN1TemplateUtil.h:64
QDebug operator<<(QDebug pDbg, const CommandApdu &pCommandApdu)
Definition: CommandApdu.h:89
Definition: ChipAuthenticationInfo.h:28
ASN1_OBJECT * mProtocol
Definition: ChipAuthenticationInfo.h:29
ASN1_INTEGER * mKeyId
Definition: ChipAuthenticationInfo.h:31
ASN1_INTEGER * mVersion
Definition: ChipAuthenticationInfo.h:30