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

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

منطق اصلی شیء پروتکل «تأمین گواهینامه Weave» را پیاده‌سازی می‌کند.

خلاصه

سازنده‌ها و مخرب‌ها

WeaveCertProvEngine(void)

انواع عمومی

@246{
  kReqType_GetInitialOpDeviceCert = 0,
  kReqType_RotateOpDeviceCert = 1
}
شمارشی
EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
این تابع، فراخوان برنامه است که در رویدادهای Certificate Provisioning Engine API فراخوانی می‌شود.
EventType{
  kEvent_PrepareAuthorizeInfo = 1,
  kEvent_ResponseReceived = 2,
  kEvent_CommunicationError = 3
}
شمارشی
State{
  kState_NotInitialized = 0,
  kState_Idle = 1,
  kState_PreparingBinding = 2,
  kState_RequestInProgress = 3
}
شمارشی

مشخصه‌های عمومی

AppState
void *
اشاره‌گری به داده‌های خاص برنامه.

عملکردهای عمومی

AbortCertificateProvisioning(void)
void
هرگونه تبادل GetCertificate درحال انجام را متوقف می‌کند.
GenerateGetCertificateRequest(PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
پیام GetCertificateRequest را تولید کنید.
GetBinding(void) const
اشاره‌گری به شیء Binding مرتبط با WeaveCertProvEngine برمی‌گرداند.
GetEventCallback(void) const
اشاره‌گری به تابع بازخوانی رویداد میانای برنامه‌سازی کاربردی که درحال‌حاضر در شیء WeaveCertProvEngine پیکربندی شده است برمی‌گرداند.
GetMfrAttestDelegate(void) const
اشاره‌گری را به شیء نماینده گواهی سازنده که درحال‌حاضر در شیء WeaveCertProvEngine پیکربندی شده است برمی‌گرداند.
GetOpAuthDelegate(void) const
اشاره‌گری به شیء نماینده اصالت‌سنجی عملیاتی که درحال‌حاضر در شیء WeaveCertProvEngine پیکربندی شده است برمی‌گرداند.
GetReqType(void) const
uint8_t
نوع درخواست فعلی را بازیابی کنید.
GetState(void) const
وضعیت فعلی شیء WeaveCertProvEngine را بازیابی کنید.
Init(Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState)
یک شیء WeaveCertProvEngine را برای آماده‌سازی ارسال پیام درخواست دریافت گواهی مقداردهی اولیه کنید.
ProcessGetCertificateResponse(PacketBuffer *msgBuf)
پردازش پیام GetCertificateResponse.
SetBinding(Binding *binding)
void
شیء اتصال را در شیء WeaveCertProvEngine تنظیم می‌کند.
SetEventCallback(EventCallback eventCallback)
void
تابع بازخوانی رویداد میانای برنامه‌سازی کاربردی را در شیء WeaveCertProvEngine تنظیم می‌کند.
SetMfrAttestDelegate(WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
شیء نماینده گواهی سازنده را در شیء WeaveCertProvEngine تنظیم می‌کند.
SetOpAuthDelegate(WeaveNodeOpAuthDelegate *opAuthDelegate)
void
Sets the operational authentication delegate object on the WeaveCertProvEngine object.
Shutdown(void)
void
Shutdown a previously initialized WeaveCertProvEngine object.
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
پروتکل آماده‌سازی گواهینامه را شروع کنید.

ساختارها

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

پارامترهای ورودی برای رویداد Weave Certificate Provisioning API.

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

پارامترهای برونداد برای رویداد Weave Certificate Provisioning API.

انواع عمومی

@246

 @246
مشخصات
kReqType_GetInitialOpDeviceCert

نوع درخواست «دریافت گواهینامه» برای دریافت گواهینامه عملیاتی اولیه است.

kReqType_RotateOpDeviceCert

نوع درخواست «دریافت گواهی» برای چرخاندن گواهی عملیاتی فعلی است.

EventCallback

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

این تابع، فراخوان برنامه است که در رویدادهای Certificate Provisioning Engine API فراخوانی می‌شود.

جزئیات
پارامترها
[in] appState
اشاره‌گری به اطلاعات وضعیت تعریف‌شده توسط برنامه که با شیء موتور مرتبط است.
[in] eventType
شناسه رویداد که توسط فراخوانی رویداد ارسال شده است.
[in] inParam
مرجع پارامترهای رویداد ورودی که توسط بازخوان رویداد ارسال شده است.
[in] outParam
مرجع پارامترهای رویداد خروجی که توسط فراخوانی رویداد ارسال شده است.

EventType

 EventType
مشخصات
kEvent_CommunicationError

هنگام ارسال GetCertificateRequest یا انتظار برای پاسخ، خطای ارتباطی رخ داد.

kEvent_PrepareAuthorizeInfo

از برنامه درخواست می‌شود تا بار داده را برای GetCertificateRequest آماده کند.

kEvent_ResponseReceived

پیام GetCertificateResponse از همتا دریافت شد.

ایالت

 State
مشخصات
kState_Idle

شیء موتور غیرفعال است.

kState_NotInitialized

شیء موتور مقداردهی اولیه نشده است.

kState_PreparingBinding

شیء موتور منتظر است تا اتصال آماده شود.

kState_RequestInProgress

پیام GetCertificateRequest ارسال شده است و شیء موتور منتظر پاسخ است.

مشخصه‌های عمومی

AppState

void * AppState

اشاره‌گری به داده‌های خاص برنامه.

عملکردهای عمومی

AbortCertificateProvisioning

void AbortCertificateProvisioning(
  void
)

هرگونه تبادل GetCertificate درحال انجام را متوقف می‌کند.

GenerateGetCertificateRequest

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

پیام GetCertificateRequest را تولید کنید.

این روش ساختار Weave GetCertificateRequest را که در قالب Weave TLV کدگذاری شده است تولید می‌کند.

هنگام تشکیل پیام GetCertificateRequest، این روش ازطریق توابع WeaveNodeOpAuthDelegate و WeaveNodeMfrAttestDelegate و رویداد PrepareAuthorizeInfo API، درخواستی به برنامه ارسال می‌کند تا بار پیام را آماده کند.

جزئیات
پارامترها
[in] msgBuf
اشاره‌گری به شیء PacketBuffer که پیام GetCertificateRequest را نگه می‌دارد.
[in] reqType
دریافت نوع درخواست گواهی.
[in] doMfrAttest
پرچم بولی که نشان می‌دهد آیا درخواست باید شامل داده‌های گواهی سازنده باشد یا نه.
مقادیر برگشتی
WEAVE_NO_ERROR
اگر GetCertificateRequest باموفقیت تولید شده باشد.

GetBinding

Binding * GetBinding(
  void
) const 

اشاره‌گری به شیء Binding مرتبط با WeaveCertProvEngine برمی‌گرداند.

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

اشاره‌گری به تابع بازخوانی رویداد میانای برنامه‌سازی کاربردی که درحال‌حاضر در شیء WeaveCertProvEngine پیکربندی شده است برمی‌گرداند.

GetMfrAttestDelegate

WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate(
  void
) const 

اشاره‌گری را به شیء نماینده گواهی سازنده که درحال‌حاضر در شیء WeaveCertProvEngine پیکربندی شده است برمی‌گرداند.

GetOpAuthDelegate

WeaveNodeOpAuthDelegate * GetOpAuthDelegate(
  void
) const 

اشاره‌گری به شیء نماینده اصالت‌سنجی عملیاتی که درحال‌حاضر در شیء WeaveCertProvEngine پیکربندی شده است برمی‌گرداند.

GetReqType

uint8_t GetReqType(
  void
) const 

نوع درخواست فعلی را بازیابی کنید.

GetState

State GetState(
  void
) const 

وضعیت فعلی شیء WeaveCertProvEngine را بازیابی کنید.

Init

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

یک شیء WeaveCertProvEngine را برای آماده‌سازی ارسال پیام درخواست دریافت گواهی مقداردهی اولیه کنید.

جزئیات
پارامترها
[in] binding
شیء Binding که برای برقراری ارتباط با گره همتا استفاده خواهد شد.
[in] opAuthDelegate
اشاره‌گری به شیء نماینده اصالت‌سنجی عملیاتی که برای ساخت و امضا بااستفاده از اطلاعات کاربری عملیاتی گره استفاده خواهد شد.
[in] mfrAttestDelegate
اشاره‌گری به شیء نماینده تصدیق سازنده که برای ساختن و امضا کردن درخواست بااستفاده از اطلاعات کاربری ارائه‌شده توسط سازنده گره استفاده خواهد شد.
[in] eventCallback
اشاره‌گری به تابعی که توسط شیء WeaveCertProvEngine فراخوانی می‌شود تا رویدادهای API را به برنامه تحویل دهد.
[in] appState
اشاره‌گری به شیء تعریف‌شده توسط برنامه که هرگاه رویداد API رخ دهد به برنامه برگردانده می‌شود.

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

پردازش پیام GetCertificateResponse.

این روش ساختار Weave GetCertificateResponse را که در قالب Weave TLV کدگذاری شده است پردازش می‌کند.

وقتی پردازش پیام GetCertificateResponse با موفقیت تکمیل شد، این روش ازطریق رویداد ResponseReceived API با برنامه تماس می‌گیرد تا نتیجه را ارائه دهد.

اگر پردازش پیام GetCertificateResponse ناموفق باشد، این روش ازطریق رویداد CommunicationError API با برنامه تماس می‌گیرد تا خطا را گزارش کند.

جزئیات
پارامترها
[in] msgBuf
اشاره‌گری به شیء PacketBuffer که پیام GetCertificateResponse را نگه می‌دارد.
مقادیر برگشتی
WEAVE_NO_ERROR
اگر پیام GetCertificateResponse باموفقیت پردازش شد.

SetBinding

void SetBinding(
  Binding *binding
)

شیء اتصال را در شیء WeaveCertProvEngine تنظیم می‌کند.

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

تابع بازخوانی رویداد میانای برنامه‌سازی کاربردی را در شیء WeaveCertProvEngine تنظیم می‌کند.

SetMfrAttestDelegate

void SetMfrAttestDelegate(
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate
)

شیء نماینده گواهی سازنده را در شیء WeaveCertProvEngine تنظیم می‌کند.

SetOpAuthDelegate

void SetOpAuthDelegate(
  WeaveNodeOpAuthDelegate *opAuthDelegate
)

Sets the operational authentication delegate object on the WeaveCertProvEngine object.

خاموش

void Shutdown(
  void
)

Shutdown a previously initialized WeaveCertProvEngine object.

توجه داشته باشید که این روش فقط درصورتی می‌تواند فراخوانی شود که روش Init() قبلاً فراخوانی شده باشد.

StartCertificateProvisioning

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

پروتکل آماده‌سازی گواهینامه را شروع کنید.

این روش فرایند ارسال پیام GetCertificateRequest به سرویس CA را آغاز می‌کند. اگر و زمانی که پیام GetCertificateResponse مربوطه دریافت شود، ازطریق رویداد ResponseReceived API به برنامه تحویل داده خواهد شد.

اگر شیء Binding هنگام فراخوانی این روش در وضعیت «آماده» نباشد، درخواستی به روش Binding::RequestPrepare() ارسال می‌شود تا آماده‌سازی درخواستی را آغاز کند. سپس عملیات درخواست تا تکمیل این فرایند منتظر می‌ماند. هرگونه فراخوانی StartCertificateProvisioning() درحالی‌که درخواست قبلی درحال پردازش است نادیده گرفته خواهد شد.

جزئیات
پارامترها
[in] reqType
دریافت نوع درخواست گواهی.
[in] doMfrAttest
پرچم بولی که نشان می‌دهد آیا پروتکل باید شامل داده‌های گواهی سازنده باشد یا نه.
مقادیر برگشتی
WEAVE_NO_ERROR
اگر StartCertificateProvisioning() باموفقیت پردازش شده باشد.

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)