O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

nl :: Tecer:: Perfis :: Segurança:: CertProvisioning :: WeaveCertProvEngine

#include <src/lib/profiles/security/WeaveCertProvisioning.h>

Implementa a lógica central do objeto de protocolo de provisionamento de certificado Weave.

Resumo

Construtores e Destruidores

WeaveCertProvEngine (void)

Tipos públicos

@246 {
kReqType_GetInitialOpDeviceCert = 0,
kReqType_RotateOpDeviceCert = 1
}
enum
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
Esta função é o retorno de chamada do aplicativo que é invocado em eventos de API do Certificate Provisioning Engine.
EventType {
kEvent_PrepareAuthorizeInfo = 1,
kEvent_ResponseReceived = 2,
kEvent_CommunicationError = 3
}
enum
State {
kState_NotInitialized = 0,
kState_Idle = 1,
kState_PreparingBinding = 2,
kState_RequestInProgress = 3
}
enum

Atributos públicos

AppState
void *
Um ponteiro para dados específicos do aplicativo.

Funções públicas

AbortCertificateProvisioning (void)
void
Interrompe qualquer troca de GetCertificate em andamento.
GenerateGetCertificateRequest ( PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
Gere a mensagem GetCertificateRequest.
GetBinding (void) const
Retorna um ponteiro para o objeto Binding associado ao WeaveCertProvEngine .
GetEventCallback (void) const
Retorna um ponteiro para a função de retorno de chamada do evento API atualmente configurada no objeto WeaveCertProvEngine .
GetMfrAttestDelegate (void) const
Retorna um ponteiro para o objeto de delegado de atestado do fabricante atualmente configurado no objeto WeaveCertProvEngine .
GetOpAuthDelegate (void) const
Retorna um ponteiro para o objeto de delegado de autenticação operacional atualmente configurado no objeto WeaveCertProvEngine .
GetReqType (void) const
uint8_t
Recupere o tipo de solicitação atual.
GetState (void) const
Recupere o estado atual do objeto WeaveCertProvEngine .
Init ( Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState)
Inicialize um objeto WeaveCertProvEngine em preparação para o envio da mensagem de solicitação de obtenção de certificado.
ProcessGetCertificateResponse ( PacketBuffer *msgBuf)
Mensagem do processo GetCertificateResponse.
SetBinding ( Binding *binding)
void
Define o objeto de ligação no objeto WeaveCertProvEngine .
SetEventCallback ( EventCallback eventCallback)
void
Define a função de retorno de chamada do evento API no objeto WeaveCertProvEngine .
SetMfrAttestDelegate ( WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
Define o objeto de delegado de atestado do fabricante no objeto WeaveCertProvEngine .
SetOpAuthDelegate ( WeaveNodeOpAuthDelegate *opAuthDelegate)
void
Define o objeto de delegado de autenticação operacional no objeto WeaveCertProvEngine .
Shutdown (void)
void
Desligue um objeto WeaveCertProvEngine inicializado anteriormente.
StartCertificateProvisioning (uint8_t reqType, bool doMfrAttest)
Inicie o protocolo de provisionamento de certificado.

Structs

nl :: Weave :: Profiles :: Security :: CertProvisioning :: WeaveCertProvEngine :: InEventParam

Parâmetros de entrada para o evento Weave Certificate Provisioning API.

nl :: Weave :: Profiles :: Security :: CertProvisioning :: WeaveCertProvEngine :: OutEventParam

Parâmetros de saída para o evento Weave Certificate Provisioning API.

Tipos públicos

@ 246

 @246
Propriedades
kReqType_GetInitialOpDeviceCert

O tipo de solicitação Get Certificate é para obter um certificado operacional inicial.

kReqType_RotateOpDeviceCert

O tipo de solicitação Obter certificado é para alternar o certificado operacional atual.

EventCallback

void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)

Esta função é o retorno de chamada do aplicativo que é invocado em eventos de API do Certificate Provisioning Engine.

Detalhes
Parâmetros
[in] appState
Um ponteiro para informações de estado definidas pelo aplicativo associadas ao objeto de mecanismo.
[in] eventType
ID do evento passado pelo retorno de chamada do evento.
[in] inParam
Referência dos parâmetros do evento de entrada transmitidos pelo retorno de chamada do evento.
[in] outParam
Referência dos parâmetros do evento de saída transmitidos pelo retorno de chamada do evento.

Tipo de evento

 EventType
Propriedades
kEvent_CommunicationError

Ocorreu um erro de comunicação ao enviar um GetCertificateRequest ou aguardar uma resposta.

kEvent_PrepareAuthorizeInfo

O aplicativo é solicitado a preparar a carga útil para GetCertificateRequest.

kEvent_ResponseReceived

Uma mensagem GetCertificateResponse foi recebida do par.

Estado

 State
Propriedades
kState_Idle

O objeto do motor está ocioso.

kState_NotInitialized

O objeto do motor não foi inicializado.

kState_PreparingBinding

O objeto do mecanismo está aguardando que a ligação fique pronta.

kState_RequestInProgress

Uma mensagem GetCertificateRequest foi enviada e o objeto do mecanismo está aguardando uma resposta.

Atributos públicos

AppState

void * AppState

Um ponteiro para dados específicos do aplicativo.

Funções públicas

AbortCertificateProvisioning

void AbortCertificateProvisioning(
  void
)

Interrompe qualquer troca de GetCertificate em andamento.

GenerateGetCertificateRequest

WEAVE_ERROR GenerateGetCertificateRequest(
  PacketBuffer *msgBuf,
  uint8_t reqType,
  bool doMfrAttest
)

Gere a mensagem GetCertificateRequest.

Este método gera a estrutura Weave GetCertificateRequest codificada no formato Weave TLV .

Ao formar a mensagem GetCertificateRequest, o método faz uma solicitação ao aplicativo, por meio das funções WeaveNodeOpAuthDelegate e WeaveNodeMfrAttestDelegate e o evento PrepareAuthorizeInfo API, para preparar o payload da mensagem.

Detalhes
Parâmetros
[in] msgBuf
Um ponteiro para o objeto PacketBuffer que contém a mensagem GetCertificateRequest.
[in] reqType
Obtenha o tipo de solicitação de certificado.
[in] doMfrAttest
Um sinalizador booleano que indica se a solicitação deve incluir dados de atestado do fabricante.
Valores Retornados
WEAVE_NO_ERROR
Se GetCertificateRequest foi gerado com sucesso.

GetBinding

Binding * GetBinding(
  void
) const 

Retorna um ponteiro para o objeto Binding associado ao WeaveCertProvEngine .

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

Retorna um ponteiro para a função de retorno de chamada do evento API atualmente configurada no objeto WeaveCertProvEngine .

GetMfrAttestDelegate

WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate(
  void
) const 

Retorna um ponteiro para o objeto de delegado de atestado do fabricante atualmente configurado no objeto WeaveCertProvEngine .

GetOpAuthDelegate

WeaveNodeOpAuthDelegate * GetOpAuthDelegate(
  void
) const 

Retorna um ponteiro para o objeto de delegado de autenticação operacional atualmente configurado no objeto WeaveCertProvEngine .

GetReqType

uint8_t GetReqType(
  void
) const 

Recupere o tipo de solicitação atual.

GetState

State GetState(
  void
) const 

Recupere o estado atual do objeto WeaveCertProvEngine .

Iniciar

WEAVE_ERROR Init(
  Binding *binding,
  WeaveNodeOpAuthDelegate *opAuthDelegate,
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate,
  EventCallback eventCallback,
  void *appState
)

Inicialize um objeto WeaveCertProvEngine em preparação para o envio da mensagem de solicitação de obtenção de certificado.

Detalhes
Parâmetros
[in] binding
Um objeto Binding que será usado para estabelecer comunicação com o nó par.
[in] opAuthDelegate
Um ponteiro para um objeto de delegado de autenticação operacional que será usado para construir e assinar usando as credenciais operacionais do nó.
[in] mfrAttestDelegate
Um ponteiro para um objeto de delegado de atestado do fabricante que será usado para construir e assinar a solicitação usando as credenciais fornecidas pelo fabricante do nó.
[in] eventCallback
Um ponteiro para uma função que será chamada pelo objeto WeaveCertProvEngine para entregar eventos de API ao aplicativo.
[in] appState
Um ponteiro para um objeto definido pelo aplicativo que será passado de volta ao aplicativo sempre que ocorrer um evento de API.

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

Mensagem do processo GetCertificateResponse.

Este método processa a estrutura Weave GetCertificateResponse codificada no formato Weave TLV .

Quando o processamento da mensagem GetCertificateResponse é concluído com sucesso, o método faz uma chamada para o aplicativo, por meio do evento da API ResponseReceived, para entregar o resultado.

Se o processamento da mensagem GetCertificateResponse falhar, o método faz uma chamada ao aplicativo, por meio do evento da API CommunicationError, para relatar o erro.

Detalhes
Parâmetros
[in] msgBuf
Um ponteiro para o objeto PacketBuffer que contém a mensagem GetCertificateResponse.
Valores Retornados
WEAVE_NO_ERROR
Se a mensagem GetCertificateResponse foi processada com sucesso.

SetBinding

void SetBinding(
  Binding *binding
)

Define o objeto de ligação no objeto WeaveCertProvEngine .

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

Define a função de retorno de chamada do evento API no objeto WeaveCertProvEngine .

SetMfrAttestDelegate

void SetMfrAttestDelegate(
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate
)

Define o objeto de delegado de atestado do fabricante no objeto WeaveCertProvEngine .

SetOpAuthDelegate

void SetOpAuthDelegate(
  WeaveNodeOpAuthDelegate *opAuthDelegate
)

Define o objeto de delegado de autenticação operacional no objeto WeaveCertProvEngine .

Desligar

void Shutdown(
  void
)

Desligue um objeto WeaveCertProvEngine inicializado anteriormente.

Observe que esse método só pode ser chamado se o método Init () tiver sido chamado anteriormente.

StartCertificateProvisioning

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

Inicie o protocolo de provisionamento de certificado.

Este método inicia o processo de envio de uma mensagem GetCertificateRequest para o serviço CA. Se e quando uma mensagem GetCertificateResponse correspondente for recebida, ela será entregue ao aplicativo por meio do evento de API ResponseReceived.

Se o objeto Binding não estiver no estado Pronto quando este método for chamado, uma solicitação será feita ao método Binding :: RequestPrepare () para iniciar a preparação sob demanda. A operação de solicitação estará então esperando até que este processo seja concluído. Qualquer chamada para StartCertificateProvisioning () enquanto houver uma solicitação anterior em andamento será ignorada.

Detalhes
Parâmetros
[in] reqType
Obtenha o tipo de solicitação de certificado.
[in] doMfrAttest
Um sinalizador booleano que indica se o protocolo deve incluir dados de atestado do fabricante.
Valores Retornados
WEAVE_NO_ERROR
Se StartCertificateProvisioning () foi processado com sucesso.

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)