nl:: Weave:: Profiles:: Security:: CertProvisioning:: WeaveCertProvEngine
#include <src/lib/profiles/security/WeaveCertProvisioning.h>
Mengimplementasikan logika inti objek protokol Penyediaan Sertifikat Weave.
Ringkasan
Konstruktor dan Destruktor |
|
---|---|
WeaveCertProvEngine(void)
|
Jenis publik |
|
---|---|
@246{
|
enum |
EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
|
typedefvoid(*
Fungsi ini merupakan callback aplikasi yang dipanggil pada peristiwa Certificate Provisioning Engine API. |
EventType{
|
enum |
State{
|
enum |
Atribut publik |
|
---|---|
AppState
|
void *
Pointer ke data khusus aplikasi.
|
Fungsi publik |
|
---|---|
AbortCertificateProvisioning(void)
|
void
Menghentikan pertukaran GetCertificate yang sedang berlangsung.
|
GenerateGetCertificateRequest(PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
|
Buat pesan GetCertificateRequest.
|
GetBinding(void) const
|
Binding *
Menampilkan pointer ke objek Binding yang terkait dengan WeaveCertProvEngine.
|
GetEventCallback(void) const
|
Menampilkan pointer ke fungsi callback peristiwa API yang saat ini dikonfigurasi pada objek WeaveCertProvEngine.
|
GetMfrAttestDelegate(void) const
|
Menampilkan pointer ke objek delegasi pengesahan produsen yang saat ini dikonfigurasi pada objek WeaveCertProvEngine.
|
GetOpAuthDelegate(void) const
|
Menampilkan pointer ke objek delegasi autentikasi operasional yang saat ini dikonfigurasi pada objek WeaveCertProvEngine.
|
GetReqType(void) const
|
uint8_t
Mengambil jenis permintaan saat ini.
|
GetState(void) const
|
Ambil status saat ini dari objek WeaveCertProvEngine.
|
Init(Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState)
|
Lakukan inisialisasi objek WeaveCertProvEngine sebagai persiapan untuk mengirim pesan permintaan sertifikat.
|
ProcessGetCertificateResponse(PacketBuffer *msgBuf)
|
Memproses pesan GetCertificateResponse.
|
SetBinding(Binding *binding)
|
void
Menetapkan objek binding pada objek WeaveCertProvEngine.
|
SetEventCallback(EventCallback eventCallback)
|
void
Menetapkan fungsi callback peristiwa API pada objek WeaveCertProvEngine.
|
SetMfrAttestDelegate(WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
|
void
Menetapkan objek delegasi pengesahan produsen pada objek WeaveCertProvEngine.
|
SetOpAuthDelegate(WeaveNodeOpAuthDelegate *opAuthDelegate)
|
void
Menetapkan objek delegasi autentikasi operasional pada objek WeaveCertProvEngine.
|
Shutdown(void)
|
void
Matikan objek WeaveCertProvEngine yang diinisialisasi sebelumnya.
|
StartCertificateProvisioning(uint8_t reqType, bool doMfrAttest)
|
{i>Start Certificate Provisioning Protocol<i}.
|
Struct |
|
---|---|
nl:: |
Parameter input ke peristiwa Weave Certificate Provisioning API. |
nl:: |
Parameter output ke peristiwa Weave Certificate Provisioning API. |
Jenis publik
@246
@246
Properti | |
---|---|
kReqType_GetInitialOpDeviceCert
|
Jenis permintaan Get Certificate adalah untuk mendapatkan sertifikat operasional awal. |
kReqType_RotateOpDeviceCert
|
Jenis permintaan Get Certificate adalah untuk memutar sertifikat operasional saat ini. |
EventCallback
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
Fungsi ini merupakan callback aplikasi yang dipanggil pada peristiwa Certificate Provisioning Engine API.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
EventType
EventType
Properti | |
---|---|
kEvent_CommunicationError
|
Terjadi error komunikasi saat mengirim GetCertificateRequest atau menunggu respons. |
kEvent_PrepareAuthorizeInfo
|
Aplikasi diminta untuk menyiapkan payload untuk GetCertificateRequest. |
kEvent_ResponseReceived
|
Pesan GetCertificateResponse diterima dari peer. |
Negara Bagian
State
Properti | |
---|---|
kState_Idle
|
Objek mesin tidak ada aktivitas. |
kState_NotInitialized
|
Objek mesin tidak diinisialisasi. |
kState_PreparingBinding
|
Objek mesin menunggu binding siap. |
kState_RequestInProgress
|
Pesan GetCertificateRequest telah dikirim dan objek mesin sedang menunggu respons. |
Atribut publik
AppState
void * AppState
Pointer ke data khusus aplikasi.
Fungsi publik
AbortCertificateProvisioning
void AbortCertificateProvisioning( void )
Menghentikan pertukaran GetCertificate yang sedang berlangsung.
GenerateGetCertificateRequest
WEAVE_ERROR GenerateGetCertificateRequest( PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest )
Buat pesan GetCertificateRequest.
Metode ini menghasilkan struktur Weave GetCertificateRequest yang dienkode dalam format TLV Weave.
Saat membentuk pesan GetCertificateRequest, metode ini membuat permintaan ke aplikasi, melalui fungsi WeaveNodeOpAuthDelegate dan WeaveNodeMfrAttestDelegate serta peristiwa PrepareAuthorizeInfo API, untuk menyiapkan payload pesan.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Nilai yang Ditampilkan |
|
GetBinding
Binding * GetBinding( void ) const
Menampilkan pointer ke objek Binding yang terkait dengan WeaveCertProvEngine.
GetEventCallback
EventCallback GetEventCallback( void ) const
Menampilkan pointer ke fungsi callback peristiwa API yang saat ini dikonfigurasi pada objek WeaveCertProvEngine.
GetMfrAttestDelegate
WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate( void ) const
Menampilkan pointer ke objek delegasi pengesahan produsen yang saat ini dikonfigurasi pada objek WeaveCertProvEngine.
GetOpAuthDelegate
WeaveNodeOpAuthDelegate * GetOpAuthDelegate( void ) const
Menampilkan pointer ke objek delegasi autentikasi operasional yang saat ini dikonfigurasi pada objek WeaveCertProvEngine.
GetReqType
uint8_t GetReqType( void ) const
Mengambil jenis permintaan saat ini.
Init
WEAVE_ERROR Init( Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState )
Lakukan inisialisasi objek WeaveCertProvEngine sebagai persiapan untuk mengirim pesan permintaan sertifikat.
Detail | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
ProcessGetCertificateResponse
WEAVE_ERROR ProcessGetCertificateResponse( PacketBuffer *msgBuf )
Memproses pesan GetCertificateResponse.
Metode ini memproses struktur Weave GetCertificateResponse yang dienkode dalam format TLV Weave.
Saat pemrosesan pesan GetCertificateResponse berhasil selesai, metode akan melakukan panggilan ke aplikasi, melalui peristiwa ResponseReceived API, untuk mengirimkan hasilnya.
Jika pemrosesan pesan GetCertificateResponse gagal, metode ini akan melakukan panggilan ke aplikasi, melalui peristiwa CommunicationError API, untuk melaporkan error.
Detail | |||
---|---|---|---|
Parameter |
|
||
Nilai yang Ditampilkan |
|
SetBinding
void SetBinding( Binding *binding )
Menetapkan objek binding pada objek WeaveCertProvEngine.
SetEventCallback
void SetEventCallback( EventCallback eventCallback )
Menetapkan fungsi callback peristiwa API pada objek WeaveCertProvEngine.
SetMfrAttestDelegate
void SetMfrAttestDelegate( WeaveNodeMfrAttestDelegate *mfrAttestDelegate )
Menetapkan objek delegasi pengesahan produsen pada objek WeaveCertProvEngine.
SetOpAuthDelegate
void SetOpAuthDelegate( WeaveNodeOpAuthDelegate *opAuthDelegate )
Menetapkan objek delegasi autentikasi operasional pada objek WeaveCertProvEngine.
Nonaktif
void Shutdown( void )
Matikan objek WeaveCertProvEngine yang diinisialisasi sebelumnya.
Perhatikan bahwa metode ini hanya dapat dipanggil jika metode Init() telah dipanggil sebelumnya.
StartCertificateProvisioning
WEAVE_ERROR StartCertificateProvisioning( uint8_t reqType, bool doMfrAttest )
Mulai Certificate Provisioning Protocol.
Metode ini memulai proses pengiriman pesan GetCertificateRequest ke layanan CA. Jika dan saat pesan GetCertificateResponse yang sesuai diterima, pesan tersebut akan dikirim ke aplikasi melalui peristiwa ResponseReceived API.
Jika objek Binding tidak dalam status Siap saat metode ini dipanggil, permintaan akan dibuat ke metode Binding::RequestPrepare() untuk memulai persiapan on-demand. Operasi permintaan akan menunggu hingga proses ini selesai. Setiap panggilan ke StartCertificateProvisioning() saat ada permintaan sebelumnya yang sedang diproses akan diabaikan.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Nilai yang Ditampilkan |
|
WeaveCertProvEngine
WeaveCertProvEngine( void )