nl:: Weave:: Profiles:: Security:: CertProvisioning:: WeaveCertProvEngine
#include <src/lib/profiles/security/WeaveCertProvisioning.h>
ใช้ตรรกะหลักของออบเจ็กต์โปรโตคอลการจัดสรรใบรับรอง Weave
สรุป
ตัวสร้างและตัวทําลาย |
|
---|---|
WeaveCertProvEngine(void)
|
ประเภทสาธารณะ |
|
---|---|
@246{
|
enum |
EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
|
ประเภทการพิมพ์void(*
ฟังก์ชันนี้เป็นการเรียกกลับแอปพลิเคชันที่มีการเรียกใช้ในเหตุการณ์ API การจัดสรรใบรับรอง |
EventType{
|
enum |
State{
|
enum |
แอตทริบิวต์สาธารณะ |
|
---|---|
AppState
|
void *
ชี้ไปที่ข้อมูลเฉพาะแอปพลิเคชัน
|
ฟังก์ชันสาธารณะ |
|
---|---|
AbortCertificateProvisioning(void)
|
void
หยุดการแลกเปลี่ยน GetCertificate ที่อยู่ระหว่างดําเนินการ
|
GenerateGetCertificateRequest(PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
|
สร้างข้อความ GetCertificateRequest
|
GetBinding(void) const
|
Binding *
แสดงผลตัวชี้ไปยังออบเจ็กต์ Binding ที่เชื่อมโยงกับ 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)
|
เริ่มโปรโตคอลการจัดสรรใบรับรอง
|
โครงสร้าง |
|
---|---|
nl:: |
ป้อนพารามิเตอร์ให้กับเหตุการณ์ Weave Certificate Provisioning API |
nl:: |
พารามิเตอร์เอาต์พุตไปที่เหตุการณ์ Weave Certificate Provisioning API |
ประเภทสาธารณะ
@246
@246
พร็อพเพอร์ตี้ | |
---|---|
kReqType_GetInitialOpDeviceCert
|
ประเภทคําขอ "รับใบรับรอง" คือการขอรับใบรับรองการดําเนินการเริ่มต้น |
kReqType_RotateOpDeviceCert
|
ประเภทคําขอ "รับใบรับรอง" คือการหมุนเวียนใบรับรองการดําเนินการปัจจุบัน |
โค้ดเรียกกลับของเหตุการณ์
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
ฟังก์ชันนี้เป็นการเรียกกลับแอปพลิเคชันที่มีการเรียกใช้ในเหตุการณ์ API การจัดสรรใบรับรอง
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
ประเภทเหตุการณ์
EventType
พร็อพเพอร์ตี้ | |
---|---|
kEvent_CommunicationError
|
เกิดข้อผิดพลาดขณะส่ง GetCertificateRequest หรือกําลังรอการตอบกลับ |
kEvent_PrepareAuthorizeInfo
|
แอปพลิเคชันจะขอให้เตรียมเพย์โหลดสําหรับ GetCertificateRequest |
kEvent_ResponseReceived
|
ได้รับข้อความ GetCertificateResponse จากเพียร์ |
รัฐ
State
พร็อพเพอร์ตี้ | |
---|---|
kState_Idle
|
ออบเจ็กต์เครื่องมือไม่มีการใช้งาน |
kState_NotInitialized
|
ยังไม่เริ่มต้นออบเจ็กต์เครื่องมือ |
kState_PreparingBinding
|
ออบเจ็กต์เครื่องมือกําลังรอการเชื่อมโยงให้พร้อม |
kState_RequestInProgress
|
ส่งข้อความ GetCertificateRequest แล้ว และออบเจ็กต์เครื่องมือกําลังรอการตอบกลับ |
แอตทริบิวต์สาธารณะ
สถานะแอป
void * AppState
ชี้ไปที่ข้อมูลเฉพาะแอปพลิเคชัน
ฟังก์ชันสาธารณะ
การจัดสรรใบรับรองการทําแท้ง
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 เพื่อเตรียมเพย์โหลดของข้อความ
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
มูลค่าการคืนสินค้า |
|
รับการเชื่อมโยง
Binding * GetBinding( void ) const
แสดงผลตัวชี้ไปยังออบเจ็กต์ Binding ที่เชื่อมโยงกับ WeaveCertProvEngine
การเรียกกลับเหตุการณ์ Get
EventCallback GetEventCallback( void ) const
แสดงผลตัวชี้ไปยังฟังก์ชันเรียกกลับเหตุการณ์ API ที่กําหนดค่าไว้ในออบเจ็กต์ WeaveCertProvEngine ในขณะนี้
GetMfrAttestDelegate
WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate( void ) const
แสดงผลตัวชี้ไปยังออบเจ็กต์การมอบสิทธิ์เอกสารรับรองของผู้ผลิตที่กําหนดค่าไว้บนออบเจ็กต์ WeaveCertProvEngine ในขณะนี้
GetOpAuthDelegate
WeaveNodeOpAuthDelegate * GetOpAuthDelegate( void ) const
แสดงผลตัวชี้ไปยังออบเจ็กต์การมอบสิทธิ์การตรวจสอบสิทธิ์การดําเนินการที่กําหนดค่าในออบเจ็กต์ WeaveCertProvEngine ในขณะนี้
ประเภท GetReq
uint8_t GetReqType( void ) const
เรียกดูประเภทคําขอปัจจุบัน
อิต
WEAVE_ERROR Init( Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState )
เริ่มต้นออบเจ็กต์ WeaveCertProvEngine เพื่อเตรียมส่งข้อความคําขอรับใบรับรอง
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
การตอบกลับใบรับรองกระบวนการ
WEAVE_ERROR ProcessGetCertificateResponse( PacketBuffer *msgBuf )
ประมวลผลข้อความ GetCertificateResponse
วิธีนี้ประมวลผลโครงสร้าง WeCertificate ของ Weave ที่เข้ารหัสในรูปแบบ Weave TLV
เมื่อประมวลผลข้อความ GetCertificateResponse เสร็จเรียบร้อยแล้ว เมธอดจะทําการเรียกแอปพลิเคชันผ่านเหตุการณ์ ResponseReceived API เพื่อส่งผลลัพธ์
หากประมวลผลข้อความ GetCertificateResponse ไม่สําเร็จ เมธอดนี้จะเรียกใช้แอปพลิเคชันผ่านเหตุการณ์ CommunicationError API เพื่อรายงานข้อผิดพลาด
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
มูลค่าการคืนสินค้า |
|
การเชื่อมโยงการเชื่อมโยง
void SetBinding( Binding *binding )
ตั้งค่าออบเจ็กต์การเชื่อมโยงในออบเจ็กต์ WeaveCertProvEngine
ตั้งค่าการเรียกกลับเหตุการณ์
void SetEventCallback( EventCallback eventCallback )
ตั้งค่าฟังก์ชันเรียกกลับเหตุการณ์ของ API บนออบเจ็กต์ WeaveCertProvEngine
SetMfrAttestDelegate
void SetMfrAttestDelegate( WeaveNodeMfrAttestDelegate *mfrAttestDelegate )
ตั้งค่าออบเจ็กต์การมอบสิทธิ์ของผู้ผลิตที่รับรองไว้ในออบเจ็กต์ WeaveCertProvEngine
SetOpAuthDelegate
void SetOpAuthDelegate( WeaveNodeOpAuthDelegate *opAuthDelegate )
ตั้งค่าออบเจ็กต์การมอบสิทธิ์การตรวจสอบสิทธิ์การดําเนินการในออบเจ็กต์ WeaveCertProvEngine
ปิดการทำงาน
void Shutdown( void )
ปิดออบเจ็กต์ WeaveCertProvEngine ที่เริ่มต้นไว้ก่อนหน้านี้
โปรดทราบว่าจะมีการเรียกเมธอดนี้หากมีการเรียกเมธอด Init() ก่อนหน้านี้เท่านั้น
เริ่มต้นใบรับรอง
WEAVE_ERROR StartCertificateProvisioning( uint8_t reqType, bool doMfrAttest )
เริ่มโปรโตคอลการจัดสรรใบรับรอง
การดําเนินการนี้จะเริ่มต้นกระบวนการส่งข้อความ GetCertificateRequest ไปยังบริการ CA หากได้รับข้อความ GetCertificateResponse ที่เกี่ยวข้องแล้ว ระบบจะส่งข้อความนั้นไปยังแอปพลิเคชันผ่านเหตุการณ์ ResponseReceived API
หากออบเจ็กต์ Binding ไม่อยู่ในสถานะพร้อมเมื่อมีการเรียกใช้เมธอดนี้ ระบบจะส่งคําขอไปยังเมธอด Binding::RequestReady() เพื่อเริ่มการเตรียมแบบออนดีมานด์ จากนั้นคําขอจะรอจนกว่าขั้นตอนนี้เสร็จสมบูรณ์ ระบบจะไม่สนใจการเรียกใช้ StartCertificateProvisioning() ขณะที่มีคําขอก่อนหน้านี้ที่ดําเนินการอยู่
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
มูลค่าการคืนสินค้า |
|
WeaveCertProvEngine
WeaveCertProvEngine( void )