nl:: Weave:: Perfiles:: Seguridad:: CertProvisioning:: WeaveCertProvEngine
#include <src/lib/profiles/security/WeaveCertProvisioning.h>
Implementa la lógica central del objeto del protocolo de aprovisionamiento de certificados de Weave.
Resumen
Constructores y destructores |
|
---|---|
WeaveCertProvEngine(void)
|
Tipos públicos |
|
---|---|
@246{
|
Enum |
EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
|
typedefvoid(*
Esta función es la devolución de llamada de la aplicación que se invoca en los eventos de la API del motor de aprovisionamiento de certificados. |
EventType{
|
Enum |
State{
|
Enum |
Atributos públicos |
|
---|---|
AppState
|
void *
Un puntero para datos específicos de la aplicación.
|
Funciones públicas |
|
---|---|
AbortCertificateProvisioning(void)
|
void
Detiene cualquier intercambio de GetCertificate en curso.
|
GenerateGetCertificateRequest(PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
|
Genera un mensaje GetCertificateRequest.
|
GetBinding(void) const
|
Binding *
Muestra un puntero al objeto Binding asociado con WeaveCertProvEngine.
|
GetEventCallback(void) const
|
Muestra un puntero a la función de devolución de llamada de evento de la API configurada actualmente en el objeto WeaveCertProvEngine.
|
GetMfrAttestDelegate(void) const
|
Muestra un puntero al objeto delegado del certificado de fabricante configurado actualmente en el objeto WeaveCertProvEngine.
|
GetOpAuthDelegate(void) const
|
Muestra un puntero para el objeto delegado de autenticación operativa actualmente configurado en el objeto WeaveCertProvEngine.
|
GetReqType(void) const
|
uint8_t
Recupera el tipo de solicitud actual.
|
GetState(void) const
|
Recupera el estado actual del objeto WeaveCertProvEngine.
|
Init(Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState)
|
Inicializa un objeto WeaveCertProvEngine como preparación para enviar el mensaje de solicitud de obtención.
|
ProcessGetCertificateResponse(PacketBuffer *msgBuf)
|
Procesar el mensaje GetCertificateResponse
|
SetBinding(Binding *binding)
|
void
Configura el objeto de vinculación en el objeto WeaveCertProvEngine.
|
SetEventCallback(EventCallback eventCallback)
|
void
Configura la función de devolución de llamada de eventos de la API en el objeto WeaveCertProvEngine.
|
SetMfrAttestDelegate(WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
|
void
Configura el objeto delegado del certificado de fabricante en el objeto WeaveCertProvEngine.
|
SetOpAuthDelegate(WeaveNodeOpAuthDelegate *opAuthDelegate)
|
void
Configura el objeto delegado de autenticación operativa en el objeto WeaveCertProvEngine.
|
Shutdown(void)
|
void
Cierra un objeto WeaveCertProvEngine inicializado con anterioridad.
|
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
|
Inicia el protocolo de aprovisionamiento de certificados.
|
Structs |
|
---|---|
nl:: |
Parámetros de entrada para el evento de la API de Weave Certificate Provisioning. |
nl:: |
Los parámetros de salida para el evento de la API de Weave Certificate Provisioning. |
Tipos públicos
@246
@246
Propiedades | |
---|---|
kReqType_GetInitialOpDeviceCert
|
El tipo de solicitud Obtener certificado es para obtener el certificado operativo inicial. |
kReqType_RotateOpDeviceCert
|
El tipo de solicitud Obtener certificado consiste en rotar el certificado operativo actual. |
EventCallback
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
Esta función es la devolución de llamada de la aplicación que se invoca en los eventos de la API del motor de aprovisionamiento de certificados.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
Tipo de evento
EventType
Propiedades | |
---|---|
kEvent_CommunicationError
|
Se produjo un error de comunicación al enviar una GetCertificateRequest o al esperar una respuesta. |
kEvent_PrepareAuthorizeInfo
|
Se solicita a la aplicación que prepare la carga útil para la GetCertificateRequest. |
kEvent_ResponseReceived
|
Se recibió un mensaje GetCertificateResponse del par. |
State
State
Propiedades | |
---|---|
kState_Idle
|
El objeto del motor está inactivo. |
kState_NotInitialized
|
No se inicializó el objeto de motor. |
kState_PreparingBinding
|
El objeto del motor está esperando que la vinculación esté lista. |
kState_RequestInProgress
|
Se envió un mensaje GetCertificateRequest y el objeto del motor está esperando una respuesta. |
Atributos públicos
Estado de la aplicación
void * AppState
Un puntero para datos específicos de la aplicación.
Funciones públicas
AbortCertificateProvisioning
void AbortCertificateProvisioning( void )
Detiene cualquier intercambio de GetCertificate en curso.
GenerateGetCertificateRequest
WEAVE_ERROR GenerateGetCertificateRequest( PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest )
Genera un mensaje GetCertificateRequest.
Este método genera la estructura GetCertificateRequest de Weave codificada en el formato TLV de Weave.
Cuando se forma el mensaje GetCertificateRequest, el método realiza una solicitud a la aplicación a través de las funciones WeaveNodeOpAuthDelegate y WeaveNodeMfrAttestDelegate y el evento de la API de PrepareAuthorizeInfo para preparar la carga útil del mensaje.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
||||||
Valores de retorno |
|
GetBinding
Binding * GetBinding( void ) const
Muestra un puntero al objeto Binding asociado con WeaveCertProvEngine.
GetEventCallback
EventCallback GetEventCallback( void ) const
Muestra un puntero a la función de devolución de llamada de evento de la API configurada actualmente en el objeto WeaveCertProvEngine.
GetMfrAttestDelegate
WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate( void ) const
Muestra un puntero al objeto delegado del certificado de fabricante configurado actualmente en el objeto WeaveCertProvEngine.
ObtenerOpAuthDelegate
WeaveNodeOpAuthDelegate * GetOpAuthDelegate( void ) const
Muestra un puntero para el objeto delegado de autenticación operativa actualmente configurado en el objeto WeaveCertProvEngine.
GetReqType.
uint8_t GetReqType( void ) const
Recupera el tipo de solicitud actual.
Init
WEAVE_ERROR Init( Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState )
Inicializa un objeto WeaveCertProvEngine como preparación para enviar el mensaje de solicitud de obtención.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
ProcessGetCertificateResponse
WEAVE_ERROR ProcessGetCertificateResponse( PacketBuffer *msgBuf )
Procesar el mensaje GetCertificateResponse
Este método procesa la estructura de GetCertificateResponse de Weave codificada en formato TLV de Weave.
Cuando el procesamiento del mensaje GetCertificateResponse se completa correctamente, el método realiza una llamada a la aplicación a través del evento de la API de ResponseReceived para entregar el resultado.
Si falla el procesamiento del mensaje GetCertificateResponse, el método realiza una llamada a la aplicación a través del evento de la API CommunicationError para informar el error.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Valores de retorno |
|
SetBinding
void SetBinding( Binding *binding )
Configura el objeto de vinculación en el objeto WeaveCertProvEngine.
SetEventCallback
void SetEventCallback( EventCallback eventCallback )
Configura la función de devolución de llamada de eventos de la API en el objeto WeaveCertProvEngine.
SetMfrAttestDelegate
void SetMfrAttestDelegate( WeaveNodeMfrAttestDelegate *mfrAttestDelegate )
Configura el objeto delegado del certificado de fabricante en el objeto WeaveCertProvEngine.
SetOpAuthDelegate
void SetOpAuthDelegate( WeaveNodeOpAuthDelegate *opAuthDelegate )
Configura el objeto delegado de autenticación operativa en el objeto WeaveCertProvEngine.
Cierre
void Shutdown( void )
Cierra un objeto WeaveCertProvEngine inicializado con anterioridad.
Ten en cuenta que solo se puede llamar a este método si se llamó al método Init() anteriormente.
StartCertificateProvisioning
WEAVE_ERROR StartCertificateProvisioning( uint8_t reqType, bool doMfrAttest )
Inicia el protocolo de aprovisionamiento de certificados.
Este método inicia el proceso de envío de un mensaje GetCertificateRequest al servicio de CA. Si se recibe un mensaje GetCertificateResponse correspondiente, se entregará a la aplicación a través del evento de la API de ResponseReceived.
Si el objeto Binding no está en estado Ready cuando se llama a este método, se realizará una solicitud al método Binding::RequestPrepare() para iniciar la preparación a pedido. La operación de solicitud esperará hasta que se complete este proceso. Se ignorará cualquier llamada a StartCertificateProvisioning() cuando haya una solicitud en curso.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
||||
Valores de retorno |
|
WeaveCertProvEngine
WeaveCertProvEngine( void )