Google is committed to advancing racial equity for Black communities. See how.

এনএল :: তাঁত :: প্রোফাইল :: সুরক্ষা :: সার্টপ্রোভিজনিং :: ওয়েভকার্টপ্রোভেনজাইন

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

ওয়েভ শংসাপত্রের বিধান প্রোটোকল অবজেক্টের মূল যুক্তিকে কার্যকর করে।

সারসংক্ষেপ

নির্মাণকারী এবং ধ্বংসকারী

WeaveCertProvEngine (void)

পাবলিক প্রকার

@246 {
kReqType_GetInitialOpDeviceCert = 0,
kReqType_RotateOpDeviceCert = 1
}
এনাম
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) টাইপডেফ
void(*
এই ফাংশনটি হ'ল অ্যাপ্লিকেশন কলব্যাক যা শংসাপত্র প্রভিশন ইঞ্জিন এপিআই ইভেন্টগুলিতে চাওয়া হয়।
EventType {
kEvent_PrepareAuthorizeInfo = 1,
kEvent_ResponseReceived = 2,
kEvent_CommunicationError = 3
}
এনাম
State {
kState_NotInitialized = 0,
kState_Idle = 1,
kState_PreparingBinding = 2,
kState_RequestInProgress = 3
}
এনাম

জনসাধারণের গুণাবলী

AppState
void *
অ্যাপ্লিকেশন-নির্দিষ্ট ডেটাতে একটি পয়েন্টার।

পাবলিক ফাংশন

AbortCertificateProvisioning (void)
void
অগ্রগতিতে কোনও গেটকার্টিফেট এক্সচেঞ্জ থামিয়ে দেয়।
GenerateGetCertificateRequest ( PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
গেটকার্টিফিটআরওয়েস্ট বার্তা উত্পন্ন করুন।
GetBinding (void) const
একটি পয়েন্টার ফেরত পাঠায় বাঁধাই সঙ্গে যুক্ত বস্তুর 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)
গেটকার্টিফিকেট রেসপন্স বার্তা প্রসেস করুন।
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 এর :: বুনা :: প্রোফাইল :: নিরাপত্তা :: CertProvisioning :: WeaveCertProvEngine :: InEventParam

শংসাপত্র বিধান এপিআই ইভেন্ট বুনতে ইনপুট পরামিতি।

nl এর :: বুনা :: প্রোফাইল :: নিরাপত্তা :: CertProvisioning :: WeaveCertProvEngine :: OutEventParam

শংসাপত্র বিধানের API ইভেন্টের আউটপুট পরামিতি

পাবলিক প্রকার

@ 246

 @246
সম্পত্তি
kReqType_GetInitialOpDeviceCert

শংসাপত্রের অনুরোধের প্রকারটি হ'ল প্রাথমিক অপারেশনাল শংসাপত্র প্রাপ্ত to

kReqType_RotateOpDeviceCert

শংসাপত্রের অনুরোধের অনুরোধটি হ'ল বর্তমান অপারেশনাল শংসাপত্রটি ঘোরানো।

ইভেন্টক্যালব্যাক

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

এই ফাংশনটি হ'ল অ্যাপ্লিকেশন কলব্যাক যা শংসাপত্র প্রভিশন ইঞ্জিন এপিআই ইভেন্টগুলিতে চাওয়া হয়।

বিশদ
পরামিতি
[in] appState
ইঞ্জিন অবজেক্টের সাথে যুক্ত অ্যাপ্লিকেশন-সংজ্ঞায়িত রাষ্ট্রের তথ্যের একটি পয়েন্টার।
[in] eventType
ইভেন্ট কলব্যাকের মাধ্যমে ইভেন্ট আইডি পাস হয়েছে।
[in] inParam
ইভেন্ট কলব্যাক দ্বারা পাস করা ইনপুট ইভেন্টের পরামিতিগুলির উল্লেখ।
[in] outParam
ইভেন্ট কলব্যাক দ্বারা আউটপুট ইভেন্ট পরামিতিগুলির রেফারেন্স।

ইভেন্টের ধরণ

 EventType
সম্পত্তি
kEvent_CommunicationError

গেটকার্টিফিকেট রিকোয়েস্ট পাঠানোর সময় বা প্রতিক্রিয়ার জন্য অপেক্ষা করার সময় একটি যোগাযোগের ত্রুটি ঘটেছে।

kEvent_PrepareAuthorizeInfo

আবেদনটি অনুরোধ করা হয়েছে গেটকার্টিফিটআরউয়েস্টের জন্য পেলোড প্রস্তুত করার জন্য।

kEvent_ResponseReceived

পিয়ারের থেকে একটি গেটকার্টিফিট রিসপন্স বার্তা পেয়েছিল।

রাষ্ট্র

 State
সম্পত্তি
kState_Idle

ইঞ্জিন অবজেক্ট অলস।

kState_NotInitialized

ইঞ্জিন অবজেক্টটি আরম্ভ হয় না।

kState_PreparingBinding

ইঞ্জিন অবজেক্টটি বাঁধাইয়ের প্রস্তুত হওয়ার জন্য অপেক্ষা করছে।

kState_RequestInProgress

একটি গেটকার্টিফিকেট রিক্যুয়েস্ট বার্তা প্রেরণ করা হয়েছে এবং ইঞ্জিন অবজেক্ট একটি প্রতিক্রিয়ার জন্য অপেক্ষা করছে।

জনসাধারণের গুণাবলী

অ্যাপস্টেট

void * AppState

অ্যাপ্লিকেশন-নির্দিষ্ট ডেটাতে একটি পয়েন্টার।

পাবলিক ফাংশন

AbortCertificateProvisioning

void AbortCertificateProvisioning(
  void
)

অগ্রগতিতে কোনও গেটকার্টিফেট এক্সচেঞ্জ থামিয়ে দেয়।

জেনারেটগেটকার্টিফিকেট রিকুয়েস্ট

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

গেটকার্টিফিটআরওয়েস্ট বার্তা উত্পন্ন করুন।

এই পদ্ধতি বুনা GetCertificateRequest গঠন বুনা মধ্যে এনকোড উত্পন্ন TLV বিন্যাস।

যখন GetCertificateRequest বার্তা বিরচন, পদ্ধতি আবেদন করার জন্য একটি অনুরোধ, তোলে মাধ্যমে WeaveNodeOpAuthDelegate এবং WeaveNodeMfrAttestDelegate , বার্তার পে লোড প্রস্তুত করতে কার্যকারিতা ও PrepareAuthorizeInfo এপিআই ইভেন্ট।

বিশদ
পরামিতি
[in] msgBuf
গেটকার্টিফিটআরেক্সেস্ট বার্তাটি ধারণ করে প্যাকেট বাফার অবজেক্টের পয়েন্টার।
[in] reqType
শংসাপত্রের অনুরোধের প্রকার পান।
[in] doMfrAttest
একটি বুলিয়ান পতাকা যা অনুরোধে নির্মাতার সত্যতা ডেটা অন্তর্ভুক্ত করা উচিত কিনা তা নির্দেশ করে।
রিটার্ন মান
WEAVE_NO_ERROR
যদি getCertificateRequest সফলভাবে উত্পাদিত হয়েছিল।

গেটবাইন্ডিং

Binding * GetBinding(
  void
) const 

একটি পয়েন্টার ফেরত পাঠায় বাঁধাই সঙ্গে যুক্ত বস্তুর WeaveCertProvEngine

গেটএভেন্টক্যালব্যাক

EventCallback GetEventCallback(
  void
) const 

বর্তমানে কনফিগার এপিআই ঘটনা কলব্যাক ফাংশন একটি পয়েন্টার ফেরত পাঠায় WeaveCertProvEngine অবজেক্ট।

GetMfrAttestDelegate

WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate(
  void
) const 

বর্তমানে কনফিগার প্রস্তুতকারকের প্রত্যায়ন প্রতিনিধি বস্তু একটি পয়েন্টার ফেরৎ WeaveCertProvEngine অবজেক্ট।

GetOpAuthDelegate

WeaveNodeOpAuthDelegate * GetOpAuthDelegate(
  void
) const 

বর্তমানে কনফিগার কর্মক্ষম প্রমাণীকরণ প্রতিনিধি বস্তু একটি পয়েন্টার ফেরৎ WeaveCertProvEngine অবজেক্ট।

গেটরেকটাইপ

uint8_t GetReqType(
  void
) const 

বর্তমান অনুরোধের প্রকারটি পুনরুদ্ধার করুন।

গেটস্টেট

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
কোনও উত্পাদক প্রত্যয়ন প্রতিনিধি অবজেক্টের একটি পয়েন্টার যা নোডের প্রস্তুতকারকের বিধানিত শংসাপত্রগুলি ব্যবহার করে অনুরোধটি তৈরি এবং স্বাক্ষর করতে ব্যবহৃত হবে।
[in] eventCallback
একটি ফাংশন যে বলা হবে একটি পয়েন্টার WeaveCertProvEngine বস্তুর আবেদন এপিআই ঘটনা প্রদান করা।
[in] appState
একটি অ্যাপ্লিকেশন-সংজ্ঞায়িত অবজেক্টের একটি পয়েন্টার যা যখনই কোনও এপিআই ইভেন্ট ঘটে তখনই অ্যাপ্লিকেশনটিতে ফেরত দেওয়া হবে।

প্রসেসগেটস সার্টিফিকেট রেসপন্স

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

গেটকার্টিফিকেট রেসপন্স বার্তা প্রসেস করুন।

এই পদ্ধতি বুনা GetCertificateResponse গঠন বুনা মধ্যে এনকোড প্রক্রিয়াকরণ TLV বিন্যাস।

যখন গেটকার্টিফিকেট রেসপন্স বার্তার প্রসেসিং সাফল্যের সাথে সম্পন্ন হয়, ফলটি সরবরাহ করার জন্য পদ্ধতিটি রেসপন্স রিসিপড এপিআই ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনকে কল দেয়।

যদি গেটকার্টিফিকেট রেসপন্স বার্তার প্রসেসিং ব্যর্থ হয়, ত্রুটিটি রিপোর্ট করার জন্য পদ্ধতিটি যোগাযোগের ত্রুটি API ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনকে কল দেয়।

বিশদ
পরামিতি
[in] msgBuf
গেটক্রটিফিটরেস্পোনস বার্তাটি ধারণ করে প্যাকেটফুফার অবজেক্টের পয়েন্টার।
রিটার্ন মান
WEAVE_NO_ERROR
যদি গেটকার্টিফিটআরস্পোনস বার্তাটি সফলভাবে প্রক্রিয়া করা হয়েছিল।

সেটবাইন্ডিং

void SetBinding(
  Binding *binding
)

উপর বাঁধাই বস্তুর নির্ধারণ WeaveCertProvEngine অবজেক্ট।

সেটএভেন্টক্যালব্যাক

void SetEventCallback(
  EventCallback eventCallback
)

উপর এপিআই ঘটনা কলব্যাক ফাংশন নির্ধারণ WeaveCertProvEngine অবজেক্ট।

সেটমফ্রএটেস্টডেলিগেট

void SetMfrAttestDelegate(
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate
)

উপর প্রস্তুতকারকের প্রত্যায়ন প্রতিনিধি বস্তুর নির্ধারণ WeaveCertProvEngine অবজেক্ট।

সেটঅপঅথডেলিগেট

void SetOpAuthDelegate(
  WeaveNodeOpAuthDelegate *opAuthDelegate
)

উপর কর্মক্ষম প্রমাণীকরণ প্রতিনিধি বস্তুর নির্ধারণ WeaveCertProvEngine অবজেক্ট।

শাটডাউন

void Shutdown(
  void
)

শাটডাউন পূর্বে সক্রিয়া WeaveCertProvEngine অবজেক্ট।

মনে রাখবেন যে, এই পদ্ধতি শুধুমাত্র যদি বলা যেতে পারে আইনিট () পদ্ধতি পূর্বে বলা হয়েছে।

স্টার্টকিরটিফিটপ্রোভিজনিং

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

শংসাপত্রের বিধান প্রোটোকল শুরু করুন।

এই পদ্ধতিটি সিএ সার্ভিসে একটি গেটকার্টিফিকেট রিকোয়েস্ট বার্তা প্রেরণের প্রক্রিয়া শুরু করে। যদি এবং যখন কোনও সম্পর্কিত গেটকার্টিফিকেট রেসপন্স বার্তা প্রাপ্ত হয় তবে এটি রেসপন্স রিসিভড এপিআই ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনটিতে সরবরাহ করা হবে।

তাহলে বাঁধাই বস্তুর রেডি রাষ্ট্র যখন এই পদ্ধতি বলা হয় না, একটি অনুরোধ করা হবে বাঁধাই :: RequestPrepare () অন-ডিমান্ড প্রস্তুতি শুরু করার পদ্ধতি। অনুরোধ অপারেশনটি এই প্রক্রিয়াটি শেষ না হওয়া পর্যন্ত অপেক্ষা করবে। কোন কল StartCertificateProvisioning () প্রক্রিয়ায় আগের অনুরোধ উপেক্ষা করা হবে সেখানে থাকাকালীন।

বিশদ
পরামিতি
[in] reqType
শংসাপত্রের অনুরোধের প্রকার পান।
[in] doMfrAttest
একটি বুলিয়ান পতাকা যা নির্দেশ করে যে প্রোটোকলে প্রস্তুতকারকের প্রত্যয়ন ডেটা অন্তর্ভুক্ত করা উচিত।
রিটার্ন মান
WEAVE_NO_ERROR
তাহলে StartCertificateProvisioning () সফলভাবে প্রক্রিয়াকরণ হয়েছে।

ওয়েভকার্টপ্রোভেনজাইন

 WeaveCertProvEngine(
  void
)