Skip to main content

Module handler

Module handler 

Source
Expand description

PVA protocol handler — the core TCP connection processor.

handle_connection uses a SourceRegistry to resolve PV names across multiple registered sources, serving PVs over the EPICS PVAccess protocol.

Structs§

ServerState
Shared server state that is passed to every connection handler.

Enums§

PvListMode
Controls how the server exposes its PV directory.

Functions§

bind_udp_search_socket
Bind the fixed UDP search port with SO_REUSEADDR (and SO_REUSEPORT on Unix) so other local PVA consumers such as p4p can also listen on the same well-known port. On macOS in particular, a plain UdpSocket::bind(5076) prevents any subsequent binder from joining the port, which broke co-located clients.
collect_visible_pv_names
dump_hex_packet
handle_connection
Handle a single PVA TCP connection.
infer_udp_response_ip
is_pattern_query
is_pvlist_virtual_pv
is_server_rpc_pv
is_virtual_event_pv
rand_guid
run_tcp_server
Accept TCP connections and spawn a handler for each.
run_udp_search
Run the UDP search responder.
search_reply_target
validate_encoded_packet
virtual_event_nt
virtual_pvlist_nt
wildcard_match