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) تعريف الكتابة
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
لإيقاف أي عملية تبادل شهادات قيد التقدّم.
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
تضبط هذه السياسة كائن تفويض المصادقة التشغيلية في الكائن 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
)

لإيقاف أي عملية تبادل شهادات قيد التقدّم.

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 

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

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

رسالة GetCertificateResponse الخاصة بالعملية.

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

عند اكتمال معالجة رسالة 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
)

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

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

void Shutdown(
  void
)

إيقاف كائن WeaveCertProvEngine تم إعداده مسبقًا.

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

StartCertificateProvisioning

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

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

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

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

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

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)