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(*
এই ফাংশনটি হল অ্যাপ্লিকেশন কলব্যাক যা সার্টিফিকেট প্রভিশনিং ইঞ্জিন 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
WeaveCertProvEngine-এর সাথে যুক্ত Binding অবজেক্টের একটি পয়েন্টার রিটার্ন করে।
GetEventCallback(void) const
বর্তমানে WeaveCertProvEngine অবজেক্টে কনফিগার করা API ইভেন্ট কলব্যাক ফাংশনে একটি পয়েন্টার রিটার্ন করে।
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
WeaveCertProvEngine অবজেক্টে API ইভেন্ট কলব্যাক ফাংশন সেট করে।
SetMfrAttestDelegate(WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
WeaveCertProvEngine অবজেক্টে প্রস্তুতকারকের অ্যাটেস্টেশন ডেলিগেট অবজেক্ট সেট করে।
SetOpAuthDelegate(WeaveNodeOpAuthDelegate *opAuthDelegate)
void
WeaveCertProvEngine অবজেক্টে অপারেশনাল যাচাইকরণ ডেলিগেট অবজেক্ট সেট করে।
Shutdown(void)
void
আগে শুরু করা WeaveCertProvEngine অবজেক্ট বন্ধ করুন।
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
সার্টিফিকেট প্রভিশনিং প্রোটোকল শুরু করুন।

স্ট্রাক্ট

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

Weave Certificate Provisioning API ইভেন্টে ইনপুট প্যারামিটার।

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

Weave Certificate Provisioning API ইভেন্টে প্যারামিটার আউটপুট করুন।

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

@246

 @246
প্রপার্টি
kReqType_GetInitialOpDeviceCert

প্রাথমিক অপারেশনাল সার্টিফিকেট পাওয়ার জন্য 'সার্টিফিকেট পান' অনুরোধের ধরন ব্যবহার করা হয়।

kReqType_RotateOpDeviceCert

সার্টিফিকেট পাওয়ার অনুরোধের ধরন হল বর্তমান অপারেশনাল সার্টিফিকেট রোটেট করা।

EventCallback

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

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

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

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 TLV ফর্ম্যাটে এনকোড করা Weave GetCertificateRequest স্ট্রাকচার তৈরি করে।

GetCertificateRequest মেসেজ তৈরি করার সময়, মেসেজের পেলোড প্রস্তুত করতে, পদ্ধতিটি WeaveNodeOpAuthDelegate এবং WeaveNodeMfrAttestDelegate ফাংশন এবং PrepareAuthorizeInfo API ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনকে অনুরোধ করে।

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

GetBinding

Binding * GetBinding(
  void
) const 

WeaveCertProvEngine-এর সাথে যুক্ত Binding অবজেক্টের একটি পয়েন্টার রিটার্ন করে।

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

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

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

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

GetCertificateResponse মেসেজ প্রসেস করুন।

এই পদ্ধতি Weave TLV ফর্ম্যাটে এনকোড করা Weave GetCertificateResponse স্ট্রাকচার প্রসেস করে।

GetCertificateResponse মেসেজ প্রসেস করার কাজ সম্পূর্ণ হলে, এই পদ্ধতিটি ResponseReceived API ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনকে কল করে ফলাফল প্রদান করে।

GetCertificateResponse মেসেজ প্রসেস করা না গেলে, পদ্ধতিটি CommunicationError API ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনকে কল করে সমস্যার কথা জানায়।

বিবরণ
প্যারামিটারগুলি
[in] msgBuf
GetCertificateResponse মেসেজ হোল্ড করা PacketBuffer অবজেক্টের একটি পয়েন্টার।
রিটার্ন ভ্যালু
WEAVE_NO_ERROR
GetCertificateResponse মেসেজ প্রসেস করা হলে।

SetBinding

void SetBinding(
  Binding *binding
)

WeaveCertProvEngine অবজেক্টে বাইন্ডিং অবজেক্ট সেট করে।

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

WeaveCertProvEngine অবজেক্টে API ইভেন্ট কলব্যাক ফাংশন সেট করে।

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
)

সার্টিফিকেট প্রভিশনিং প্রোটোকল শুরু করুন।

এই পদ্ধতি CA পরিষেবায় GetCertificateRequest মেসেজ পাঠানোর প্রসেস শুরু করে। যদি এবং যখন একটি সংশ্লিষ্ট GetCertificateResponse মেসেজ পাওয়া যায়, তখন এটি ResponseReceived API ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনে ডেলিভার করা হবে।

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

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

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)