संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

nl::Weave::प्रोफ़ाइल::सुरक्षा::Cert प्रावधान::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) टाइपडेफ़
void(*
यह फ़ंक्शन ऐप्लिकेशन कॉलबैक है, जिसे सर्टिफ़िकेट प्रावधान इंजन 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
बाइंडिंगWeaveCertProv Engine के साथ जुड़े ऑब्जेक्ट का पॉइंटर दिखाता है.
GetEventCallback(void) const
WeaveCertProv Engine ऑब्जेक्ट पर हाल ही में कॉन्फ़िगर किए गए एपीआई इवेंट कॉलबैक फ़ंक्शन का पॉइंटर दिखाता है.
GetMfrAttestDelegate(void) const
फ़िलहाल, WeaveCertProvEngine ऑब्जेक्ट पर कॉन्फ़िगर किए गए निर्माता प्रमाणित करने वाले ऑब्जेक्ट के लिए पॉइंटर दिखाता है.
GetOpAuthDelegate(void) const
WeaveCertProvEngine ऑब्जेक्ट पर कॉन्फ़िगर किए गए ऑपरेशनल डेलिगेट ऑब्जेक्ट के लिए, पॉइंटर दिखाता है.
GetReqType(void) const
uint8_t
मौजूदा अनुरोध टाइप को वापस लाएं.
GetState(void) const
WeaveCertProv Engine ऑब्जेक्ट की मौजूदा स्थिति फिर से पाएं.
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::प्रोफ़ाइल::सुरक्षा::Cert प्रावधान::WeaveCertProvEngine::InEventParam

Weave Certificate Provisioning API इवेंट के लिए इनपुट पैरामीटर.

nl::Weave::प्रोफ़ाइल::सुरक्षा::Cert प्रावधान::WeaveCertProvEngine::OutEventParam

Weave Certificate Distribution API इवेंट के लिए आउटपुट पैरामीटर.

सार्वजनिक प्रकार

246

 @246
प्रॉपर्टी
kReqType_GetInitialOpDeviceCert

'सर्टिफ़िकेट पाएं' अनुरोध का टाइप, ऑपरेशनल शुरुआती सर्टिफ़िकेट लेना है.

kReqType_RotateOpDeviceCert

'सर्टिफ़िकेट पाएं' अनुरोध का टाइप, मौजूदा ऑपरेशनल सर्टिफ़िकेट को घुमाने के लिए होता है.

इवेंट कॉलबैक

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

यह फ़ंक्शन ऐप्लिकेशन कॉलबैक है, जिसे सर्टिफ़िकेट प्रावधान इंजन API इवेंट में शुरू किया गया है.

जानकारी
पैरामीटर
[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 मैसेज भेजा गया और इंजन ऑब्जेक्ट को जवाब का इंतज़ार है.

सार्वजनिक विशेषताएं

ऐप्लिकेशन की स्थिति

void * AppState

ऐप्लिकेशन-विशिष्ट डेटा के लिए एक सूचक.

सार्वजनिक फ़ंक्शन

गर्भपात प्रमाणपत्र प्रावधान

void AbortCertificateProvisioning(
  void
)

किसी भी जारी किए जा रहे GetCertificate लेन-देन को रोकता है.

GetGetCertificateRequest

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

GetCertificateRequest मैसेज जनरेट करें.

यह तरीका Weave TLV फ़ॉर्मैट में एन्कोड किया गया Weave GetCertificateRequest स्ट्रक्चर जनरेट करता है.

GetCertificateRequest मैसेज बनाते समय, मैथड ऐप्लिकेशन के पेलोड को तैयार करने के लिए, WeaveNodeOpAuthDelegate और WeaveNodeMfrAttestDelegate फ़ंक्शन के ज़रिए और तैयारAuthorizeInfo एपीआई इवेंट के ज़रिए, ऐप्लिकेशन को अनुरोध भेजता है.

जानकारी
पैरामीटर
[in] msgBuf
PacketBuffer ऑब्जेक्ट के लिए एक पॉइंटर, जो GetCertificateRequest मैसेज को दिखाता है.
[in] reqType
प्रमाणपत्र पाने का अनुरोध करें.
[in] doMfrAttest
बूलियन फ़्लैग से पता चलता है कि अनुरोध में, निर्माता के प्रमाणित करने से जुड़ा डेटा शामिल होना चाहिए या नहीं.
सामान लौटाने की वैल्यू
WEAVE_NO_ERROR
अगर GetCertificateRequest सही से जनरेट किया गया था.

गेटबाइंडिंग

Binding * GetBinding(
  void
) const 

बाइंडिंगWeaveCertProv Engine के साथ जुड़े ऑब्जेक्ट का पॉइंटर दिखाता है.

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

WeaveCertProv Engine ऑब्जेक्ट पर हाल ही में कॉन्फ़िगर किए गए एपीआई इवेंट कॉलबैक फ़ंक्शन का पॉइंटर दिखाता है.

GetMfrAttestDelegate

WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate(
  void
) const 

फ़िलहाल, WeaveCertProvEngine ऑब्जेक्ट पर कॉन्फ़िगर किए गए निर्माता प्रमाणित करने वाले ऑब्जेक्ट के लिए पॉइंटर दिखाता है.

GetOpAuthDelegate

WeaveNodeOpAuthDelegate * GetOpAuthDelegate(
  void
) const 

WeaveCertProvEngine ऑब्जेक्ट पर कॉन्फ़िगर किए गए ऑपरेशनल डेलिगेट ऑब्जेक्ट के लिए, पॉइंटर दिखाता है.

GetReqType

uint8_t GetReqType(
  void
) const 

मौजूदा अनुरोध टाइप को वापस लाएं.

GetState

State GetState(
  void
) const 

WeaveCertProv Engine ऑब्जेक्ट की मौजूदा स्थिति फिर से पाएं.

इनिट

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

सर्टिफ़िकेट पाने का अनुरोध भेजने के लिए, WeaveCertProvEngine ऑब्जेक्ट को शुरू करें.

जानकारी
पैरामीटर
[in] binding
एक बाइंडिंग ऑब्जेक्ट, जिसका इस्तेमाल पीयर नोड के साथ बातचीत शुरू करने के लिए किया जाएगा.
[in] opAuthDelegate
ऑपरेशनल ऑथेंटिकेशन ऑब्जेक्ट का पॉइंटर, जिसका इस्तेमाल नोड' के ऑपरेशनल क्रेडेंशियल को बनाने और साइन करने के लिए किया जाएगा.
[in] mfrAttestDelegate
निर्माता के प्रमाणित करने वाले ऑब्जेक्ट का पॉइंटर, जिसका इस्तेमाल नोड बनाने के अनुरोध के लिए किया जाएगा. इसके लिए, निर्माता के प्रावधान वाले क्रेडेंशियल का इस्तेमाल किया जाएगा.
[in] eventCallback
फ़ंक्शन के लिए एक पॉइंटर, जिसे ऐप्लिकेशन में एपीआई इवेंट डिलीवर करने के लिए WeaveCertProv Engine ऑब्जेक्ट से कॉल किया जाएगा.
[in] appState
एक ऐप्लिकेशन-तय ऑब्जेक्ट के लिए एक पॉइंटर, जो एपीआई इवेंट होने पर ऐप्लिकेशन को वापस पास किया जाएगा.

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

GetCertificateResponse मैसेज को प्रोसेस करें.

इस तरीके में, Weave GetCertificateResponse स्ट्रक्चर को Weave TLV फ़ॉर्मैट में प्रोसेस किया जाता है.

जब GetCertificateResponse मैसेज की प्रोसेस पूरी हो जाती है, तो नतीजे देने के लिए मैथड, ऐप्लिकेशन से रिस्पॉन्स पाने वाले एपीआई इवेंट के ज़रिए ऐप्लिकेशन को कॉल करता है.

अगर GetCertificateResponse मैसेज की प्रोसेस पूरी नहीं हो पाती है, तो कनेक्शन की शिकायत करने के लिए, CommunicationError एपीआई इवेंट के ज़रिए तरीका, ऐप्लिकेशन को कॉल करता है.

जानकारी
पैरामीटर
[in] msgBuf
PacketBuffer ऑब्जेक्ट के लिए एक पॉइंटर, जो GetCertificateResponse मैसेज दिखाता है.
सामान लौटाने की वैल्यू
WEAVE_NO_ERROR
अगर GetCertificateResponse मैसेज पूरी तरह से प्रोसेस हो गया है.

सेटबाइंडिंग

void SetBinding(
  Binding *binding
)

WeaveCertProvEngine ऑब्जेक्ट पर बाइंडिंग ऑब्जेक्ट सेट करता है.

सेट इवेंट कॉलबैक

void SetEventCallback(
  EventCallback eventCallback
)

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
)

प्रमाणपत्र प्रावधान प्रोटोकॉल शुरू करें.

इस तरीके से CA सेवा को GetCertificateRequest मैसेज भेजना शुरू किया जाता है. अगर उससे जुड़ा GetCertificateResponse मैसेज मिलता है, तो उसे responseResponsed API इवेंट के ज़रिए ऐप्लिकेशन में डिलीवर किया जाएगा.

अगर इस तरीके से कॉल करने पर बाइंडिंग ऑब्जेक्ट तैयार स्थिति में नहीं है, तो मांग पर तैयारी शुरू करने के लिए Binding::Requestतैयार() तरीके का अनुरोध किया जाएगा. इसके बाद ही, अनुरोध की प्रक्रिया शुरू होगी. पहले से किए गए अनुरोध की प्रोसेस शुरू होने पर, StartCertificateAvailability()() को किए गए कॉल को अनदेखा कर दिया जाएगा.

जानकारी
पैरामीटर
[in] reqType
प्रमाणपत्र पाने का अनुरोध करें.
[in] doMfrAttest
बूलियन फ़्लैग से पता चलता है कि प्रोटोकॉल में निर्माता की पुष्टि करने वाला डेटा शामिल होना चाहिए या नहीं.
सामान लौटाने की वैल्यू
WEAVE_NO_ERROR
अगर StartCertificateAvailability() की प्रोसेस पूरी हो गई है.

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)