Skip to content
Start free evaluation

pdcomm_opcua_server_options

Struct

Server options of the in-memory server facade (structure version 1).

typedef struct pdcomm_opcua_server_options { ... } pdcomm_opcua_server_options

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

Set struct_size to sizeof(pdcomm_opcua_server_options) and version to 1, then call pdcomm_opcua_server_options_init() for the defaults: no flags (secure endpoints only), 33 connections, 32 sessions and the application URI urn:pdcomm:opcua:server. The endpoint URL is always required.

With an identity the server advertises Basic256Sha256, Aes128_Sha256_RsaOaep and Aes256_Sha256_RsaPss endpoints in Sign and SignAndEncrypt mode; #PDCOMM_OPCUA_ALLOW_NONE adds a None endpoint. Each endpoint offers anonymous user tokens only: this facade has no user name or X.509 user authenticator.

Identity and the trusted client certificate are copied, never retained as foreign pointers.

Members

application_uri

Field

ApplicationUri, at most 4096 bytes; empty means urn:pdcomm:opcua:server.

pdcomm_opcua_bytes application_uri

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

It must match the URI in the server certificate.

certificate_der

Field

Server application instance certificate (DER, at most 64 KiB); required unless #PDCOMM_OPCUA_ALLOW_NONE is set.

pdcomm_opcua_bytes certificate_der

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

endpoint

Field

Endpoint URL advertised to clients (opc.tcp://host:port/path, at most 4096 bytes); port 0 is replaced by the actual listening port.

pdcomm_opcua_bytes endpoint

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

flags

Field

0 or #PDCOMM_OPCUA_ALLOW_NONE.

uint32_t flags

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

max_connections

Field

Concurrent secure channels: more than max_sessions and at most 1024 (default 33).

uint32_t max_connections

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

max_sessions

Field

Concurrent sessions, 1 to 1023 (default 32).

uint32_t max_sessions

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

private_key_pem

Field

Private key of that certificate (PEM, at most 64 KiB).

pdcomm_opcua_bytes private_key_pem

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

reserved

Field

Must be zero.

uint32_t reserved

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

struct_size

Field

Size of this structure in bytes as known by the caller.

uint32_t struct_size

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

trusted_client_der

Field

The one client certificate this server trusts (DER, at most 64 KiB).

pdcomm_opcua_bytes trusted_client_der

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>

version

Field

Structure version; must be 1.

uint32_t version

Declared in: #include <pdcomm/opcua/pdcomm_opcua.h>