nl:: Weave:: الملفات الشخصية:: الأمان:: CertCert:: WeaveCertProvEngine
#include <src/lib/profiles/security/WeaveCertProvisioning.h>
تنفيذ المنطق الأساسي لكائن بروتوكول توفير شهادات مصادقة Weave.
ملخّص
الماكينات والتصاميم |
|
---|---|
WeaveCertProvEngine(void)
|
الأنواع العامة |
|
---|---|
@246{
|
تعداد |
EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
|
typedefvoid(*
هذه الدالة هي استدعاء التطبيق الذي يتم استدعاؤه على أحداث واجهة برمجة تطبيقات محرك توفير الشهادات. |
EventType{
|
تعداد |
State{
|
تعداد |
السمات العلنية |
|
---|---|
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
لضبط عنصر تفويض المصادقة التشغيلية على الكائن WeaveCertProvEngine.
|
Shutdown(void)
|
void
يجب إيقاف الكائن WeaveCertProvEngine الذي تم إعداده مسبقًا.
|
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
|
بدء بروتوكول توفير الشهادات.
|
البنى |
|
---|---|
nl:: |
معلمات الإدخال إلى حدث واجهة برمجة التطبيقات لإدارة حسابات شهادة Weave لإدارة الحسابات. |
nl:: |
معلَمات الإخراج إلى حدث واجهة برمجة التطبيقات لإدارة حسابات شهادة Weave لإدارة الحسابات. |
الأنواع العامة
@246
@246
أماكن إقامة | |
---|---|
kReqType_GetInitialOpDeviceCert
|
نوع طلب الحصول على الشهادة هو الحصول على شهادة التشغيل الأولية. |
kReqType_RotateOpDeviceCert
|
نوع طلب الحصول على الشهادة هو تدوير الشهادة التشغيلية الحالية. |
استدعاء الحدث
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
هذه الدالة هي استدعاء التطبيق الذي يتم استدعاؤه على أحداث واجهة برمجة تطبيقات محرك توفير الشهادات.
التفاصيل | |||||||||
---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
نوع الحدث
EventType
أماكن إقامة | |
---|---|
kEvent_CommunicationError
|
حدث خطأ في الاتصال أثناء إرسال GetCertificateRequest أو في انتظار رد. |
kEvent_PrepareAuthorizeInfo
|
ويُطلب من التطبيق تحضير حمولة طلب الحصول على الشهادة. |
kEvent_ResponseReceived
|
تم استلام رسالة GetCertificateResponse من الزملاء. |
الولاية
State
أماكن إقامة | |
---|---|
kState_Idle
|
عنصر المحرك غير نشِط. |
kState_NotInitialized
|
لم يتم إعداد كائن المحرك. |
kState_PreparingBinding
|
كائن المحرك في انتظار أن يصبح الربط جاهزًا. |
kState_RequestInProgress
|
تم إرسال رسالة GetCertificateRequest وأن كائن المحرك في انتظار الرد. |
السمات العلنية
حالة التطبيق
void * AppState
مؤشر إلى البيانات الخاصة بالتطبيق.
الوظائف العامة
إلغاء الشهادات
void AbortCertificateProvisioning( void )
إيقاف أي تبادل لـ GetCertificate قيد التقدم.
إنشاء طلب شهادة
WEAVE_ERROR GenerateGetCertificateRequest( PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest )
أنشئ رسالة GetCertificateRequest.
تنشئ هذه الطريقة بنية Weave GetCertificateRequest مشفّرة بتنسيق Weave TLV.
عند إنشاء رسالة GetCertificateRequest، ترسل الطريقة طلبًا إلى التطبيق، من خلال وظيفتَي WeaveNodeOpAuthتفويض وWeaveNodeMfrAttestDelegate وحدث SetupAuthorizeInfo API، لإعداد الحمولة من الرسالة.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||
قيم الإرجاع |
|
الحصول على رابط
Binding * GetBinding( void ) const
عرض مؤشر لكائن الربط المرتبط بـ WeaveCertProvEngine.
استدعاء GetEvent
EventCallback GetEventCallback( void ) const
عرض مؤشر إلى دالة رد الاتصال من واجهة برمجة التطبيقات التي تم ضبطها حاليًا في العنصر WeaveCertProvEngine.
الحصول على التفويض
WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate( void ) const
عرض مؤشر إلى كائن تفويض المصادقة على الشركة المصنّعة الذي تم إعداده حاليًا على الكائن WeaveCertProvEngine.
الحصول على تفويض
WeaveNodeOpAuthDelegate * GetOpAuthDelegate( void ) const
عرض مؤشر إلى كائن تفويض التشغيل التشغيلي الذي تم إعداده حاليًا على الكائن WeaveCertProvEngine.
GetReqType
uint8_t GetReqType( void ) const
استرداد نوع الطلب الحالي
الحصول على الحالة
State GetState( void ) const
يمكنك استرداد الحالة الحالية للكائن WeaveCertProvEngine.
Init
WEAVE_ERROR Init( Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState )
عليك إعداد الكائن WeaveCertProvEngine استعدادًا لإرسال رسالة طلب الحصول على الشهادة.
التفاصيل | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
ProcessGetCertificateResponse
WEAVE_ERROR ProcessGetCertificateResponse( PacketBuffer *msgBuf )
معالجة رسالة GetCertificateResponse.
تعالج هذه الطريقة بنية Weave GetCertificateResponse مشفّرة بتنسيق Weave TLV.
عند اكتمال معالجة رسالة GetCertificateResponse بنجاح، تجري الطريقة طلبًا إلى التطبيق، من خلال حدث واجهة برمجة التطبيقات ResponseReceived API، لعرض النتيجة.
إذا تعذّرت معالجة رسالة GetCertificateResponse، تجري الطريقة طلبًا إلى التطبيق، من خلال حدث ConnectionError API، للإبلاغ عن الخطأ.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
قيم الإرجاع |
|
تجميع العنصر
void SetBinding( Binding *binding )
لضبط العنصر المرتبط على الكائن WeaveCertProvEngine.
SetCallCallback
void SetEventCallback( EventCallback eventCallback )
لضبط دالة رد اتصال واجهة برمجة التطبيقات على العنصر WeaveCertProvEngine.
SetMfrAttestDelegate
void SetMfrAttestDelegate( WeaveNodeMfrAttestDelegate *mfrAttestDelegate )
تُحدِّد عنصر تفويض المصادقة على الشركة المصنّعة على الكائن WeaveCertProvEngine.
SetOpAuthتفويض
void SetOpAuthDelegate( WeaveNodeOpAuthDelegate *opAuthDelegate )
لضبط عنصر تفويض المصادقة التشغيلية على الكائن WeaveCertProvEngine.
إيقاف التشغيل
void Shutdown( void )
يجب إيقاف الكائن WeaveCertProvEngine الذي تم إعداده مسبقًا.
يُرجى العِلم أنه لا يمكن استدعاء هذه الطريقة إلا إذا تم استدعاء طريقة Init() في السابق.
بدء توفير الشهادات
WEAVE_ERROR StartCertificateProvisioning( uint8_t reqType, bool doMfrAttest )
بدء بروتوكول توفير الشهادات.
تبدأ هذه الطريقة عملية إرسال رسالة GetCertificateRequest إلى خدمة CA. وفي حال استلام رسالة GetCertificateResponse المقابلة ووقت تسليمها، سيتم تسليمها إلى التطبيق من خلال حدث واجهة برمجة التطبيقات ResponseReceived API.
وفي حال لم يكن كائن الربط بالحالة "جاهز" عند استدعاء هذه الطريقة، سيتم إرسال طلب إلى طريقة تغليف::RequestSetup() لبدء التحضير عند الطلب. وستكون عملية الطلب في انتظارك حتى اكتمال هذه العملية. وسيتم تجاهل أي طلب إلى StartCertificatetssg() أثناء وجود طلب سابق قيد المعالجة.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
WeaveCertProvEngine
WeaveCertProvEngine( void )