nl:: Weave:: Profiles:: Security:: CertProvisioning:: WeaveCertProvEngine
#include <src/lib/profiles/security/WeaveCertProvisioning.h>
Implémente la logique de base de l'objet de protocole de provisionnement des certificats Weave.
Résumé
Constructeurs et destructeurs |
|
---|---|
WeaveCertProvEngine(void)
|
Types publics |
|
---|---|
@246{
|
enum |
EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
|
typedefvoid(*
Cette fonction est le rappel de l'application qui est invoqué lors des événements de l'API Certificate Provisioning Engine. |
EventType{
|
enum |
State{
|
enum |
Attributs publics |
|
---|---|
AppState
|
void *
Pointeur vers des données spécifiques à l'application.
|
Fonctions publiques |
|
---|---|
AbortCertificateProvisioning(void)
|
void
Arrête tout échange GetCertificate en cours.
|
GenerateGetCertificateRequest(PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
|
Générez un message GetCertificateRequest.
|
GetBinding(void) const
|
Binding *
Renvoie un pointeur vers l'objet Binding associé à WeaveCertProvEngine.
|
GetEventCallback(void) const
|
Renvoie un pointeur vers la fonction de rappel d'événement d'API actuellement configurée sur l'objet WeaveCertProvEngine.
|
GetMfrAttestDelegate(void) const
|
Renvoie un pointeur vers l'objet délégué d'attestation du fabricant actuellement configuré sur l'objet WeaveCertProvEngine.
|
GetOpAuthDelegate(void) const
|
Renvoie un pointeur vers l'objet délégué d'authentification opérationnelle actuellement configuré sur l'objet WeaveCertProvEngine.
|
GetReqType(void) const
|
uint8_t
Récupérez le type de requête actuel.
|
GetState(void) const
|
Récupérez l'état actuel de l'objet WeaveCertProvEngine.
|
Init(Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState)
|
Initialisez un objet WeaveCertProvEngine en préparation de l'envoi du message de demande de certificat.
|
ProcessGetCertificateResponse(PacketBuffer *msgBuf)
|
Traiter le message GetCertificateResponse.
|
SetBinding(Binding *binding)
|
void
Définit l'objet de liaison sur l'objet WeaveCertProvEngine.
|
SetEventCallback(EventCallback eventCallback)
|
void
Définit la fonction de rappel d'événement d'API sur l'objet WeaveCertProvEngine.
|
SetMfrAttestDelegate(WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
|
void
Définit l'objet délégué d'attestation du fabricant sur l'objet WeaveCertProvEngine.
|
SetOpAuthDelegate(WeaveNodeOpAuthDelegate *opAuthDelegate)
|
void
Définit l'objet délégué d'authentification opérationnelle sur l'objet WeaveCertProvEngine.
|
Shutdown(void)
|
void
Arrêtez un objet WeaveCertProvEngine précédemment initialisé.
|
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
|
Lancez le protocole de provisionnement des certificats.
|
Structs |
|
---|---|
nl:: |
Paramètres d'entrée pour l'événement d'API de provisionnement de certificats Weave. |
nl:: |
Paramètres de sortie de l'événement de l'API de provisionnement des certificats Weave. |
Types publics
@246
@246
Propriétés | |
---|---|
kReqType_GetInitialOpDeviceCert
|
Le type de requête Get Certificate consiste à obtenir un certificat opérationnel initial. |
kReqType_RotateOpDeviceCert
|
Le type de requête Get Certificate consiste à alterner le certificat opérationnel actuel. |
EventCallback
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
Cette fonction est le rappel de l'application qui est invoqué lors des événements de l'API Certificate Provisioning Engine.
Détails | |||||||||
---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
EventType
EventType
Propriétés | |
---|---|
kEvent_CommunicationError
|
Une erreur de communication s'est produite lors de l'envoi d'une demande GetCertificateRequest ou lors de l'attente d'une réponse. |
kEvent_PrepareAuthorizeInfo
|
L'application est invitée à préparer la charge utile pour GetCertificateRequest. |
kEvent_ResponseReceived
|
Un message GetCertificateResponse a été reçu du pair. |
État
State
Propriétés | |
---|---|
kState_Idle
|
L'objet de moteur est inactif. |
kState_NotInitialized
|
L'objet de moteur n'est pas initialisé. |
kState_PreparingBinding
|
L'objet de moteur attend que la liaison soit prête. |
kState_RequestInProgress
|
Un message GetCertificateRequest a été envoyé et l'objet moteur attend une réponse. |
Attributs publics
AppState
void * AppState
Pointeur vers des données spécifiques à l'application.
Fonctions publiques
AbortCertificateProvisioning
void AbortCertificateProvisioning( void )
Arrête tout échange GetCertificate en cours.
GenerateGetCertificateRequest
WEAVE_ERROR GenerateGetCertificateRequest( PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest )
Générez un message GetCertificateRequest.
Cette méthode génère une structure GetCertificateRequest Weave encodée au format TLV Weave.
Lors de la formation du message GetCertificateRequest, la méthode envoie une requête à l'application, via les fonctions WeaveNodeOpAuthDelegate et WeaveNodeMfrAttestDelegate, ainsi que l'événement de l'API PrepareAuthorizeInfo, afin de préparer la charge utile du message.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Valeurs de retour |
|
GetBinding
Binding * GetBinding( void ) const
Renvoie un pointeur vers l'objet Binding associé à WeaveCertProvEngine.
GetEventCallback
EventCallback GetEventCallback( void ) const
Renvoie un pointeur vers la fonction de rappel d'événement d'API actuellement configurée sur l'objet WeaveCertProvEngine.
GetMfrAttestDelegate
WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate( void ) const
Renvoie un pointeur vers l'objet délégué d'attestation du fabricant actuellement configuré sur l'objet WeaveCertProvEngine.
GetOpAuthDelegate
WeaveNodeOpAuthDelegate * GetOpAuthDelegate( void ) const
Renvoie un pointeur vers l'objet délégué d'authentification opérationnelle actuellement configuré sur l'objet WeaveCertProvEngine.
GetReqType
uint8_t GetReqType( void ) const
Récupérez le type de requête actuel.
Init
WEAVE_ERROR Init( Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState )
Initialisez un objet WeaveCertProvEngine en préparation de l'envoi du message de demande de certificat.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
ProcessGetCertificateResponse
WEAVE_ERROR ProcessGetCertificateResponse( PacketBuffer *msgBuf )
Traiter le message GetCertificateResponse.
Cette méthode traite la structure GetCertificateResponse de Weave encodée au format TLV Weave.
Une fois le traitement du message GetCertificateResponse terminé, la méthode appelle l'application, via l'événement d'API ResponseReceived, pour fournir le résultat.
Si le traitement du message GetCertificateResponse échoue, la méthode appelle l'application, via l'événement d'API CommunicationError, pour signaler l'erreur.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Valeurs de retour |
|
SetBinding
void SetBinding( Binding *binding )
Définit l'objet de liaison sur l'objet WeaveCertProvEngine.
SetEventCallback
void SetEventCallback( EventCallback eventCallback )
Définit la fonction de rappel d'événement d'API sur l'objet WeaveCertProvEngine.
SetMfrAttestDelegate
void SetMfrAttestDelegate( WeaveNodeMfrAttestDelegate *mfrAttestDelegate )
Définit l'objet délégué d'attestation du fabricant sur l'objet WeaveCertProvEngine.
SetOpAuthDelegate
void SetOpAuthDelegate( WeaveNodeOpAuthDelegate *opAuthDelegate )
Définit l'objet délégué d'authentification opérationnelle sur l'objet WeaveCertProvEngine.
Arrêt
void Shutdown( void )
Arrêtez un objet WeaveCertProvEngine précédemment initialisé.
Notez que cette méthode ne peut être appelée que si la méthode Init() a déjà été appelée.
StartCertificateProvisioning
WEAVE_ERROR StartCertificateProvisioning( uint8_t reqType, bool doMfrAttest )
Lancez le protocole de provisionnement des certificats.
Cette méthode lance le processus d'envoi d'un message GetCertificateRequest au service de l'autorité de certification. Si et lorsqu'un message GetCertificateResponse correspondant est reçu, il est envoyé à l'application via l'événement d'API ResponseReceived.
Si l'objet Binding n'est pas à l'état "Prêt" lorsque cette méthode est appelée, une requête est envoyée à la méthode Binding::RequestPrepare() pour lancer la préparation à la demande. L'opération de requête attend alors la fin de ce processus. Tout appel à StartCertificateProvisioning() alors qu'une requête précédente est en cours sera ignoré.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Valeurs de retour |
|
WeaveCertProvEngine
WeaveCertProvEngine( void )