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

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

Weave Certificate Provisioning protokol nesnesinin temel mantığını uygular.

Özet

Oluşturucular ve Yok Ediciler

WeaveCertProvEngine(void)

Herkese açık türler

@246{
  kReqType_GetInitialOpDeviceCert = 0,
  kReqType_RotateOpDeviceCert = 1
}
enum
EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
Bu işlev, Certificate Provisioning Engine API etkinliklerinde çağrılan uygulama geri çağırma işlevidir.
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

Herkese açık özellikler

AppState
void *
Uygulamaya özel veriler için bir işaretçi.

Herkese açık işlevler

AbortCertificateProvisioning(void)
void
Devam eden tüm GetCertificate alışverişlerini durdurur.
GenerateGetCertificateRequest(PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
GetCertificateRequest mesajını oluşturun.
GetBinding(void) const
WeaveCertProvEngine ile ilişkili Binding nesnesine işaretçi döndürür.
GetEventCallback(void) const
Şu anda WeaveCertProvEngine nesnesinde yapılandırılan API etkinlik geri çağırma işlevinin işaretçisini döndürür.
GetMfrAttestDelegate(void) const
Şu anda WeaveCertProvEngine nesnesinde yapılandırılan üretici tasdik temsilcisi nesnesine işaretçi döndürür.
GetOpAuthDelegate(void) const
Şu anda WeaveCertProvEngine nesnesinde yapılandırılan operasyonel kimlik doğrulama temsilcisi nesnesinin işaretçisini döndürür.
GetReqType(void) const
uint8_t
Geçerli istek türünü alın.
GetState(void) const
WeaveCertProvEngine nesnesinin mevcut durumunu alın.
Init(Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState)
Sertifika al isteği mesajı göndermeye hazırlanırken bir WeaveCertProvEngine nesnesini başlatın.
ProcessGetCertificateResponse(PacketBuffer *msgBuf)
GetCertificateResponse mesajını işleyin.
SetBinding(Binding *binding)
void
WeaveCertProvEngine nesnesinde bağlama nesnesini ayarlar.
SetEventCallback(EventCallback eventCallback)
void
WeaveCertProvEngine nesnesinde API etkinlik geri çağırma işlevini ayarlar.
SetMfrAttestDelegate(WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
WeaveCertProvEngine nesnesinde üretici tasdik temsilcisi nesnesini ayarlar.
SetOpAuthDelegate(WeaveNodeOpAuthDelegate *opAuthDelegate)
void
WeaveCertProvEngine nesnesinde işlevsel kimlik doğrulama temsilcisi nesnesini ayarlar.
Shutdown(void)
void
Önceden başlatılmış bir WeaveCertProvEngine nesnesini kapatın.
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
Sertifika temel hazırlığı protokolünü başlatın.

Yapılar

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

Weave Certificate Temel Hazırlık API'sı etkinliğine giriş parametreleri.

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

Weave Certificate Provisioning API etkinliğine çıkış parametreleri.

Herkese açık türler

@246

 @246
Özellikler
kReqType_GetInitialOpDeviceCert

GetCertificate istek türü, ilk operasyonel sertifikayı almak için kullanılır.

kReqType_RotateOpDeviceCert

GetCertificate istek türü, mevcut işletim sertifikasını döndürmek için kullanılır.

EventCallback

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

Bu işlev, Certificate Provisioning Engine API etkinliklerinde çağrılan uygulama geri çağırma işlevidir.

Ayrıntılar
Parametreler
[in] appState
Motor nesnesi ile ilişkili, uygulama tanımlı durum bilgilerinin işaretçisi.
[in] eventType
Etkinlik geri çağırması tarafından iletilen etkinlik kimliği.
[in] inParam
Etkinlik geri çağırması tarafından iletilen giriş etkinlik parametrelerinin referansı.
[in] outParam
Etkinlik geri çağırması tarafından iletilen çıkış etkinliği parametrelerinin referansı.

EventType

 EventType
Özellikler
kEvent_CommunicationError

GetCertificateRequest gönderilirken veya yanıt beklenirken bir iletişim hatası oluştu.

kEvent_PrepareAuthorizeInfo

Uygulamanın GetCertificateRequest için yükü hazırlaması istenir.

kEvent_ResponseReceived

İş ortağı tarafından bir GetCertificateResponse mesajı alındı.

Eyalet

 State
Özellikler
kState_Idle

Motor nesnesi boşta.

kState_NotInitialized

Motor nesnesi başlatılmadı.

kState_PreparingBinding

Motor nesnesi, bağlamanın hazır olmasını bekliyor.

kState_RequestInProgress

GetCertificateRequest mesajı gönderildi ve motor nesnesi yanıt bekliyor.

Herkese açık özellikler

AppState

void * AppState

Uygulamaya özel veriler için bir işaretçi.

Herkese açık işlevler

AbortCertificateProvisioning

void AbortCertificateProvisioning(
  void
)

Devam eden GetCertificate değişimlerini durdurur.

GenerateGetCertificateRequest

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

GetCertificateRequest mesajı oluşturun.

Bu yöntem, Weave TLV biçiminde kodlanmış Weave GetCertificateRequest yapısını oluşturur.

GetCertificateRequest mesajını oluştururken yöntem, mesajın yükü hazırlamak için WeaveNodeOpAuthDelegate ve WeaveNodeMfrAttestDelegate işlevleri ile PrepareAuthorizeInfo API etkinliği aracılığıyla uygulamaya istek gönderir.

Ayrıntılar
Parametreler
[in] msgBuf
GetCertificateRequest mesajını tutan PacketBuffer nesnesine işaretçi.
[in] reqType
Sertifika isteği türünü alma.
[in] doMfrAttest
İsteğin üretici onayı verilerini içermesi gerekip gerekmediğini belirten bir boole işareti.
Döndürülen değerler
WEAVE_NO_ERROR
GetCertificateRequest başarıyla oluşturulduysa.

GetBinding

Binding * GetBinding(
  void
) const 

WeaveCertProvEngine ile ilişkili Binding nesnesine işaretçi döndürür.

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

WeaveCertProvEngine nesnesinde yapılandırılmış olan API etkinlik geri çağırma işlevine bir işaretçi döndürür.

GetMfrAttestDelegate

WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate(
  void
) const 

Şu anda WeaveCertProvEngine nesnesinde yapılandırılmış olan üretici onay temsilci nesnesine bir işaretçi döndürür.

GetOpAuthDelegate

WeaveNodeOpAuthDelegate * GetOpAuthDelegate(
  void
) const 

Şu anda WeaveCertProvEngine nesnesinde yapılandırılmış olan operasyonel kimlik doğrulama yetkili nesnesine bir işaretçi döndürür.

GetReqType

uint8_t GetReqType(
  void
) const 

Geçerli istek türünü alın.

GetState

State GetState(
  void
) const 

WeaveCertProvEngine nesnesinin mevcut durumunu alın.

Başlatma

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

Sertifika alma isteği mesajı göndermeye hazırlanmak için bir WeaveCertProvEngine nesnesi başlatın.

Ayrıntılar
Parametreler
[in] binding
Eş düğümle iletişim kurmak için kullanılacak bir Bağlama nesnesi.
[in] opAuthDelegate
Düğümün işletim kimlik bilgilerini kullanarak oluşturmak ve imzalamak için kullanılacak işlevsel kimlik doğrulama temsilcisi nesnesine işaretçi.
[in] mfrAttestDelegate
Nodunun üretici tarafından sağlanan kimlik bilgilerini kullanarak isteği oluşturmak ve imzalamak için kullanılacak bir üretici tasdik temsilcisi nesnesine işaretçi.
[in] eventCallback
API etkinliklerini uygulamaya yayınlamak için WeaveCertProvEngine nesnesi tarafından çağrılacak bir işlevin işaretçisi.
[in] appState
API etkinliği her gerçekleştiğinde uygulamaya geri iletilecek, uygulama tanımlı bir nesnenin işaretçisi.

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

GetCertificateResponse mesajını işleyin.

Bu yöntem, Weave TLV biçiminde kodlanmış Weave GetCertificateResponse yapısını işler.

GetCertificateResponse mesajının işlenmesi başarıyla tamamlandığında yöntem, sonucu iletmek için ResponseReceived API etkinliği aracılığıyla uygulamaya bir çağrı yapar.

GetCertificateResponse mesajının işlenmesi başarısız olursa bu yöntem, CommunicationError API etkinliği aracılığıyla uygulamaya bir çağrı göndererek hatayı bildirir.

Ayrıntılar
Parametreler
[in] msgBuf
GetCertificateResponse mesajını içeren PacketBuffer nesnesinin işaretçisi.
Değerleri Döndür
WEAVE_NO_ERROR
GetCertificateResponse mesajı başarıyla işlendiyse.

SetBinding

void SetBinding(
  Binding *binding
)

WeaveCertProvEngine nesnesinde bağlama nesnesini ayarlar.

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

WeaveCertProvEngine nesnesinde API etkinliği geri çağırma işlevini ayarlar.

SetMfrAttestDelegate

void SetMfrAttestDelegate(
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate
)

WeaveCertProvEngine nesnesinde üretici tasdik temsilcisi nesnesini ayarlar.

SetOpAuthDelegate

void SetOpAuthDelegate(
  WeaveNodeOpAuthDelegate *opAuthDelegate
)

WeaveCertProvEngine nesnesinde işlevsel kimlik doğrulama temsilcisi nesnesini ayarlar.

Kapat

void Shutdown(
  void
)

Önceden başlatılmış bir WeaveCertProvEngine nesnesini kapatın.

Bu yöntemin yalnızca Init() yöntemi daha önce çağrılmışsa çağrılabileceğini unutmayın.

StartCertificateProvisioning

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

Sertifika temel hazırlığı protokolünü başlatın.

Bu yöntem, CA hizmetine bir GetCertificateRequest mesajı gönderme işlemini başlatır. İlgili bir GetCertificateResponse mesajı alınırsa ve alındığında ResponseReceived API etkinliği aracılığıyla uygulamaya gönderilir.

Bu yöntem çağrılırken Binding nesnesi Hazır durumunda değilse isteğe bağlı hazırlığı başlatmak için Binding::RequestPrepare() yöntemine istek gönderilir. İstek işlemi, bu süreç tamamlanana kadar bekler. İşleme alınmış bir önceki istek varken StartCertificateProvisioning() çağrısı dikkate alınmaz.

Ayrıntılar
Parametreler
[in] reqType
Sertifika isteği türünü alın.
[in] doMfrAttest
Protokolün üretici onayı verilerini içermesi gerekip gerekmediğini belirten bir boole işaretçisi.
Döndürülen değerler
WEAVE_NO_ERROR
StartCertificateProvisioning() başarıyla işlendiyse.

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)