Hi,
CA Cert is stored in optionalData of the OicSecCred structure.
*SRPSaveTrustCertChain*, does handle this correctly. But, the
implementation of *GetCaCert *is using temp->publicData. This should be
temp->optionalData.
struct OicSecCred
{
// <Attribute ID>:<Read/Write>:<Multiple/Single>:<Mandatory?>:<Type>
uint16_t credId; // 0:R:S:Y:UINT16
OicUuid_t subject; // 1:R:S:Y:oic.uuid
// If roleId.id is all zeroes, this property is not set.
OicSecRole_t roleId; // 2:R:M:N:oic.sec.roletype
OicSecCredType_t credType; // 3:R:S:Y:oic.sec.credtype
#if defined(__WITH_DTLS__) || defined(__WITH_TLS__)
OicSecKey_t publicData; // own cerificate chain
char *credUsage; // 4:R:S:N:String
* OicSecOpt_t optionalData; // CA's cerificate chain*
#endif /* __WITH_DTLS__ or __WITH_TLS__*/
OicSecKey_t privateData; // 6:R:S:N:oic.sec.key
char *period; // 7:R:S:N:String
// OicUuid_t rownerID; // 8:R:S:Y:oic.uuid
#ifdef MULTIPLE_OWNER
OicUuid_t *eownerID; //9:R:S:N:oic.uuid
#endif //MULTIPLE_OWNER
OicSecCred_t *next;
};
-Ravee
_______________________________________________
iotivity-dev mailing list
[email protected]
https://lists.iotivity.org/mailman/listinfo/iotivity-dev