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

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

מיישם את הלוגיקה העיקרית של אובייקט פרוטוקול הקצאת אישורים של Weave.

סיכום

בונים והורסים

WeaveCertProvEngine(void)

סוגים ציבוריים

@246{
  kReqType_GetInitialOpDeviceCert = 0,
  kReqType_RotateOpDeviceCert = 1
}
טיפוסים בני מנייה (enum)
EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
הפונקציה הזו היא הקריאה החוזרת (callback) של האפליקציה שמופעלת באירועי ממשק API של מנוע להקצאת אישורים.
EventType{
  kEvent_PrepareAuthorizeInfo = 1,
  kEvent_ResponseReceived = 2,
  kEvent_CommunicationError = 3
}
טיפוסים בני מנייה (enum)
State{
  kState_NotInitialized = 0,
  kState_Idle = 1,
  kState_PreparingBinding = 2,
  kState_RequestInProgress = 3
}
טיפוסים בני מנייה (enum)

מאפיינים ציבוריים

AppState
void *
מצביע על נתונים ספציפיים לאפליקציה.

תפקידים ציבוריים

AbortCertificateProvisioning(void)
void
עוצרת כל החלפה של GetCertificate.
GenerateGetCertificateRequest(PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
יצירת הודעת GetCertificateRequest.
GetBinding(void) const
מחזיר מצביע לאובייקט Binding המשויך ל-WeaveCertProvEngine.
GetEventCallback(void) const
מחזירה מצביע אל פונקציית הקריאה החוזרת של האירוע של ה-API שמוגדרת כרגע באובייקט WeaveCertProvEngine.
GetMfrAttestDelegate(void) const
מחזיר מצביע לאובייקט של אימות (attestation) של היצרן, שמוגדר כרגע באובייקט 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
מגדיר את פונקציית הקריאה החוזרת (callback) של אירוע ה-API באובייקט WeaveCertProvEngine.
SetMfrAttestDelegate(WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
מגדיר את אובייקט הקצאת הגישה לאימות (attestation) של היצרן באובייקט WeaveCertProvEngine.
SetOpAuthDelegate(WeaveNodeOpAuthDelegate *opAuthDelegate)
void
מגדיר את אובייקט הקצאת הגישה לאימות התפעולי באובייקט WeaveCertProvEngine.
Shutdown(void)
void
משביתים אובייקט WeaveCertProvEngine שאותחל בעבר.
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
הפעלת פרוטוקול הקצאת אישורים.

מבנים

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

פרמטרים של קלט לאירוע API להקצאת אישורים של Weave Certificate.

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

פרמטרים של פלט לאירוע ממשק API להקצאת אישורים של Weave.

סוגים ציבוריים

@246

 @246
תכונות
kReqType_GetInitialOpDeviceCert

סוג הבקשה 'קבלת אישור' הוא להשיג אישורים תפעוליים ראשוניים.

kReqType_RotateOpDeviceCert

סוג הבקשה 'קבלת אישור' הוא לסובב את האישור התפעולי הנוכחי.

EventCallback

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

הפונקציה הזו היא הקריאה החוזרת (callback) של האפליקציה שמופעלת באירועי ממשק API של מנוע להקצאת אישורים.

פרטים
פרמטרים
[in] appState
הפניה לפרטי מצב בהגדרת האפליקציה שמשויכים לאובייקט המנוע.
[in] eventType
מזהה האירוע שהועבר על ידי הקריאה החוזרת לאירוע.
[in] inParam
הפניה לפרמטרים של אירועים שהוזנו על ידי הקריאה החוזרת של האירוע.
[in] outParam
הפניה לפרמטרים של אירועי פלט שמועברים על ידי הקריאה החוזרת של האירוע.

EventType

 EventType
תכונות
kEvent_CommunicationError

אירעה שגיאת תקשורת במהלך שליחת GetCertificateRequest או המתנה לתשובה.

kEvent_PrepareAuthorizeInfo

האפליקציה נדרשת להכין את המטען הייעודי (payload) עבור 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, כדי להכין את המטען הייעודי (payload) של ההודעה.

פרטים
פרמטרים
[in] msgBuf
מצביע אל האובייקט PacketBuffer שמכיל את ההודעה GetCertificateRequest.
[in] reqType
קבלת סוג של בקשת אישור.
[in] doMfrAttest
סימון בוליאני שמציין אם הבקשה צריכה לכלול נתוני אימות (attestation) של היצרן.
ערכים מוחזרים
WEAVE_NO_ERROR
אם GetCertificateRequest נוצר בהצלחה.

GetBinding

Binding * GetBinding(
  void
) const 

מחזיר מצביע לאובייקט Binding המשויך ל-WeaveCertProvEngine.

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

מחזירה מצביע אל פונקציית הקריאה החוזרת של האירוע של ה-API שמוגדרת כרגע באובייקט WeaveCertProvEngine.

GetMfrAttestDelegate

WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate(
  void
) const 

מחזיר מצביע לאובייקט של אימות (attestation) של היצרן, שמוגדר כרגע באובייקט 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
מצביע לאובייקט של מואצל לאימות (attestation) של היצרן שישמש ליצירת בקשה ולחתימה עליה באמצעות פרטי הכניסה שהוקצו על ידי היצרן בצומת.
[in] eventCallback
מצביע אל פונקציה שתיקרא על ידי האובייקט WeaveCertProvEngine כדי להעביר אירועי API לאפליקציה.
[in] appState
מצביע לאובייקט שמוגדר על ידי האפליקציה, שיועבר חזרה לאפליקציה בכל פעם שמתרחש אירוע API.

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
)

מגדיר את פונקציית הקריאה החוזרת (callback) של אירוע ה-API באובייקט WeaveCertProvEngine.

SetMfrAttestDelegate

void SetMfrAttestDelegate(
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate
)

מגדיר את אובייקט הקצאת הגישה לאימות (attestation) של היצרן באובייקט 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
סימון בוליאני שמציין אם הפרוטוקול צריך לכלול נתוני אימות (attestation) של היצרן.
ערכים מוחזרים
WEAVE_NO_ERROR
אם העיבוד של StartCertificateProvisioning() הסתיים בהצלחה.

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)