nl:: örgü:: Profiller:: Güvenlik:: Sertifika Sağlama:: WeaveCertProvMotor

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

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

Özet

Yapıcılar ve Yıkıcılar

WeaveCertProvEngine (void)

Genel türler

@246 {
kReqType_GetInitialOpDeviceCert = 0,
kReqType_RotateOpDeviceCert = 1
}
Sıralama
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
Bu işlev, Certificate Provisioning Engine API olaylarında çağrılan uygulama geri çağrısıdır.
EventType {
kEvent_PrepareAuthorizeInfo = 1,
kEvent_ResponseReceived = 2,
kEvent_CommunicationError = 3
}
Sıralama
State {
kState_NotInitialized = 0,
kState_Idle = 1,
kState_PreparingBinding = 2,
kState_RequestInProgress = 3
}
Sıralama

Genel özellikler

AppState
void *
Uygulamaya özel verilere yönelik bir işaretçi.

Kamu işlevleri

AbortCertificateProvisioning (void)
void
Devam eden herhangi bir GetCertificate değişimini durdurur.
GenerateGetCertificateRequest ( PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
GetCertificateRequest mesajı oluşturun.
GetBinding (void) const
Bir işaretçi İade bağlama ile bağlantılı nesne WeaveCertProvEngine .
GetEventCallback (void) const
Şu anda yapılandırılan API olay geri arama işlevi için bir işaretçi İade WeaveCertProvEngine nesne.
GetMfrAttestDelegate (void) const
Şu anda yapılandırılmış üretici tasdik temsilci nesnesine bir işaretçi döndürür WeaveCertProvEngine nesne.
GetOpAuthDelegate (void) const
Şu anda yapılandırılmış işlevsel kimlik doğrulama temsilci nesnesi için bir işaretçi İade WeaveCertProvEngine nesne.
GetReqType (void) const
uint8_t
Geçerli istek türünü alın.
GetState (void) const
Mevcut durumunu al WeaveCertProvEngine nesne.
Init ( Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState)
Bir başlat WeaveCertProvEngine olsun sertifika istek mesajını göndermek için hazırlık nesne.
ProcessGetCertificateResponse ( PacketBuffer *msgBuf)
GetCertificateResponse mesajını işleyin.
SetBinding ( Binding *binding)
void
Bağlayıcı nesneyi belirler WeaveCertProvEngine nesne.
SetEventCallback ( EventCallback eventCallback)
void
API olay geri çağırma işlevini ayarlar WeaveCertProvEngine nesne.
SetMfrAttestDelegate ( WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
Üzerinde üretici tasdik temsilci nesnesi ayarlar WeaveCertProvEngine nesne.
SetOpAuthDelegate ( WeaveNodeOpAuthDelegate *opAuthDelegate)
void
Operasyonel kimlik doğrulama temsilci nesnesi ayarlar WeaveCertProvEngine nesne.
Shutdown (void)
void
Kapatma daha önce başlatılmış WeaveCertProvEngine nesnesi.
StartCertificateProvisioning (uint8_t reqType, bool doMfrAttest)
Sertifika Sağlama Protokolünü başlatın.

yapılar

nl :: Dokuma :: Profiller :: Güvenlik :: CertProvisioning :: WeaveCertProvEngine :: InEventParam

Weave Certificate Provisioning API olayına parametreleri girin.

nl :: Dokuma :: Profiller :: Güvenlik :: CertProvisioning :: WeaveCertProvEngine :: OutEventParam

Weave Certificate Provisioning API olayına çıkış parametreleri.

Genel türler

@246

 @246
Özellikleri
kReqType_GetInitialOpDeviceCert

Sertifika Al istek türü, ilk operasyonel sertifika almak içindir.

kReqType_RotateOpDeviceCert

Sertifika Al istek türü, mevcut operasyonel sertifikayı döndürmek içindir.

OlayGeri arama

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

Bu işlev, Certificate Provisioning Engine API olaylarında çağrılan uygulama geri çağrısıdır.

Ayrıntılar
parametreler
[in] appState
Motor nesnesiyle ilişkili uygulama tanımlı durum bilgilerine yönelik bir işaretçi.
[in] eventType
Olay geri çağrısı tarafından geçirilen olay kimliği.
[in] inParam
Olay geri çağrısı tarafından geçirilen giriş olayı parametrelerinin referansı.
[in] outParam
Olay geri çağrısı tarafından geçirilen çıktı olayı parametrelerinin referansı.

Etkinlik tipi

 EventType
Özellikleri
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

Eşten bir GetCertificateResponse mesajı alındı.

Durum

 State
Özellikleri
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

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

Genel özellikler

Uygulama Durumu

void * AppState

Uygulamaya özel verilere yönelik bir işaretçi.

Kamu işlevleri

İptalSertifika Sağlama

void AbortCertificateProvisioning(
  void
)

Devam eden herhangi bir GetCertificate değişimini durdurur.

GenerateGetCertificateRequest

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

GetCertificateRequest mesajı oluşturun.

Bu yöntem, Örgü kodlanmış Örgü GetCertificateRequest yapısı oluşturur TLV formatı.

GetCertificateRequest mesaj oluşturulduğu zaman, yöntem ile, bir uygulama için bir istekte WeaveNodeOpAuthDelegate ve WeaveNodeMfrAttestDelegate mesajın veri yükünü hazırlamak için, fonksiyon ve PrepareAuthorizeInfo API etkinliği.

Ayrıntılar
parametreler
[in] msgBuf
GetCertificateRequest mesajını tutan PacketBuffer nesnesine yönelik bir işaretçi.
[in] reqType
Sertifika istek türünü alın.
[in] doMfrAttest
İsteğin üretici onay verilerini içermesi gerekip gerekmediğini belirten bir boole bayrağı.
Dönüş Değerleri
WEAVE_NO_ERROR
GetCertificateRequest başarıyla oluşturulduysa.

GetBinding

Binding * GetBinding(
  void
) const 

Bir işaretçi İade bağlama ile bağlantılı nesne WeaveCertProvEngine .

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

Şu anda yapılandırılan API olay geri arama işlevi için bir işaretçi İade WeaveCertProvEngine nesne.

GetMfrAttestDelege

WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate(
  void
) const 

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

GetOpAuth Temsilcisi

WeaveNodeOpAuthDelegate * GetOpAuthDelegate(
  void
) const 

Şu anda yapılandırılmış işlevsel kimlik doğrulama temsilci nesnesi için bir işaretçi İade WeaveCertProvEngine nesne.

GetReqType

uint8_t GetReqType(
  void
) const 

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

GetState

State GetState(
  void
) const 

Mevcut durumunu al WeaveCertProvEngine nesne.

İçinde

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

Bir başlat WeaveCertProvEngine olsun sertifika istek mesajını göndermek için hazırlık nesne.

Ayrıntılar
parametreler
[in] binding
Bir Bağlanma eş düğüm ile iletişim kurmak için kullanılacak nesne.
[in] opAuthDelegate
Düğümün işlemsel kimlik bilgilerini kullanarak oluşturmak ve imzalamak için kullanılacak bir işlemsel kimlik doğrulama temsilci nesnesine yönelik bir işaretçi.
[in] mfrAttestDelegate
Düğümün üretici tarafından sağlanan kimlik bilgilerini kullanarak istek oluşturmak ve imzalamak için kullanılacak bir üretici onay temsilcisi nesnesine yönelik bir işaretçi.
[in] eventCallback
Tarafından çağrılır bir işlev için bir işaretçi WeaveCertProvEngine uygulama API olayları sunmak için bir nesne.
[in] appState
Bir API olayı meydana geldiğinde uygulamaya geri aktarılacak olan, uygulama tanımlı bir nesneye yönelik bir işaretçi.

ProcessGetCertificateYanıt

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

GetCertificateResponse mesajını işleyin.

Bu yöntem, Örgü kodlanmış Örgü GetCertificateResponse yapısını işleyen TLV formatı.

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

GetCertificateResponse mesajının işlenmesi başarısız olursa, yöntem, hatayı bildirmek için CommunicationError API olayı aracılığıyla uygulamaya bir çağrı yapar.

Ayrıntılar
parametreler
[in] msgBuf
GetCertificateResponse iletisini tutan PacketBuffer nesnesine yönelik bir işaretçi.
Dönüş Değerleri
WEAVE_NO_ERROR
GetCertificateResponse mesajı başarıyla işlendiyse.

SetBinding

void SetBinding(
  Binding *binding
)

Bağlayıcı nesneyi belirler WeaveCertProvEngine nesne.

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

API olay geri çağırma işlevini ayarlar WeaveCertProvEngine nesne.

SetMfrAttestDelege

void SetMfrAttestDelegate(
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate
)

Üzerinde üretici tasdik temsilci nesnesi ayarlar WeaveCertProvEngine nesne.

SetOpAuthDelegate

void SetOpAuthDelegate(
  WeaveNodeOpAuthDelegate *opAuthDelegate
)

Operasyonel kimlik doğrulama temsilci nesnesi ayarlar WeaveCertProvEngine nesne.

Kapat

void Shutdown(
  void
)

Kapatma daha önce başlatılmış WeaveCertProvEngine nesnesi.

Bu yöntem yalnızca çağrılabilir unutmayın init () yöntemi, önceden anılmıştır.

BaşlangıçSertifika Sağlama

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

Sertifika Sağlama Protokolünü başlatın.

Bu yöntem, CA hizmetine bir GetCertificateRequest mesajı gönderme işlemini başlatır. Karşılık gelen bir GetCertificateResponse mesajı alındığında ve alındığında, ResponseReceived API olayı aracılığıyla uygulamaya iletilecektir.

Eğer bağlama amacı, bu yöntem, adı hazır durumda değil, bir talep yapılacaktır Bağlanma :: RequestPrepare () isteğe bağlı hazırlığını başlatmak üzere bir yöntem. İstek işlemi daha sonra bu işlem tamamlanana kadar bekleyecektir. Herhangi çağrı StartCertificateProvisioning () varken işlemi sırasında önceki isteği dikkate alınmayacaktır.

Ayrıntılar
parametreler
[in] reqType
Sertifika istek türünü alın.
[in] doMfrAttest
Protokolün üretici onay verilerini içermesi gerekip gerekmediğini belirten bir boole bayrağı.
Dönüş Değerleri
WEAVE_NO_ERROR
Eğer StartCertificateProvisioning () başarıyla işlendi.

WeaveCertProvMotor

 WeaveCertProvEngine(
  void
)