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