X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=resource%2Fcsdk%2Fsecurity%2Fprovisioning%2Finclude%2Finternal%2Fsecureresourceprovider.h;h=6768791ee94d79608b6434a44dceb507b2438a0d;hb=d2c51d0d4c93d4428b950fffbc0d52fa551c2bf0;hp=f4cd241faf868a2f361fbccbc5ed89ee0b087cde;hpb=db6ac717c0e855d0f1b2fbb5cd2cbcf7b2162999;p=platform%2Fupstream%2Fiotivity.git diff --git a/resource/csdk/security/provisioning/include/internal/secureresourceprovider.h b/resource/csdk/security/provisioning/include/internal/secureresourceprovider.h index f4cd241..6768791 100644 --- a/resource/csdk/security/provisioning/include/internal/secureresourceprovider.h +++ b/resource/csdk/security/provisioning/include/internal/secureresourceprovider.h @@ -143,7 +143,7 @@ OCStackResult SRPProvisionTrustCertChain(void *ctx, OicSecCredType_t type, uint1 * @param[out] credId CredId of saved trust certificate chain in Cred of SVR. * @return OC_STACK_OK in case of success and other value otherwise. */ -OCStackResult SRPSaveTrustCertChain(uint8_t *trustCertChain, size_t chainSize, +OCStackResult SRPSaveTrustCertChain(const uint8_t *trustCertChain, size_t chainSize, OicEncodingType_t encodingType,uint16_t *credId); /** @@ -157,6 +157,18 @@ OCStackResult SRPSaveTrustCertChain(uint8_t *trustCertChain, size_t chainSize, OCStackResult SRPSaveOwnCertChain(OicSecKey_t * cert, OicSecKey_t * key, uint16_t *credId); /** + * function to save own role certificate into Cred of SVR. + * + * @param[in] cert Certificate chain to be saved in Cred of SVR + * @param[out] credId CredId of saved trust certificate chain in Cred of SVR. + * @return OC_STACK_OK in case of success and other value otherwise. + * + * @note The certificate public key must be the same as public key in the identity + * certificate (installed by SRPSaveOwnCertChain). + */ +OCStackResult SRPSaveOwnRoleCert(OicSecKey_t * cert, uint16_t *credId); + +/** * function to register callback, for getting notification for TrustCertChain change. * * @param[in] ctx user context to be passed. @@ -202,10 +214,17 @@ OCStackResult SRPProvisionDirectPairing(void *ctx, const OCProvisionDev_t *selec * @param[in] ctx Application context to be returned in result callback. * @param[in] type Type of credentials to be provisioned to the device. * @param[in] keySize size of key - * @param[in] pDev1 Pointer to PMOwnedDeviceInfo_t instance, respresenting resource to be provsioned. - * @param[in] pDev2 Pointer to PMOwnedDeviceInfo_t instance, respresenting resource to be provsioned. - * @param[in] pemCert When provisioning a certificate (type is SIGNED_ASYMMETRIC_KEY), this is the - * certificate, encoded as PEM. + * @param[in] pDev1 Pointer to PMOwnedDeviceInfo_t instance, representing the resource to be provisioned. + * @param[in] pDev2 Pointer to PMOwnedDeviceInfo_t instance, representing the resource to be provisioned. + * Use NULL to indicate the local device. + * @param[in] pemCert When provisioning a certificate (type is SIGNED_ASYMMETRIC_KEY), this is the + * certificate, encoded as PEM. + * @param[in] role1 When provisioning a PSK (type is SYMMETRIC_PAIR_WISE_KEY), this is the role which + * the device indicated by pDev1 will also have when communicating with pDev2. Use NULL + * to associate no role with this credential. + * @param[in] role2 When provisioning a PSK (type is SYMMETRIC_PAIR_WISE_KEY), this is the role which + * the device indicated by pDev1 will also have when communicating with pDev2. Use NULL + * to associate no role with this credential. * @param[in] resultCallback callback provided by API user, callback will be called when * provisioning request recieves a response from first resource server. * @return OC_STACK_OK in case of success and other value otherwise. @@ -214,6 +233,24 @@ OCStackResult SRPProvisionCredentials(void *ctx,OicSecCredType_t type, size_t ke const OCProvisionDev_t *pDev1, const OCProvisionDev_t *pDev2, const char* pemCert, + const OicSecRole_t *role1, + const OicSecRole_t *role2, + OCProvisionResultCB resultCallback); + /** + * API to provision credential to devices with DOS. + * + * @param[in] ctx Application context to be returned in result callback. + * @param[in] type Type of credentials to be provisioned to the device. + * @param[in] keySize size of key + * @param[in] pDev1 Pointer to PMOwnedDeviceInfo_t instance, representing the resource to be provisioned. + * @param[in] pDev2 Pointer to PMOwnedDeviceInfo_t instance, representing the resource to be provisioned. + * @param[in] resultCallback callback provided by API user, callback will be called when + * provisioning request recieves a response from first resource server. + * @return OC_STACK_OK in case of success and other value otherwise. + */ +OCStackResult SRPProvisionCredentialsDos(void *ctx,OicSecCredType_t type, size_t keySize, + const OCProvisionDev_t *pDev1, + const OCProvisionDev_t *pDev2, OCProvisionResultCB resultCallback); /**