Legrand / Raritan / Server Technology Xerus™ JSON-RPC API
Loading...
Searching...
No Matches
Net.idl
1/* SPDX-License-Identifier: BSD-3-Clause */
2/*
3 * Copyright 2016 Raritan Inc. All rights reserved.
4 */
5
6#include <Event.idl>
7
8/**
9 * Network Configuration
10 */
11module net {
12
13 /** IPv4/IPv6 address and prefix len */
14 structure IpAddrCidr {
15 string addr; // IP address
16 int prefixLen; // Length of network prefix in the IP address
17 };
18
19 /** IPv4/IPv6 route */
20 structure IpRoute {
21 IpAddrCidr destNetAddrCidr; // Destination network address (CIDR)
22 string nextHopAddr; // Address of the next hop (empty when ifName is set)
23 string ifName; // Destination interface (empty if nextHopAddr is set)
24 };
25
26 /** Role of the node when port forwarding is enabled */
27 enumeration PortForwardingRole {
28 PRIMARY_UNIT, ///< Node is a port forwarding primary unit
29 EXPANSION_UNIT ///< Node is a port forwarding expansion unit
30 };
31
32 /** Port forwarding settings */
34 boolean enabled; ///< Controls if port forwarding is enabled
35 PortForwardingRole role; ///< The role of the node (primary unit or expansion unit)
36 string primaryUnitDownstreamIfName; ///< Primary unit downstream interface (usb: any USB iface)
37 };
38
39 /** DNS settings */
40 structure DnsSettings {
41 vector<string> serverAddrs; ///< List of domain name servers addresses (IPv4/IPv6)
42 vector<string> searchSuffixes; ///< List of domain search suffixes
43 boolean resolverPrefersIPv6; ///< Resolver should prefer IPv6 addresses
44 };
45
46 /** IP protocol specific routing settings */
48 vector<IpRoute> staticRoutes; ///< List of static routes
49 };
50
51 /** Routing settings */
52 structure RoutingSettings {
53 IpRoutingSettings ipv4; ///< IPv4 routing settings
54 IpRoutingSettings ipv6; ///< IPv6 routing settings
55 };
56
57 /** Common settings */
58 structure CommonSettings {
59 DnsSettings dns; ///< DNS settings
60 RoutingSettings routing; ///< Routing settings
61 PortForwardingSettings portForwarding; ///< Port forwarding settings
62 };
63
64 /** Port forwarding primary unit address info for an interface */
66 string ifName; ///< interface name on primary unit
67 string addr; ///< IPv4/IPv6 address on the interface
68 };
69
70 /** Port forwarding info */
72 boolean enabled; ///< \c true if port forwarding is enabled
73 boolean nodeIndexValid; ///< \c true if nodeIndex is valid
74 int nodeIndex; ///< Index of the node in the port forwarding cascade
75 boolean expansionUnitConnected; ///< \c true if this node has an expansion unit connected
76 string primaryUnitDownstreamIfName; ///< Primary unit downstream interface (usb: any USB iface)
77 ///< the first entry of each vector has the default route set (if default route is set at all)
78 vector<PortForwardingPrimaryUnitAddrInfo> primaryUnitIPv4AddrInfos; ///< Primary unit address info for IPv4
79 vector<PortForwardingPrimaryUnitAddrInfo> primaryUnitIPv6AddrInfos; ///< Primary unit address info for IPv6
80 string linkLocalIPv6Address; ///< link-local address of port forwarding interface
81 };
82
83 /** DNS info */
84 structure DnsInfo {
85 vector<string> serverAddrs; ///< List of active domain name server addresses
86 vector<string> searchSuffixes; ///< List of active domain search suffixes
87 boolean resolverPrefersIPv6; ///< Resolver should prefer IPv6 addresses
88 };
89
90 /** Routing info */
91 structure RoutingInfo {
92 vector<IpRoute> ipv4Routes; ///< List of active IPv4 routes
93 vector<IpRoute> ipv6Routes; ///< List of active IPv6 routes
94 };
95
96 /** Common info */
97 structure CommonInfo {
98 DnsInfo dns; ///< DNS info
99 RoutingInfo routing; ///< Routing info
100 PortForwardingInfo portForwarding; ///< Port forwarding info
101 };
102
103 /** IP configuration method */
104 enumeration IpConfigMethod {
105 STATIC, ///< No automatic configuration
106 DHCP, ///< Use DHCP for automatic configuration (IPv4 only)
107 AUTO ///< Use automatic configuration (IPv6 only)
108 };
109
110 /** Interface specific IP settings */
112 boolean enabled; ///< Controls if IPv4/IPv6 is enabled
113 IpConfigMethod configMethod; ///< Interface configuration method
114 IpAddrCidr staticAddrCidr; ///< Statically assigned IPv4/IPv6 address (CIDR)
115 string staticDefaultGatewayAddr; ///< Statically assigned default gateway address
116 string dhcpPreferredHostname; ///< Preferred hostname (only used with DHCP)
117 boolean stablePrivacyEnabled; ///< Enable RFC7217 stable-privacy addresses (IPv6 only)
118 };
119
120 /** Interface specific IPv4 info */
122 boolean enabled; ///< \c true if IPv4 is enabled
123 IpConfigMethod configMethod; ///< Interface configuration method
124 vector<IpAddrCidr> addrsCidr; ///< List of active IPv4 addresses with prefix length
125 string dhcpServerAddr; ///< IPv4 address of DHCP server or empty
126 string dhcpPreferredHostname; ///< Preferred hostname (only used with DHCP)
127 };
128
129 /** Interface specific IPv6 info */
131 boolean enabled; ///< \c true if IPv6 is enabled
132 IpConfigMethod configMethod; ///< Interface configuration method
133 vector<IpAddrCidr> addrsCidr; ///< List of active IPv6 addresses with prefix length
134 string dhcpServerId; ///< DHCPv6 server id or empty
135 string dhcpPreferredHostname; ///< Preferred hostname (only used with DHCP)
136 boolean raManaged; ///< "Managed" flag set in router announcements
137 boolean raOtherConf; ///< "OtherConf" flag set in router announcements
138 };
139
140 /** Interface specific settings */
142 boolean enabled; ///< Controls if interface is enabled
143 InterfaceIpSettings ipv4; ///< Interface specific IPv4 settings
144 InterfaceIpSettings ipv6; ///< Interface specific IPv6 settings
145 };
146
147 /** The interface type */
148 enumeration InterfaceType {
149 ETHERNET, ///< Ethernet interface
150 WLAN, ///< WLAN interface
151 BRIDGE ///< Bridge interface
152 };
153
154 /** Interface operational state */
155 enumeration InterfaceOpState {
156 NOT_PRESENT, ///< Interface is not present
157 DOWN, ///< Interface is down
158 NO_LINK, ///< Interface has no link
159 UP ///< Interface is up and running
160 };
161
162 /** Interface specific info */
163 structure InterfaceInfo {
164 string name; ///< Internal interface name
165 string label; ///< Interface label (used in user interfaces)
166 InterfaceType type; ///< Interface type
167 boolean enabled; ///< The dynamic enabled state
168 string controllingIfName; ///< Controlling interface (set for bridged interfaces)
169 InterfaceOpState state; ///< Operational state of the interface
170 string macAddr; ///< MAC address of the interface
171 int mtu; ///< Maximum Transfer Unit (MTU)
172 InterfaceIPv4Info ipv4; ///< Interface specific IPv4 info
173 InterfaceIPv6Info ipv6; ///< Interface specific IPv6 info
174 };
175
176 /** EAP outer authentication method */
177 enumeration EapOuterAuthMethod {
178 EAP_PEAP, ///< PEAP authentication
179 EAP_TLS ///< TLS authentication
180 };
181
182 /** EAP inner authentication method */
183 enumeration EapInnerAuthMethod {
184 INNER_EAP_MSCHAPv2, ///< MSCHAPv2 authentication
185 INNER_EAP_TLS ///< TLS authentication
186 };
187
188 /** EAP authentication status */
189 enumeration EapStatus {
190 EAP_STATUS_DISABLED, ///< EAP authentication disabled
191 EAP_STATUS_PENDING, ///< EAP authentication pending
192 EAP_STATUS_FAILED, ///< EAP authentication failed
193 EAP_STATUS_SUCCESS ///< EAP authentication succeeded
194 };
195
196 /** EAP authentication settings */
197 structure EapAuthSettings {
198 string identity; ///< EAP identity
199 string password; ///< EAP password (always empty on retrieval!)
200 boolean clearPassword; ///< Set to \c true when password should be cleared
201 string clientCertChain; ///< client certificate chain
202 string clientPrivKey; ///< client private key (always empty on retrieval!)
203 boolean clearClientPrivKey; ///< Set to \c true to clear the client private key
204 string clientPrivKeyPassword; ///< password of client private key
205 EapOuterAuthMethod outerMethod; ///< Outer authentication method
206 EapInnerAuthMethod innerMethod; ///< Inner authentication method
207 string caCertChain; ///< CA certificate chain
208 boolean forceTrustedCert; ///< Enforce trusted certificates
209 boolean allowOffTimeRangeCerts; ///< allow expired and not yet valid TLS certs
210 boolean allowNotYetValidCertsIfTimeBeforeBuild; ///< allow not yet valid TLS certs if
211 ///< the system time is before the build time
212 string authServerName; ///< Name of the RADIUS server (used to verify cert)
213 };
214
215 /** Ethernet speed */
216 enumeration EthSpeed {
217 SPEED_AUTO, ///< Use auto-negotiation to set speed
218 SPEED_MBIT_10, ///< 10 MBit/s
219 SPEED_MBIT_100, ///< 100 MBit/s
220 SPEED_MBIT_1000 ///< 1000 MBit/s (1 GBit/s)
221 };
222
223 /** Ethernet duplex mode */
224 enumeration EthDuplexMode {
225 DUPLEX_MODE_AUTO, ///< Use auto-negotiation to set duplex mode
226 DUPLEX_MODE_HALF, ///< Half duplex
227 DUPLEX_MODE_FULL ///< Full duplex
228 };
229
230 /** Ethernet authentication type */
231 enumeration EthAuthType {
232 ETH_AUTH_NONE, ///< No authentication
233 ETH_AUTH_EAP ///< 802.1x (EAP) authentication
234 };
235
236 /** Ethernet link mode */
237 structure EthLinkMode {
238 EthSpeed speed; ///< Interface speed
239 EthDuplexMode duplexMode; ///< Interface duplex mode
240 };
241
242 /** Ethernet interface settings */
243 structure EthSettings {
244 EthLinkMode linkMode; ///< Link mode
245 int mtu; ///< Maximum Transfer Unit (MTU)
246 EthAuthType authType; ///< Authentication type
247 EapAuthSettings eap; ///< EAP Settings for 802.1x authentication
248 boolean lldpEnabled; ///< \c true if LLDP is enabled
249 };
250
251 /** Ethernet interface info */
252 structure EthInfo {
253 EapStatus eapStatus; ///< \c status of EAP authentication
254 EthLinkMode linkMode; ///< Current link mode
255 boolean linkModeValid; ///< \c true if linkMode is valid
256 boolean autonegEnabled; ///< \c true if auto-negotiation is enabled
257 boolean linkDetected; ///< \c true if a link is detected
258 vector<EthLinkMode> supportedLinkModes; ///< Supported link modes
259 };
260
261 /** WLAN security protocol */
262 enumeration WlanSecProtocol {
263 WPA2 ///< WPA2 security protocol
264 };
265
266 /** WLAN authentication type */
267 enumeration WlanAuthType {
268 WLAN_AUTH_NONE, ///< No authentication
269 WLAN_AUTH_PSK, ///< Pre-shared key authentication
270 WLAN_AUTH_EAP ///< 802.1x (EAP) authentication
271 };
272
273 /** WLAN interface settings */
274 structure WlanSettings {
275 boolean enableHT; ///< Enable high throughput features (802.11n)
276 string ssid; ///< SSID of the wireless network
277 string bssid; ///< BSSID (empty for automatic AP selection)
278 int mtu; ///< Maximum Transfer Unit (MTU)
279 WlanSecProtocol secProtocol; ///< Security protocol (WPA2)
280 WlanAuthType authType; ///< Authentication type
281 string psk; ///< Pre-shared key (always empty on retrieval!)
282 boolean clearPsk; ///< Set to \c true when PSK should be cleared
283 EapAuthSettings eap; ///< EAP Settings for 802.1x authentication
284 };
285
286 /** WLAN channel width */
287 enumeration WlanChannelWidth {
288 CHANNEL_WIDTH_UNKNOWN,
289 CHANNEL_WIDTH_20_NO_HT,
290 CHANNEL_WIDTH_20,
291 CHANNEL_WIDTH_40,
292 CHANNEL_WIDTH_80,
293 CHANNEL_WIDTH_80P80,
294 CHANNEL_WIDTH_160
295 };
296
297 /** WLAN interface info */
298 structure WlanInfo {
299 boolean associated; ///< \c true if associated to an access point
300 string ssid; ///< SSID of the wireless network
301 string bssid; ///< BSSID of associated access point
302 int channel; ///< Channel number
303 WlanChannelWidth channelWidth; ///< Channel width (this is an id and no frequency!)
304 };
305
306 /** Network settings */
307 structure Settings {
308 CommonSettings common; ///< Common network settings
309 map<string, InterfaceSettings> ifMap; ///< Common interface settings
310 map<string, EthSettings> ethMap; ///< Ethernet specific interface settings
311 map<string, WlanSettings> wlanMap;///< WLAN specific interface settings
312 };
313
314 /** Network info */
315 structure Info {
316 CommonInfo common; ///< Common network info
317 map<string, InterfaceInfo> ifMap; ///< Common interface info
318 map<string, EthInfo> ethMap; ///< Ethernet specific interface info
319 map<string, WlanInfo> wlanMap;///< WLAN specific interface info
320 };
321
322 /** Mapping from application protocol id to name and transport protocol */
324 int appProtoId; ///< Application protocol id
325 string appProtoName; ///< Application protocol name
326 string transportProtoName; ///< Transport protocol name
327 };
328
329 /* ---- event definitions ---- */
330
331 /** Event that is sent when common network info has changed */
332 valueobject CommonInfoChangedEvent extends idl.Event {
333 CommonInfo commonInfo; ///< Current common network info
334 };
335
336 /** Event that is sent when common interface specific network info has changed */
337 valueobject InterfaceInfoChangedEvent extends idl.Event {
338 InterfaceInfo ifInfo; ///< Current common interface specific info
339 };
340
341 /** Event that is sent when ethernet interface specific network info has changed */
342 valueobject EthInfoChangedEvent extends idl.Event {
343 string ifName; ///< Ethernet interface name
344 string ifLabel; ///< interface label
345 EthInfo ethInfo; ///< Current ethernet interface specific info
346 };
347
348 /** Event that is sent when WLAN interface specific network info has changed */
349 valueobject WlanInfoChangedEvent extends idl.Event {
350 string ifName; ///< WLAN interface name
351 WlanInfo wlanInfo; ///< Current WLAN interface specific info
352 };
353
354 /** Event that is sent when the operational state of an interface changed */
355 valueobject LinkStateChangedEvent extends idl.Event {
356 string ifName; ///< interface name
357 string ifLabel; ///< interface label
358 InterfaceType ifType; ///< interface type
359 InterfaceOpState ifState; ///< Current operational interface state
360 };
361
362 /** Event that is sent when the presence state of a downstream port forwarding expansion unit changes */
364 boolean expansionUnitPresent; ///< \c true when an expansion unit is present
365 };
366
367 /** Network configuration interface */
368 interface Net {
369
370 /** Success code */
371 constant int SUCCESS = 0;
372
373 /** DNS parameter errors */
374 constant int ERR_DNS_TOO_MANY_SERVERS = 100;
375 constant int ERR_DNS_INVALID_SERVER = 101;
376 constant int ERR_DNS_TOO_MANY_SEARCH_SUFFIXES = 102;
377 constant int ERR_DNS_INVALID_SEARCH_SUFFIX = 103;
378
379 /** routing parameter errors */
381 constant int ERR_ROUTING_IPV6_INVALID_DFLT_GATEWAY_ADDR = 201;
382 constant int ERR_ROUTING_IPV4_INVALID_DEST_ADDR = 202;
383 constant int ERR_ROUTING_IPV6_INVALID_DEST_ADDR = 203;
384 constant int ERR_ROUTING_IPV4_INVALID_DEST_PREFIX_LEN = 204;
385 constant int ERR_ROUTING_IPV6_INVALID_DEST_PREFIX_LEN = 205;
386 constant int ERR_ROUTING_IPV4_INVALID_NEXTHOP_ADDR = 206;
387 constant int ERR_ROUTING_IPV6_INVALID_NEXTHOP_ADDR = 207;
388 constant int ERR_ROUTING_IPV4_INVALID_INTERFACE = 208;
389 constant int ERR_ROUTING_IPV6_INVALID_INTERFACE = 209;
390 constant int ERR_ROUTING_IPV4_DEST_IS_NO_NETWORK_ADDR = 210;
391 constant int ERR_ROUTING_IPV6_DEST_IS_NO_NETWORK_ADDR = 211;
392 constant int ERR_ROUTING_IPV4_DEST_IS_DUPLICATE = 212;
393 constant int ERR_ROUTING_IPV6_DEST_IS_DUPLICATE = 213;
394 constant int ERR_ROUTING_IPV4_NO_NEXTHOP_OR_INTERFACE = 214;
395 constant int ERR_ROUTING_IPV6_NO_NEXTHOP_OR_INTERFACE = 215;
396 constant int ERR_ROUTING_IPV4_NEXTHOP_AND_INTERFACE_SET = 216;
397 constant int ERR_ROUTING_IPV6_NEXTHOP_AND_INTERFACE_SET = 217;
398
399 /** port forwarding parameter errors */
401 constant int ERR_PF_NO_WORKING_PRIMARY_UNIT_UPSTREAM_INTERFACE= 301;
402 constant int ERR_PF_NOT_SUPPORTED = 302;
403
404 /** interface common parameter errors */
406 constant int ERR_IF_IPV6_INVALID_CONFIG_METHOD = 401;
407 constant int ERR_IF_IPV4_INVALID_STATIC_ADDR = 402;
408 constant int ERR_IF_IPV6_INVALID_STATIC_ADDR = 403;
409 constant int ERR_IF_IPV4_INVALID_STATIC_PREFIX_LEN = 404;
410 constant int ERR_IF_IPV6_INVALID_STATIC_PREFIX_LEN = 405;
411 constant int ERR_IF_IPV4_INVALID_DHCP_PREF_HOSTNAME = 406;
412 constant int ERR_IF_IPV6_INVALID_DHCP_PREF_HOSTNAME = 407;
413 constant int ERR_IF_EAP_INVALID_IDENTITY = 408;
414 constant int ERR_IF_EAP_INVALID_PASSWORD = 409;
415 constant int ERR_IF_EAP_INVALID_CLIENT_CERT = 410;
416 constant int ERR_IF_EAP_INVALID_CLIENT_PRIV_KEY_OR_PWD = 411;
417 constant int ERR_IF_EAP_CLIENT_CERT_PRIV_KEY_MISMATCH = 412;
418 constant int ERR_IF_EAP_INVALID_CA_CERT = 413;
419 constant int ERR_IF_EAP_CA_CERT_VERIFY_FAILED = 414; /* not used anymore */
420 constant int ERR_IF_EAP_INVALID_AUTH_SERVER_NAME = 415;
421
422 /** Ethernet interface parameter errors */
424 constant int ERR_ETH_IF_INVALID_MTU = 501;
425
426 /** WLAN interface parameter errors */
427 constant int ERR_WLAN_IF_INVALID_SSID = 600;
428 constant int ERR_WLAN_IF_INVALID_BSSID = 601;
429 constant int ERR_WLAN_IF_INVALID_PSK = 602;
430 constant int ERR_WLAN_IF_INVALID_MTU = 603;
431 constant int ERR_WLAN_IF_NOT_SUPPORTED = 604;
432
433 /** BRIDGE interface parameter errors */
434 constant int ERR_BRIDGE_IF_NOT_SUPPORTED = 700;
435
436 /**
437 * Retrieve information about all network interfaces.
438 *
439 * @return Current network information
440 */
442
443 /**
444 * Retrieve the current network interface settings.
445 *
446 * @return Settings for all supported network interfaces
447 */
449
450 /**
451 * Update the network interface settings.
452 *
453 * @param settings New network settings
454 *
455 * @return 0 if OK
456 * @return non-zero in case of error (see error constants above)
457 */
458 int setSettings(in Settings settings);
459
460 /**
461 * Retrieve the list of port forwarding protocol mappings.
462 *
463 * @return Port forwarding protocol mappings
464 */
465 vector<PortForwardingProtocolMapping> getPortForwardingProtocolMappings();
466
467 };
468
469}
Network configuration interface.
Definition Net.idl:368
Settings getSettings()
Retrieve the current network interface settings.
constant int ERR_WLAN_IF_INVALID_SSID
WLAN interface parameter errors.
Definition Net.idl:427
constant int SUCCESS
Success code.
Definition Net.idl:371
constant int ERR_BRIDGE_IF_NOT_SUPPORTED
BRIDGE interface parameter errors.
Definition Net.idl:434
vector< PortForwardingProtocolMapping > getPortForwardingProtocolMappings()
Retrieve the list of port forwarding protocol mappings.
constant int ERR_ETH_IF_UNSUPPORTED_LINKMODE
Ethernet interface parameter errors.
Definition Net.idl:423
constant int ERR_ROUTING_IPV4_INVALID_DFLT_GATEWAY_ADDR
routing parameter errors
Definition Net.idl:380
constant int ERR_IF_IPV4_INVALID_CONFIG_METHOD
interface common parameter errors
Definition Net.idl:405
constant int ERR_DNS_TOO_MANY_SERVERS
DNS parameter errors.
Definition Net.idl:374
int setSettings(in Settings settings)
Update the network interface settings.
constant int ERR_PF_INVALID_PRIMARY_UNIT_DOWNSTREAM_INTERFACE
port forwarding parameter errors
Definition Net.idl:400
Info getInfo()
Retrieve information about all network interfaces.
Basic IDL definitions.
Definition Event.idl:10
Network Configuration.
EthAuthType
Ethernet authentication type.
Definition Net.idl:231
@ ETH_AUTH_NONE
No authentication.
Definition Net.idl:232
@ ETH_AUTH_EAP
802::1x (EAP) authentication
Definition Net.idl:233
EapStatus
EAP authentication status.
Definition Net.idl:189
@ EAP_STATUS_FAILED
EAP authentication failed.
Definition Net.idl:192
@ EAP_STATUS_PENDING
EAP authentication pending.
Definition Net.idl:191
@ EAP_STATUS_SUCCESS
EAP authentication succeeded.
Definition Net.idl:193
@ EAP_STATUS_DISABLED
EAP authentication disabled.
Definition Net.idl:190
IpConfigMethod
IP configuration method.
Definition Net.idl:104
@ STATIC
No automatic configuration.
Definition Net.idl:105
@ DHCP
Use DHCP for automatic configuration (IPv4 only)
Definition Net.idl:106
@ AUTO
Use automatic configuration (IPv6 only)
Definition Net.idl:107
EthDuplexMode
Ethernet duplex mode.
Definition Net.idl:224
@ DUPLEX_MODE_AUTO
Use auto-negotiation to set duplex mode.
Definition Net.idl:225
@ DUPLEX_MODE_FULL
Full duplex.
Definition Net.idl:227
@ DUPLEX_MODE_HALF
Half duplex.
Definition Net.idl:226
WlanSecProtocol
WLAN security protocol.
Definition Net.idl:262
@ WPA2
WPA2 security protocol.
Definition Net.idl:263
EthSpeed
Ethernet speed.
Definition Net.idl:216
@ SPEED_MBIT_10
10 MBit/s
Definition Net.idl:218
@ SPEED_MBIT_100
100 MBit/s
Definition Net.idl:219
@ SPEED_AUTO
Use auto-negotiation to set speed.
Definition Net.idl:217
@ SPEED_MBIT_1000
1000 MBit/s (1 GBit/s)
Definition Net.idl:220
PortForwardingRole
Role of the node when port forwarding is enabled.
Definition Net.idl:27
@ PRIMARY_UNIT
Node is a port forwarding primary unit.
Definition Net.idl:28
@ EXPANSION_UNIT
Node is a port forwarding expansion unit.
Definition Net.idl:29
WlanChannelWidth
WLAN channel width.
Definition Net.idl:287
WlanAuthType
WLAN authentication type.
Definition Net.idl:267
@ WLAN_AUTH_NONE
No authentication.
Definition Net.idl:268
@ WLAN_AUTH_EAP
802::1x (EAP) authentication
Definition Net.idl:270
@ WLAN_AUTH_PSK
Pre-shared key authentication.
Definition Net.idl:269
InterfaceOpState
Interface operational state.
Definition Net.idl:155
@ UP
Interface is up and running.
Definition Net.idl:159
@ NO_LINK
Interface has no link.
Definition Net.idl:158
@ NOT_PRESENT
Interface is not present.
Definition Net.idl:156
@ DOWN
Interface is down.
Definition Net.idl:157
EapInnerAuthMethod
EAP inner authentication method.
Definition Net.idl:183
@ INNER_EAP_TLS
TLS authentication.
Definition Net.idl:185
@ INNER_EAP_MSCHAPv2
MSCHAPv2 authentication.
Definition Net.idl:184
InterfaceType
The interface type.
Definition Net.idl:148
@ BRIDGE
Bridge interface.
Definition Net.idl:151
@ ETHERNET
Ethernet interface.
Definition Net.idl:149
@ WLAN
WLAN interface.
Definition Net.idl:150
EapOuterAuthMethod
EAP outer authentication method.
Definition Net.idl:177
@ EAP_PEAP
PEAP authentication.
Definition Net.idl:178
@ EAP_TLS
TLS authentication.
Definition Net.idl:179
Common base for all events.
Definition Event.idl:13
Event that is sent when common network info has changed.
Definition Net.idl:332
CommonInfo commonInfo
Current common network info.
Definition Net.idl:333
Common info.
Definition Net.idl:97
PortForwardingInfo portForwarding
Port forwarding info.
Definition Net.idl:100
RoutingInfo routing
Routing info.
Definition Net.idl:99
DnsInfo dns
DNS info.
Definition Net.idl:98
Common settings.
Definition Net.idl:58
DnsSettings dns
DNS settings.
Definition Net.idl:59
PortForwardingSettings portForwarding
Port forwarding settings.
Definition Net.idl:61
RoutingSettings routing
Routing settings.
Definition Net.idl:60
DNS info.
Definition Net.idl:84
vector< string > serverAddrs
List of active domain name server addresses.
Definition Net.idl:85
vector< string > searchSuffixes
List of active domain search suffixes.
Definition Net.idl:86
boolean resolverPrefersIPv6
Resolver should prefer IPv6 addresses.
Definition Net.idl:87
DNS settings.
Definition Net.idl:40
boolean resolverPrefersIPv6
Resolver should prefer IPv6 addresses.
Definition Net.idl:43
vector< string > serverAddrs
List of domain name servers addresses (IPv4/IPv6)
Definition Net.idl:41
vector< string > searchSuffixes
List of domain search suffixes.
Definition Net.idl:42
EAP authentication settings.
Definition Net.idl:197
string authServerName
Name of the RADIUS server (used to verify cert)
Definition Net.idl:212
string clientPrivKeyPassword
password of client private key
Definition Net.idl:204
string clientCertChain
client certificate chain
Definition Net.idl:201
boolean allowOffTimeRangeCerts
allow expired and not yet valid TLS certs
Definition Net.idl:209
boolean allowNotYetValidCertsIfTimeBeforeBuild
allow not yet valid TLS certs if
Definition Net.idl:210
EapInnerAuthMethod innerMethod
Inner authentication method.
Definition Net.idl:206
string password
EAP password (always empty on retrieval!)
Definition Net.idl:199
string identity
EAP identity.
Definition Net.idl:198
boolean clearClientPrivKey
Set to true to clear the client private key.
Definition Net.idl:203
EapOuterAuthMethod outerMethod
Outer authentication method.
Definition Net.idl:205
boolean clearPassword
Set to true when password should be cleared.
Definition Net.idl:200
string caCertChain
CA certificate chain.
Definition Net.idl:207
boolean forceTrustedCert
Enforce trusted certificates.
Definition Net.idl:208
string clientPrivKey
client private key (always empty on retrieval!)
Definition Net.idl:202
Event that is sent when ethernet interface specific network info has changed.
Definition Net.idl:342
string ifName
Ethernet interface name.
Definition Net.idl:343
string ifLabel
interface label
Definition Net.idl:344
EthInfo ethInfo
Current ethernet interface specific info.
Definition Net.idl:345
Ethernet interface info.
Definition Net.idl:252
boolean autonegEnabled
true if auto-negotiation is enabled
Definition Net.idl:256
EthLinkMode linkMode
Current link mode.
Definition Net.idl:254
boolean linkModeValid
true if linkMode is valid
Definition Net.idl:255
boolean linkDetected
true if a link is detected
Definition Net.idl:257
vector< EthLinkMode > supportedLinkModes
Supported link modes.
Definition Net.idl:258
EapStatus eapStatus
status of EAP authentication
Definition Net.idl:253
Ethernet link mode.
Definition Net.idl:237
EthDuplexMode duplexMode
Interface duplex mode.
Definition Net.idl:239
EthSpeed speed
Interface speed.
Definition Net.idl:238
Ethernet interface settings.
Definition Net.idl:243
boolean lldpEnabled
true if LLDP is enabled
Definition Net.idl:248
EapAuthSettings eap
EAP Settings for 802::1x authentication.
Definition Net.idl:247
EthLinkMode linkMode
Link mode.
Definition Net.idl:244
int mtu
Maximum Transfer Unit (MTU)
Definition Net.idl:245
EthAuthType authType
Authentication type.
Definition Net.idl:246
Network info.
Definition Net.idl:315
CommonInfo common
Common network info.
Definition Net.idl:316
map< string, EthInfo > ethMap
Ethernet specific interface info.
Definition Net.idl:318
map< string, InterfaceInfo > ifMap
Common interface info.
Definition Net.idl:317
map< string, WlanInfo > wlanMap
WLAN specific interface info.
Definition Net.idl:319
Interface specific IPv4 info.
Definition Net.idl:121
boolean enabled
true if IPv4 is enabled
Definition Net.idl:122
string dhcpServerAddr
IPv4 address of DHCP server or empty.
Definition Net.idl:125
string dhcpPreferredHostname
Preferred hostname (only used with DHCP)
Definition Net.idl:126
IpConfigMethod configMethod
Interface configuration method.
Definition Net.idl:123
vector< IpAddrCidr > addrsCidr
List of active IPv4 addresses with prefix length.
Definition Net.idl:124
Interface specific IPv6 info.
Definition Net.idl:130
IpConfigMethod configMethod
Interface configuration method.
Definition Net.idl:132
string dhcpServerId
DHCPv6 server id or empty.
Definition Net.idl:134
boolean raManaged
"Managed" flag set in router announcements
Definition Net.idl:136
vector< IpAddrCidr > addrsCidr
List of active IPv6 addresses with prefix length.
Definition Net.idl:133
string dhcpPreferredHostname
Preferred hostname (only used with DHCP)
Definition Net.idl:135
boolean enabled
true if IPv6 is enabled
Definition Net.idl:131
boolean raOtherConf
"OtherConf" flag set in router announcements
Definition Net.idl:137
Event that is sent when common interface specific network info has changed.
Definition Net.idl:337
InterfaceInfo ifInfo
Current common interface specific info.
Definition Net.idl:338
Interface specific info.
Definition Net.idl:163
string name
Internal interface name.
Definition Net.idl:164
InterfaceType type
Interface type.
Definition Net.idl:166
string label
Interface label (used in user interfaces)
Definition Net.idl:165
string macAddr
MAC address of the interface.
Definition Net.idl:170
string controllingIfName
Controlling interface (set for bridged interfaces)
Definition Net.idl:168
InterfaceIPv6Info ipv6
Interface specific IPv6 info.
Definition Net.idl:173
int mtu
Maximum Transfer Unit (MTU)
Definition Net.idl:171
InterfaceOpState state
Operational state of the interface.
Definition Net.idl:169
InterfaceIPv4Info ipv4
Interface specific IPv4 info.
Definition Net.idl:172
boolean enabled
The dynamic enabled state.
Definition Net.idl:167
Interface specific IP settings.
Definition Net.idl:111
string dhcpPreferredHostname
Preferred hostname (only used with DHCP)
Definition Net.idl:116
boolean enabled
Controls if IPv4/IPv6 is enabled.
Definition Net.idl:112
IpConfigMethod configMethod
Interface configuration method.
Definition Net.idl:113
boolean stablePrivacyEnabled
Enable RFC7217 stable-privacy addresses (IPv6 only)
Definition Net.idl:117
string staticDefaultGatewayAddr
Statically assigned default gateway address.
Definition Net.idl:115
IpAddrCidr staticAddrCidr
Statically assigned IPv4/IPv6 address (CIDR)
Definition Net.idl:114
Interface specific settings.
Definition Net.idl:141
boolean enabled
Controls if interface is enabled.
Definition Net.idl:142
InterfaceIpSettings ipv6
Interface specific IPv6 settings.
Definition Net.idl:144
InterfaceIpSettings ipv4
Interface specific IPv4 settings.
Definition Net.idl:143
IPv4/IPv6 address and prefix len.
Definition Net.idl:14
IPv4/IPv6 route.
Definition Net.idl:20
IP protocol specific routing settings.
Definition Net.idl:47
vector< IpRoute > staticRoutes
List of static routes.
Definition Net.idl:48
Event that is sent when the operational state of an interface changed.
Definition Net.idl:355
string ifLabel
interface label
Definition Net.idl:357
InterfaceOpState ifState
Current operational interface state.
Definition Net.idl:359
string ifName
interface name
Definition Net.idl:356
InterfaceType ifType
interface type
Definition Net.idl:358
Event that is sent when the presence state of a downstream port forwarding expansion unit changes.
Definition Net.idl:363
boolean expansionUnitPresent
true when an expansion unit is present
Definition Net.idl:364
Port forwarding info.
Definition Net.idl:71
string primaryUnitDownstreamIfName
Primary unit downstream interface (usb: any USB iface)
Definition Net.idl:76
vector< PortForwardingPrimaryUnitAddrInfo > primaryUnitIPv6AddrInfos
Primary unit address info for IPv6.
Definition Net.idl:79
boolean nodeIndexValid
true if nodeIndex is valid
Definition Net.idl:73
vector< PortForwardingPrimaryUnitAddrInfo > primaryUnitIPv4AddrInfos
Primary unit address info for IPv4.
Definition Net.idl:78
string linkLocalIPv6Address
link-local address of port forwarding interface
Definition Net.idl:80
boolean enabled
true if port forwarding is enabled
Definition Net.idl:72
boolean expansionUnitConnected
true if this node has an expansion unit connected
Definition Net.idl:75
int nodeIndex
Index of the node in the port forwarding cascade.
Definition Net.idl:74
Port forwarding primary unit address info for an interface.
Definition Net.idl:65
string addr
IPv4/IPv6 address on the interface.
Definition Net.idl:67
string ifName
interface name on primary unit
Definition Net.idl:66
Mapping from application protocol id to name and transport protocol.
Definition Net.idl:323
string transportProtoName
Transport protocol name.
Definition Net.idl:326
string appProtoName
Application protocol name.
Definition Net.idl:325
int appProtoId
Application protocol id.
Definition Net.idl:324
Port forwarding settings.
Definition Net.idl:33
boolean enabled
Controls if port forwarding is enabled.
Definition Net.idl:34
PortForwardingRole role
The role of the node (primary unit or expansion unit)
Definition Net.idl:35
string primaryUnitDownstreamIfName
Primary unit downstream interface (usb: any USB iface)
Definition Net.idl:36
Routing info.
Definition Net.idl:91
vector< IpRoute > ipv6Routes
List of active IPv6 routes.
Definition Net.idl:93
vector< IpRoute > ipv4Routes
List of active IPv4 routes.
Definition Net.idl:92
Routing settings.
Definition Net.idl:52
IpRoutingSettings ipv4
IPv4 routing settings.
Definition Net.idl:53
IpRoutingSettings ipv6
IPv6 routing settings.
Definition Net.idl:54
Network settings.
Definition Net.idl:307
map< string, WlanSettings > wlanMap
WLAN specific interface settings.
Definition Net.idl:311
map< string, InterfaceSettings > ifMap
Common interface settings.
Definition Net.idl:309
map< string, EthSettings > ethMap
Ethernet specific interface settings.
Definition Net.idl:310
CommonSettings common
Common network settings.
Definition Net.idl:308
Event that is sent when WLAN interface specific network info has changed.
Definition Net.idl:349
WlanInfo wlanInfo
Current WLAN interface specific info.
Definition Net.idl:351
string ifName
WLAN interface name.
Definition Net.idl:350
WLAN interface info.
Definition Net.idl:298
boolean associated
true if associated to an access point
Definition Net.idl:299
string ssid
SSID of the wireless network.
Definition Net.idl:300
int channel
Channel number.
Definition Net.idl:302
WlanChannelWidth channelWidth
Channel width (this is an id and no frequency!)
Definition Net.idl:303
string bssid
BSSID of associated access point.
Definition Net.idl:301
WLAN interface settings.
Definition Net.idl:274
WlanSecProtocol secProtocol
Security protocol (WPA2)
Definition Net.idl:279
string psk
Pre-shared key (always empty on retrieval!)
Definition Net.idl:281
string ssid
SSID of the wireless network.
Definition Net.idl:276
EapAuthSettings eap
EAP Settings for 802::1x authentication.
Definition Net.idl:283
int mtu
Maximum Transfer Unit (MTU)
Definition Net.idl:278
WlanAuthType authType
Authentication type.
Definition Net.idl:280
string bssid
BSSID (empty for automatic AP selection)
Definition Net.idl:277
boolean enableHT
Enable high throughput features (802::11n)
Definition Net.idl:275
boolean clearPsk
Set to true when PSK should be cleared.
Definition Net.idl:282