Crate zenoh_config

source ·
Expand description

Configuration to pass to zenoh::open() and zenoh::scout() functions and associated constants.

Modules

Constants and helpers for zenoh whatami flags.

Macros

Structs

The main configuration structure for Zenoh.
A String that respects the EndPoint canon form: <locator>#<config>, such that <locator> is a valid Locator <config> is of the form <key1>=<value1>;...;<keyN>=<valueN> where keys are alphabetically sorted.
A String that respects the Locator canon form: <proto>/<address>?<metadata>, such that <metadata> is of the form <key1>=<value1>;...;<keyN>=<valueN> where keys are alphabetically sorted.
This part of the configuration is highly dynamic (any serde_json::Value may be put in there), but should follow this scheme:
The global unique id of a zenoh peer.

Enums

Constants

Indicates if data messages should be timestamped. String key : "add_timestamp". Accepted values : "true", "false". Default value : "false".
The default RSA key size. String key : "auth_rsa_key_size". Accepted values : <unsigned integer>.
The list of known RSA public keys. String key : "auth_rsa_known_keys_file". Accepted values : <file path>.
The private RSA key. String key : "auth_rsa_private_key_pem". Accepted values : <file path>.
The private RSA key. String key : "auth_rsa_private_key_pem". Accepted values : <RSA key in PEM format>.
The public RSA key. String key : "auth_rsa_public_key_pem". Accepted values : <file path>.
The public RSA key. String key : "auth_rsa_public_key_pem". Accepted values : <RSA key in PEM format>.
"auto"
Configures the batch size. String key : "batch_size". Accepted values : <unsigned 16-bit integer>. Default value : 65535.
The locator of a peer to connect to. String key : "connect". Accepted values : <endpoint> (ex: "tcp/10.10.10.10:7447"). Default value : None. Multiple values accepted.
Configures the maximum size in bytes of the defragmentation buffer at receiving side. Messages that have been fragmented and that are larger than the configured size will be dropped. String key : "defrag_buff_size". Accepted values : <unsigned integer>. Default value : 1073741824 (1GiB).
"false"
Configures the link keep alive expressed in milliseconds. String key : "join_interval". Accepted values : <unsigned integer>. Default value : 2500.
Configures the number of keep-alive messages in a link lease duration. String key : "link_keep_alive". Accepted values : <unsigned integer>. Default value : 4 (2.5 seconds).
Configures the link lease expressed in milliseconds. String key : "link_lease". Accepted values : <unsigned integer>. Default value : 10000 (10 seconds).
Configures the buffer size in bytes at receiving side for each link. String key : "link_rx_buff_size". Accepted values : <unsigned integer>. Default value : 65535 (64KiB).
Indicates if the link state protocol should run. String key : "link_state". Accepted values : "true", "false". Default value : "true".
A locator to listen on. String key : "listen". Accepted values : <endpoint> (ex: "tcp/10.10.10.10:7447"). Default value : None. Multiple values accepted.
Configures the maximum number of inbound links per open session. String key : "max_links". Accepted values : <unsigned integer>. Default value : 1.
Configures the maximum number of simultaneous open unicast sessions. String key : "max_sessions_unicast". Accepted values : <unsigned integer>. Default value : 1024.
Configures the maximum number of simultaneous open unicast sessions. String key : "max_sessions_unicast". Accepted values : <unsigned integer>. Default value : 1024.
The library mode. String key : "mode". Accepted values : "peer", "client". Default value : "peer".
The network interface to use for multicast scouting. String key : "multicast_interface". Accepted values : "auto", <ip address>, <interface name>. Default value : "auto".
The multicast IPv4 address and ports to use for multicast scouting. String key : "multicast_ipv4_address". Accepted values : <ipv4 address>:<port>. Default value : "224.0.0.224:7446".
The multicast IPv6 address and ports to use for multicast scouting. String key : "multicast_ipv6_address". Accepted values : <ipv6 address>:<port>. Default value : "[ff24::224]:7446".
Activates/Desactivates multicast scouting. String key : "multicast_scouting". Accepted values : "true", "false". Default value : "true".
Configures the number of open session that can be in pending state. String key : "open_pending". Accepted values : <unsigned integer>. Default value : 1024.
Configures the timeout in milliseconds when opening a link. String key : "open_timeout". Accepted values : <unsigned integer>. Default value : 10000.
The password to use for authentication. String key : "password". Accepted values : <string>.
Indicates if peers should connect to each other when they discover each other (through multicast or gossip discovery). String key : "peers_autoconnect". Accepted values : "true", "false". Default value : "true".
Configures the peer ID. String key : "peer_id". Accepted values : <UUID>.
Configures the QoS support. String key : "qos". Accepted values : "true", "false". Default value : "true".
The default timeout to apply to queries in milliseconds. String key : "queries_default_timeout". Accepted values : <unsigned integer>. Default value : 10000.
Indicates if routers should connect to each other when they discover each other through gossip discovery. String key : "routers_autoconnect_gossip". Accepted values : "true", "false". Default value : "false".
Indicates if routers should connect to each other when they discover each other through multicast. String key : "routers_autoconnect_multicast". Accepted values : "true", "false". Default value : "false".
In peer mode, the period dedicated to scouting first remote peers before doing anything else. String key : "scouting_delay". Accepted values : <float in seconds>. Default value : "0.2".
In client mode, the period dedicated to scouting a router before failing. String key : "scouting_timeout". Accepted values : <float in seconds>. Default value : "3.0".
Configures the sequence number resolution. String key : "seq_num_resolution". Accepted values : <unsigned integer>. Default value : 268435456 (2^28).
Indicates if the shared-memory features should be used. String key : "shm". Accepted values : "true", "false". Default value : "true".
The file path containing the TLS server certificate. String key : "tls_private_key". Accepted values : "true", "false". Default value : "false".
The file path containing the TLS server certificate. String key : "tls_client_private_key". Accepted values : <file path>. Default value : None.
The file path containing the TLS server private key. String key : "tls_client_private_key". Accepted values : <file path>. Default value : None.
The file path containing the TLS root CA certificate. String key : "tls_root_ca_certificate". Accepted values : <file path>. Default value : None.
The file path containing the TLS server certificate. String key : "tls_server_certificate". Accepted values : <file path>. Default value : None.
The file path containing the TLS server private key. String key : "tls_server_private_key". Accepted values : <file path>. Default value : None.
"true"
The user name to use for authentication. String key : "user". Accepted values : <string>.
The file path containing the user password dictionary. String key : "user_password_dictionary". Accepted values : <file path>.
Configures the zenoh version. String key : "version". Accepted values : <unsigned integer>.

Traits

Functions

Creates a default 'client' mode zenoh net Session configuration.
Creates a default zenoh net Session configuration (equivalent to peer).
Creates an empty zenoh net Session configuration.
Creates a default 'peer' mode zenoh net Session configuration.

Type Definitions