Skip to main content

Crate zerodds_opcua_server

Crate zerodds_opcua_server 

Source
Expand description

Native OPC-UA Client/Server (OPC Foundation Part 4 — Services) on top of the SecureChannel/UACP transport ([zerodds-opcua-uacp]).

Crate zerodds-opcua-server. Safety classification: STANDARD.

This is the request/response counterpart to the native UADP PubSub stack ([zerodds-opcua-pubsub]) — completing OPC-UA the same way ZeroDDS ships full CORBA/MQTT/AMQP stacks. It provides:

  • services — the service messages: Session lifecycle (CreateSession / ActivateSession / CloseSession) plus the Read, Write and Call service sets.
  • address_space — a small in-memory AddressSpace (node values + method handlers) the server serves.
  • server — an server::Server that runs the Hello→OpenSecureChannel→ Session→service handshake and dispatches services against the AddressSpace.
  • client — an client::Client that drives the same handshake and calls services.

SecurityMode None is implemented end to end; the secured SecurityPolicies (crypto feature of zerodds-opcua-uacp) layer on top.

Re-exports§

pub use address_space::AddressSpace;
pub use address_space::MethodOutcome;
pub use client::Client;
pub use server::Server;

Modules§

address_space
A small in-memory OPC-UA AddressSpace the crate::server::Server serves: node Value attributes (for the Read service) and method handlers (for the Call service).
client
The OPC-UA Client: drives the Hello → OpenSecureChannel → CreateSession → ActivateSession handshake and calls the Read / Call services over a Transport (SecurityMode None).
server
The OPC-UA Server: a request-driven state machine that runs the Hello → OpenSecureChannel → Session handshake and dispatches the Read and Call services against an AddressSpace (SecurityMode None).
services
OPC-UA service messages (Part 4 §5): Session lifecycle (CreateSession / ActivateSession / CloseSession) plus the Read and Call service sets, with the ServiceRequest / ServiceResponse dispatch enums.