nl :: نسج:: مظهر:: حماية:: CertProvisioning :: WeaveCertProvEngine

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

تنفذ المنطق الأساسي لكائن بروتوكول Weave Certificate Provisioning.

ملخص

البنائين والمدمرين

WeaveCertProvEngine (void)

الأنواع العامة

@246 {
kReqType_GetInitialOpDeviceCert = 0,
kReqType_RotateOpDeviceCert = 1
}
تعداد
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
هذه الوظيفة هي رد الاتصال للتطبيق الذي يتم استدعاؤه في أحداث واجهة برمجة تطبيقات Certificate Provisioning Engine.
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
ترجع مؤشر إلى وظيفة رد الاتصال الحدث API تكوينها حاليا في 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
يحدد وظيفة رد الاتصال الحدث API على WeaveCertProvEngine الكائن.
SetMfrAttestDelegate ( WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
يحدد الكائن مندوب الشركة المصنعة للشهادة على WeaveCertProvEngine الكائن.
SetOpAuthDelegate ( WeaveNodeOpAuthDelegate *opAuthDelegate)
void
يحدد الكائن المصادقة مندوب التشغيلي على WeaveCertProvEngine الكائن.
Shutdown (void)
void
إيقاف لتهيئة سابقا WeaveCertProvEngine الكائن.
StartCertificateProvisioning (uint8_t reqType, bool doMfrAttest)
بدء بروتوكول توفير الشهادة.

الهياكل

نيكولا لانغ :: :: نسج الملامح :: :: الأمن CertProvisioning :: :: WeaveCertProvEngine InEventParam

إدخال معلمات لنسج حدث API توفير الشهادة.

نيكولا لانغ :: :: نسج الملامح :: :: الأمن CertProvisioning :: :: WeaveCertProvEngine OutEventParam

معلمات الإخراج لنسج حدث API توفير الشهادة.

الأنواع العامة

@ 246

 @246
الخصائص
kReqType_GetInitialOpDeviceCert

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

kReqType_RotateOpDeviceCert

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

حدث

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

هذه الوظيفة هي رد الاتصال للتطبيق الذي يتم استدعاؤه في أحداث واجهة برمجة تطبيقات Certificate Provisioning Engine.

تفاصيل
المعلمات
[in] appState
مؤشر لمعلومات الحالة المعرفة من قبل التطبيق والمرتبطة بكائن المحرك.
[in] eventType
تم تمرير معرف الحدث من خلال رد اتصال الحدث.
[in] inParam
مرجع معلمات حدث الإدخال التي تم تمريرها بواسطة رد نداء الحدث.
[in] outParam
تم تمرير مرجع معلمات حدث الإخراج من خلال رد اتصال الحدث.

نوع الحدث

 EventType
الخصائص
kEvent_CommunicationError

حدث خطأ في الاتصال أثناء إرسال GetCertificateRequest أو انتظار استجابة.

kEvent_PrepareAuthorizeInfo

يُطلب من التطبيق تحضير الحمولة لـ GetCertificateRequest.

kEvent_ResponseReceived

تم استلام رسالة GetCertificateResponse من النظير.

حالة

 State
الخصائص
kState_Idle

كائن المحرك في وضع الخمول.

kState_NotInitialized

لم تتم تهيئة كائن المحرك.

kState_PreparingBinding

كائن المحرك ينتظر أن يصبح الربط جاهزًا.

kState_RequestInProgress

تم إرسال رسالة GetCertificateRequest وكان كائن المحرك ينتظر استجابة.

السمات العامة

AppState

void * AppState

مؤشر إلى البيانات الخاصة بالتطبيق.

الوظائف العامة

إحباط منح الشهادات

void AbortCertificateProvisioning(
  void
)

يوقف أي تبادل GetCertificate قيد التقدم.

إنشاء الحصول على شهادة طلب

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

قم بإنشاء رسالة GetCertificateRequest.

هذه الطريقة يولد هيكل نسج GetCertificateRequest المشفرة في نسج TLV الشكل.

عند تشكيل رسالة GetCertificateRequest، والأسلوب يجعل طلب إلى التطبيق، عبر WeaveNodeOpAuthDelegate و WeaveNodeMfrAttestDelegate وظائف والحدث API PrepareAuthorizeInfo، لإعداد حمولة الرسالة.

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

GetBinding

Binding * GetBinding(
  void
) const 

يعود مؤشر إلى ربط الكائن المرتبطة WeaveCertProvEngine .

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

ترجع مؤشر إلى وظيفة رد الاتصال الحدث API تكوينها حاليا في 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 الكائن إلى تقديم الأحداث API إلى التطبيق.
[in] appState
مؤشر إلى كائن معرف بواسطة التطبيق والذي سيتم تمريره مرة أخرى إلى التطبيق كلما حدث حدث API.

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

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

هذه الطريقة بمعالجة هيكل نسج GetCertificateResponse المشفرة في نسج TLV الشكل.

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

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

تفاصيل
المعلمات
[in] msgBuf
مؤشر إلى كائن PacketBuffer يحمل رسالة GetCertificateResponse.
إرجاع القيم
WEAVE_NO_ERROR
إذا تمت معالجة رسالة GetCertificateResponse بنجاح.

تعيين الربط

void SetBinding(
  Binding *binding
)

يحدد الكائن ملزمة لل WeaveCertProvEngine الكائن.

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

يحدد وظيفة رد الاتصال الحدث API على WeaveCertProvEngine الكائن.

SetMfrAttestDelegate

void SetMfrAttestDelegate(
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate
)

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

SetOpAuthDelegate

void SetOpAuthDelegate(
  WeaveNodeOpAuthDelegate *opAuthDelegate
)

يحدد الكائن المصادقة مندوب التشغيلي على WeaveCertProvEngine الكائن.

اغلق

void Shutdown(
  void
)

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

لاحظ أن هذا الأسلوب يمكن أن يسمى إلا إذا كانت التهيئة () تم استدعاء أسلوب سابقا.

StartCertificationProvisioning

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

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

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

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

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

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)