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(*
הפונקציה הזו היא הקריאה החוזרת של האפליקציה שמופעלת באירועי Certificate Certification Engine 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
הפונקציה מחזירה הפניה לפונקציית ה-call back של אירועי ה-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
הגדרת פונקציית ה-call back של אירועי ה-API באובייקט WeaveCertProvEngine.
SetMfrAttestDelegate(WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
הגדרת אובייקט הנציג של אימות היצרן באובייקט WeaveCertProvEngine.
SetOpAuthDelegate(WeaveNodeOpAuthDelegate *opAuthDelegate)
void
הגדרת אובייקט הענקת הגישה לאימות התפעולי באובייקט WeaveCertProvEngine.
Shutdown(void)
void
כיבוי של אובייקט WeaveCertProvEngine שהותחל בעבר.
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
הפעלת פרוטוקול להקצאת אישורים.

structs

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

פרמטרים להזנה לאירוע API של Weave Certificate Provisioning.

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

פרמטרים של פלט לאירוע API של Weave Certificate Provisioning.

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

246@

 @246
מאפיינים
kReqType_GetInitialOpDeviceCert

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

kReqType_RotateOpDeviceCert

סוג הבקשה Get Certificate הוא כדי לבצע רוטציה של האישור התפעולי הנוכחי.

EventCallback

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

הפונקציה הזו היא פונקציית ה-call back של האפליקציה שמופיעה באירועי API של Certificate Provisioning Engine.

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

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
)

הפונקציה עוצרת את כל החלפות ה-GetCertificate שמתבצעות.

GenerateGetCertificateRequest

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

יוצרים את ההודעה GetCertificateRequest.

השיטה הזו יוצרת את המבנה של Weave GetCertificateRequest שמקודד בפורמט TLV של Weave.

כשהשיטה יוצרת את ההודעה GetCertificateRequest, היא שולחת בקשה לאפליקציה באמצעות הפונקציות WeaveNodeOpAuthDelegate ו-WeaveNodeMfrAttestDelegate ואירוע ה-API PrepareAuthorizeInfo, כדי להכין את עומס העבודה של ההודעה.

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

GetBinding

Binding * GetBinding(
  void
) const 

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

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

הפונקציה מחזירה הפניה לפונקציית ה-call back של אירועי ה-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.

Init

WEAVE_ERROR Init(
  Binding *binding,
  WeaveNodeOpAuthDelegate *opAuthDelegate,
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate,
  EventCallback eventCallback,
  void *appState
)

מאתחלים אובייקט WeaveCertProvEngine לקראת שליחת הודעת בקשה לאישור.

פרטים
פרמטרים
[in] binding
אובייקט Binding שישמש ליצירת תקשורת עם צומת השותף.
[in] opAuthDelegate
הפניה לאובייקט של הענקת גישה לאימות תפעולי, שישמש ליצירה ולחתימה באמצעות פרטי הכניסה התפעוליים של הצומת.
[in] mfrAttestDelegate
מצביע לאובייקט הענקת גישה לאימות (attestation) של יצרן, שישמש ליצירה ולחתימה של בקשה באמצעות פרטי הכניסה שהוקצו על ידי היצרן של הצומת.
[in] eventCallback
הפניה לפונקציה שתופעל על ידי האובייקט WeaveCertProvEngine כדי להעביר לאפליקציה אירועי API.
[in] appState
מצביע אל אובייקט בהגדרת אפליקציה שיועבר חזרה לאפליקציה בכל פעם שיתרחש אירוע API.

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

עיבוד ההודעה GetCertificateResponse.

השיטה הזו מעבדת את המבנה של Weave GetCertificateResponse שמקודד בפורמט Weave TLV.

כשהעיבוד של ההודעה 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
)

מגדירה את פונקציית הקריאה החוזרת של אירוע ה-API באובייקט 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 לשירות ה-CA. אם וכאשר תתקבל הודעת GetCertificateResponse תואמת, היא תישלח לאפליקציה דרך אירוע ResponseReceived API.

אם אובייקט ה-Binding לא נמצא במצב Ready כשמתבצעת קריאה ל-method הזו, תישלח בקשה ל-method‏ Binding::RequestPrepare()‎ כדי להתחיל הכנה על פי דרישה. לאחר מכן, פעולת הבקשה תמתין עד לסיום התהליך. כל קריאה ל-StartCertificateProvisioning()‎ בזמן שיש בקשה קודמת בטיפול תתעלם.

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

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)