pdcomm_opcua_client_options
구조체
클라이언트 연결 옵션입니다(구조체 버전 1).
typedef struct pdcomm_opcua_client_options { ... } pdcomm_opcua_client_optionsstruct_size를 sizeof(pdcomm_opcua_client_options)로, version을 1로 설정한 뒤 pdcomm_opcua_client_options_init()을 호출하면 기본값이 채워집니다. 기본값은 #PDCOMM_OPCUA_AES256SHA256RSAPSS와 #PDCOMM_OPCUA_SIGN_AND_ENCRYPT, 10000 ms 시간 초과, 플래그 없음, 애플리케이션 URI urn:pdcomm:opcua:client, 빈 인증서입니다.
아무것도 자동으로 신뢰하지 않습니다. 보안 연결에는 클라이언트의 애플리케이션 인스턴스 인증서와 키, 그리고 명시적 신뢰 앵커(trust anchor)인 서버 인증서가 필요합니다. 모든 바이트 범위는 pdcomm_opcua_client_connect() 중에만 읽고 복사합니다.
더 새로운 헤더의 더 큰 struct_size는 받아들이며, 그 뒷부분은 변경하지 않습니다. 더 작은 크기나 다른 버전은 거부합니다.
멤버
application_uri
필드
ApplicationUri이며 최대 4096바이트입니다. 비어 있으면 urn:pdcomm:opcua:client를 뜻합니다.
pdcomm_opcua_bytes application_uri클라이언트 인증서의 URI와 일치해야 합니다.
certificate_der
필드
클라이언트 애플리케이션 인스턴스 인증서입니다(DER, 최대 64 KiB). 보안 정책(security policy)이 None이 아니면 필요합니다.
pdcomm_opcua_bytes certificate_derflags
필드
::pdcomm_opcua_option_flags 값을 비트 OR한 값입니다.
uint32_t flagsmode
필드
요청할 ::pdcomm_opcua_security_mode 값입니다.
uint32_t modepolicy
필드
요청할 ::pdcomm_opcua_policy 값입니다.
uint32_t policyprivate_key_pem
필드
그 인증서의 개인 키입니다(PEM, 최대 64 KiB).
pdcomm_opcua_bytes private_key_pem연결 중에 복사되므로, 그 뒤에는 호출자의 사본을 지웁니다.
struct_size
필드
호출자가 알고 있는 이 구조체의 크기(바이트)입니다.
uint32_t struct_sizetimeout_ms
필드
각 네트워크 교환과 응답을 기다리는 각 요청의 시간 초과(timeout)이며, 1~300000 ms입니다.
uint32_t timeout_mstrusted_server_der
필드
신뢰할 서버 인증서입니다(DER, 최대 64 KiB). 이 클라이언트의 유일한 신뢰 앵커(trust anchor)입니다.
pdcomm_opcua_bytes trusted_server_derversion
필드
구조체 버전입니다. 1이어야 합니다.
uint32_t version