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(*
هذه الدالة هي استدعاء التطبيق الذي تم استدعاؤه في أحداث واجهة برمجة التطبيقات الخاصة بمحرك إدارة الشهادات.
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
لعرض مؤشر للكائن تجليد المرتبط بـ 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
لضبط كائن تفويض المصادقة التشغيلية في الكائن WeaveCertProvEngine.
Shutdown(void)
void
إيقاف كائن WeaveCertProvEngine تمت تهيئته في السابق.
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
بدء بروتوكول توفير الشهادات.

الهياكل

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

معلمات الإدخال إلى حدث واجهة برمجة التطبيقات لإدارة شهادات Weave

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

إخراج المعلمات إلى حدث واجهة برمجة التطبيقات لإدارة شهادات Weave

الأنواع العلنية

@246

 @246
أماكن إقامة
kReqType_GetInitialOpDeviceCert

نوع طلب الحصول على شهادة هو الحصول على شهادة تشغيلية مبدئية.

kReqType_RotateOpDeviceCert

نوع طلب الحصول على شهادة هو تدوير شهادة التشغيل الحالية.

EventCallback

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

هذه الدالة هي استدعاء التطبيق الذي تم استدعاؤه في أحداث واجهة برمجة التطبيقات الخاصة بمحرك إدارة الشهادات.

التفاصيل
المَعلمات
[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 المشفرة بتنسيق TLV Weave.

عند إنشاء رسالة GetCertificateRequest، تجري الطريقة طلبًا إلى التطبيق، من خلال الدالتين WeaveNodeOpAuthDelegate وWeaveNodeMfrAttestDelegate وحدث واجهة برمجة التطبيقات PrepareAuthorizeInfo API لإعداد حمولة الرسالة.

التفاصيل
المَعلمات
[in] msgBuf
مؤشر يشير إلى كائن PacketBuffer الذي يحمل رسالة GetCertificateRequest.
[in] reqType
الحصول على نوع طلب الشهادة
[in] doMfrAttest
علامة منطقية تشير إلى ما إذا كان الطلب يجب أن يتضمّن بيانات مصادقة الشركة المصنّعة
قيم الإرجاع
WEAVE_NO_ERROR
في حال إنشاء GetCertificateRequest بنجاح،

GetBinding

Binding * GetBinding(
  void
) const 

لعرض مؤشر للكائن تجليد المرتبط بـ 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.

إنت

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

يمكنك تهيئة كائن WeaveCertProvEngine استعدادًا لإرسال رسالة الحصول على طلب شهادة.

التفاصيل
المَعلمات
[in] binding
يشير ذلك المصطلح إلى كائن ربط سيتم استخدامه لإجراء اتصال مع العقدة المشابهة.
[in] opAuthDelegate
يشير هذا المصطلح إلى مؤشر لكائن تفويض المصادقة التشغيلية الذي سيتم استخدامه لإنشاء بيانات الاعتماد التشغيلية للعقدة والتوقيع عليها.
[in] mfrAttestDelegate
يشير إلى كائن تفويض مصادقة الشركة المصنّعة الذي سيتم استخدامه لإنشاء طلب وتوقيعه باستخدام بيانات الاعتماد المقدَّمة من الشركة المصنّعة للعقدة.
[in] eventCallback
مؤشر يؤدي إلى دالة سيتم استدعاؤها بواسطة الكائن WeaveCertProvEngine لعرض أحداث واجهة برمجة التطبيقات إلى التطبيق.
[in] appState
يشير هذا المصطلح إلى مؤشر لكائن محدّد داخل التطبيق سيتم تمريره مرة أخرى إلى التطبيق كلما حدث أي حدث لواجهة برمجة التطبيقات.

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

معالجة رسالة GetCertificateResponse.

تعالج هذه الطريقة بنية Weave GetCertificateResponse المرمَّزة بتنسيق Weave TLV.

عند اكتمال معالجة رسالة GetCertificateResponse بنجاح، تجري الطريقة استدعاءً للتطبيق، عبر حدث ResponseReceived API، لعرض النتيجة.

إذا فشلت معالجة رسالة GetCertificateResponse، تجري الطريقة اتصالاً بالتطبيق، عبر حدث واجهة برمجة التطبيقات CommunicationError، للإبلاغ عن الخطأ.

التفاصيل
المَعلمات
[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
)

لضبط كائن تفويض المصادقة التشغيلية في الكائن WeaveCertProvEngine.

إيقاف التشغيل

void Shutdown(
  void
)

إيقاف كائن WeaveCertProvEngine تمت تهيئته في السابق.

تجدر الإشارة إلى أنّه لا يمكن استدعاء هذه الطريقة إلا إذا سبق استدعاء الإجراء Init().

StartCertificateProvisioning

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

بدء بروتوكول توفير الشهادات.

تبدأ هذه الطريقة عملية إرسال رسالة GetCertificateRequest إلى خدمة مرجع التصديق. في حال استلام رسالة GetCertificateResponse المقابلة لها، سيتم تسليمها إلى التطبيق من خلال حدث واجهة برمجة التطبيقات ResponseReceived API.

إذا لم يكن كائن الربط في حالة جاهز عند استدعاء هذه الطريقة، فسيتم تقديم طلب إلى طريقة جمود::RequestPrepare() لبدء التحضير عند الطلب. ستظل عملية الطلب قيد الانتظار حتى تكتمل هذه العملية. سيتم تجاهل أي استدعاء إلى StartCertificateProvisioning() عندما يكون هناك طلب سابق قيد المعالجة.

التفاصيل
المَعلمات
[in] reqType
الحصول على نوع طلب الشهادة
[in] doMfrAttest
علامة منطقية تشير إلى ما إذا كان البروتوكول يجب أن يتضمن بيانات مصادقة الشركة المصنّعة.
قيم الإرجاع
WEAVE_NO_ERROR
في حال معالجة StartCertificateProvisioning() بنجاح.

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)