Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

nl :: 짜다:: 프로필 :: 보안:: CertProvisioning :: WeaveCertProvEngine

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

Weave 인증서 프로비저닝 프로토콜 개체의 핵심 논리를 구현합니다.

요약

생성자와 소멸자

WeaveCertProvEngine (void)

공개 유형

@246 {
kReqType_GetInitialOpDeviceCert = 0,
kReqType_RotateOpDeviceCert = 1
}
열거 형
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
이 함수는 Certificate Provisioning Engine API 이벤트에서 호출되는 애플리케이션 콜백입니다.
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
진행중인 모든 GetCertificate 교환을 중지합니다.
GenerateGetCertificateRequest ( PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
GetCertificateRequest 메시지를 생성합니다.
GetBinding (void) const
받는 포인터를 돌려줍니다 바인딩 과 관련된 객체 WeaveCertProvEngine를 .
GetEventCallback (void) const
현재에 구성된 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의 GET 인증서 요청 메시지를 전송하기위한 준비에 개체를.
ProcessGetCertificateResponse ( PacketBuffer *msgBuf)
GetCertificateResponse 메시지를 처리합니다.
SetBinding ( Binding *binding)
void
온 바인딩 오브젝트를 설정 WeaveCertProvEngine의 개체를.
SetEventCallback ( EventCallback eventCallback)
void
온 API를 이벤트 콜백 함수로 설정 WeaveCertProvEngine의 개체를.
SetMfrAttestDelegate ( WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
상의 제조업체 증명 위임 객체를 설정 WeaveCertProvEngine의 개체를.
SetOpAuthDelegate ( WeaveNodeOpAuthDelegate *opAuthDelegate)
void
상의 운영 인증 위임 객체를 설정 WeaveCertProvEngine의 개체를.
Shutdown (void)
void
종료 A는 이전에 초기화 WeaveCertProvEngine의 개체를.
StartCertificateProvisioning (uint8_t reqType, bool doMfrAttest)
인증서 프로비저닝 프로토콜을 시작합니다.

구조체

NL :: 위브 :: 프로필 :: 보안 :: CertProvisioning :: WeaveCertProvEngine :: InEventParam

Weave Certificate Provisioning API 이벤트에 대한 입력 매개 변수입니다.

NL :: 위브 :: 프로필 :: 보안 :: 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)

이 함수는 Certificate Provisioning Engine API 이벤트에서 호출되는 애플리케이션 콜백입니다.

세부
매개 변수
[in] appState
엔진 개체와 관련된 응용 프로그램 정의 상태 정보에 대한 포인터입니다.
[in] eventType
이벤트 콜백에 의해 전달 된 이벤트 ID입니다.
[in] inParam
이벤트 콜백에 의해 전달 된 입력 이벤트 매개 변수의 참조입니다.
[in] outParam
이벤트 콜백에 의해 전달 된 출력 이벤트 매개 변수의 참조입니다.

이벤트 유형

 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 메시지를 생성합니다.

이 방법은 인코딩 된 직조 직물 GetCertificateRequest 구조 생성 TLV의 포맷.

GetCertificateRequest 메시지를 형성 할 때, 상기 방법을 통해 응용 프로그램에 대한 요청을 WeaveNodeOpAuthDelegateWeaveNodeMfrAttestDelegate 메시지의 페이로드를 준비하는 기능과 PrepareAuthorizeInfo의 API 이벤트.

세부
매개 변수
[in] msgBuf
GetCertificateRequest 메시지를 보유하는 PacketBuffer 개체에 대한 포인터입니다.
[in] reqType
인증서 요청 유형을 가져옵니다.
[in] doMfrAttest
요청에 제조업체 증명 데이터가 포함되어야하는지 여부를 나타내는 부울 플래그입니다.
반환 값
WEAVE_NO_ERROR
GetCertificateRequest가 성공적으로 생성 된 경우.

GetBinding

Binding * GetBinding(
  void
) const 

받는 포인터를 돌려줍니다 바인딩 과 관련된 객체 WeaveCertProvEngine를 .

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

현재에 구성된 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의 개체를.

초기화

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

초기화 WeaveCertProvEngine의 GET 인증서 요청 메시지를 전송하기위한 준비에 개체를.

세부
매개 변수
[in] binding
바인딩 피어 노드와 통신을 설정하는 데 사용되는 객체입니다.
[in] opAuthDelegate
노드의 운영 자격 증명을 사용하여 구성하고 서명하는 데 사용되는 운영 인증 위임 개체에 대한 포인터입니다.
[in] mfrAttestDelegate
노드의 제조업체 프로비저닝 자격 증명을 사용하여 요청을 구성하고 서명하는 데 사용되는 제조업체 증명 위임 개체에 대한 포인터입니다.
[in] eventCallback
에 의해 호출되는 함수에 대한 포인터 WeaveCertProvEngine의 응용 프로그램에 API 이벤트를 제공하는 객체입니다.
[in] appState
API 이벤트가 발생할 때마다 애플리케이션으로 다시 전달되는 애플리케이션 정의 개체에 대한 포인터입니다.

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

GetCertificateResponse 메시지를 처리합니다.

이 방법은 인코딩 된 직조 직물 구조 GetCertificateResponse 처리 TLV의 포맷.

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
)

온 API를 이벤트 콜백 함수로 설정 WeaveCertProvEngine의 개체를.

SetMfrAttestDelegate

void SetMfrAttestDelegate(
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate
)

상의 제조업체 증명 위임 객체를 설정 WeaveCertProvEngine의 개체를.

SetOpAuthDelegate

void SetOpAuthDelegate(
  WeaveNodeOpAuthDelegate *opAuthDelegate
)

상의 운영 인증 위임 객체를 설정 WeaveCertProvEngine의 개체를.

일시 휴업

void Shutdown(
  void
)

종료 A는 이전에 초기화 WeaveCertProvEngine의 개체를.

이 방법은 호출 할 수 있습니다 초기화 () 메소드가 이전에 호출 된.

StartCertificateProvisioning

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

인증서 프로비저닝 프로토콜을 시작합니다.

이 메서드는 CA 서비스에 GetCertificateRequest 메시지를 보내는 프로세스를 시작합니다. 해당 GetCertificateResponse 메시지가 수신되면 ResponseReceived API 이벤트를 통해 애플리케이션에 전달됩니다.

경우 바인딩 객체가이 메서드를 호출 할 준비 상태가 아닌, 요청이 만들어 질 것입니다 바인딩 :: RequestPrepare () 주문형 준비를 시작하는 방법. 요청 작업은이 프로세스가 완료 될 때까지 대기합니다. 에 대한 모든 호출 StartCertificateProvisioning는 () 가있는 동안 과정에서 이전 요청은 무시됩니다.

세부
매개 변수
[in] reqType
인증서 요청 유형을 가져옵니다.
[in] doMfrAttest
프로토콜에 제조업체 증명 데이터가 포함되어야하는지 여부를 나타내는 부울 플래그입니다.
반환 값
WEAVE_NO_ERROR
경우 StartCertificateProvisioning () 을 성공적으로 처리되었습니다.

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)