Open Ethernet Networking (OpEN) API Guide and Reference Manual  3.6.0.3
Data Structures | Macros | Typedefs | Enumerations | Functions
Base Services [OPENAPI_COMMON]

Data Structures

struct  open_buffdesc
 
struct  open_in6_addr_s
 Hash Mode names. More...
 
struct  open_inet_addr_s
 
struct  open_inet_pfx_s
 
struct  open_revision_data_t
 
struct  open_USP_t
 
struct  openapiClientHandle_s
 
struct  openapiEventList_t
 

Macros

#define OPEN_CLIENT_INSTANCE_FIRST   1
 
#define OPEN_INTF_NAME_MAX_LENGTH   60
 
#define OPEN_IP_ADDR_DISP_LENGTH   46
 
#define OPEN_IP_ADDR_LENGTH   16
 
#define OPEN_IS_ADDR_EQUAL(xaddr, yaddr)
 
#define OPEN_MAC_ADDR_LEN   6
 
#define OPEN_MIN_U64_STR_BUFFER_SIZE   21
 20 chars + terminating nul
 
#define OPEN_PACKED_STRUCT   typedef struct
 
#define OPEN_REGISTRATION_SERVICE_USERAPPS   100001 /* all user-provided applications */
 
#define OPENAPI_PROTOCOL_HEX_ARP   0x0806
 HEX code for the ARP protocol. More...
 
#define OPENAPI_PROTOCOL_HEX_IP   0x0800
 OpEN uses these defines to define hex codes of the protocols. More...
 
#define OPENAPI_PROTOCOL_HEX_IPX   0x8137
 HEX code for the IPX protocol. More...
 
#define OPENAPI_PROTOCOL_HEX_MAX   0xFFFF
 Maximim HEX code of the protocol. More...
 
#define OPENAPI_PROTOCOL_HEX_MIN   0x0600
 Minumum HEX code of the protocol. More...
 
#define OPENAPI_VER_BUFF_MAX_SIZE   128
 
#define OPENAPI_VER_BUFF_MAX_SIZE   128
 

Typedefs

typedef struct open_in6_addr_s open_in6_addr_t
 Hash Mode names.
 
typedef struct open_inet_addr_s open_inet_addr_t
 
typedef struct open_inet_pfx_s open_inet_pfx_t
 
typedef struct openapiClientHandle_s openapiClientHandle_t
 

Enumerations

enum  OPEN_ACCESS_LINE_t { OPEN_ACCESS_LINE_UNKNOWN = 0, OPEN_ACCESS_LINE_CONSOLE = 1, OPEN_ACCESS_LINE_TELNET = 2, OPEN_ACCESS_LINE_SSH = 3 }
 
enum  OPEN_ACTION_t { OPEN_ACTION_ADD = 0, OPEN_ACTION_DELETE = 1 }
 OPEN uses these enumerators to indicate the interface types. More...
 
enum  OPEN_AF_t { OPEN_AF_NONE = 0, OPEN_AF_INET = 1, OPEN_AF_INET6 = 2 }
 OPEN uses these enumerators to indicate address family, IPV4 or IPV6. More...
 
enum  OPEN_AFX_t { OPEN_AFX_IP4 = 0, OPEN_AFX_IP6 = 1 }
 OPEN uses these enumerators to indicate BGP address family index of routes or policy for IPV4 or IPV6. More...
 
enum  OPEN_BOOL_t { OPEN_FALSE = 0, OPEN_TRUE = 1 }
 OPEN uses these enumerators to indicate true or false for a given config or status parameter. More...
 
enum  OPEN_CONTROL_t { OPEN_DISABLE = 0, OPEN_ENABLE = 1 }
 OPEN uses these enumerators to indicate enable or disable for a given config or status parameter. More...
 
enum  OPEN_DOT1Q_ACCEPT_FRAME_TYPE_t { OPEN_DOT1Q_ADMIT_ALL = 1, OPEN_DOT1Q_ADMIN_ONLY_VLAN_TAGGED = 2, OPEN_DOT1Q_ADMIN_ONLY_VLAN_UNTAGGED = 3 }
 OPEN uses these enumerators to indicate the types of frames that may be received on this port. More...
 
enum  open_error_t {
  OPEN_E_NONE = 0, OPEN_E_RPC = -20, OPEN_E_INTERNAL = -21, OPEN_E_PARAM = -22,
  OPEN_E_FULL = -23, OPEN_E_EXISTS = -24, OPEN_E_TIMEOUT = -25, OPEN_E_FAIL = -26,
  OPEN_E_DISABLED = -27, OPEN_E_UNAVAIL = -28, OPEN_E_NOT_FOUND = -29, OPEN_E_EMPTY = -30,
  OPEN_E_ERROR = -31
}
 OPEN uses these enumerators to indicate the error codes. More...
 
enum  OPEN_EVENT_e {
  OPEN_EVENT_INTERFACE = 0, OPEN_EVENT_VLAN = 1, OPEN_EVENT_ROUTE = 2, OPEN_EVENT_ROUTING_INTERFACE = 3,
  OPEN_EVENT_ISSU_START = 4, OPEN_EVENT_READY_STATE = 5, OPEN_EVENT_CONFIG = 6, OPEN_EVENT_LAST
}
 Open API Events for which clients can register. More...
 
enum  OPEN_INTF_TYPE_t {
  OPEN_INTF_TYPE_PHY = 0, OPEN_INTF_TYPE_CPU = 1, OPEN_INTF_TYPE_LAG = 2, OPEN_INTF_TYPE_VLAN = 3,
  OPEN_INTF_TYPE_LOOPBACK = 4, OPEN_INTF_TYPE_TUNNEL = 5, OPEN_INTF_TYPE_SERVICE_PORT = 6, OPEN_INTF_TYPE_OTHER = 7,
  OPEN_INTF_TYPE_ANY = 8
}
 
enum  OPEN_IP_ADDRESS_TYPE_t { OPEN_IP_ADDRESS_UNKNOWN = 0, OPEN_IP_ADDRESS_IPV4 = 1, OPEN_IP_ADDRESS_IPV6 = 2, OPEN_IP_ADDRESS_DNS = 16 }
 OpEN uses this enumeration to define IP address types. More...
 
enum  OPEN_LINK_STATE_t { OPEN_LINK_UP = 0, OPEN_LINK_DOWN = 1 }
 OPEN uses these enumerators to indicate the link status. More...
 
enum  OPEN_PASSWORD_ENCRYPT_ALG_t { OPEN_PASSWORD_ENCRYPT_NONE = 0, OPEN_PASSWORD_ENCRYPT_AES = 1, OPEN_PASSWORD_ENCRYPT_MD5 = 2 }
 OpEN uses this enumeration to define encryption types.
 
enum  OPEN_PORT_STATE_t { OPEN_PORT_DISABLE = 0, OPEN_PORT_ENABLE = 1, OPEN_PORT_DIAG_DISABLE = 2 }
 OPEN uses these enumerators to indicate port admin mode enable, disable or diag_disable. More...
 
enum  OPEN_PREF_INDICES_t {
  OPEN_PREF_RESERVED = 0, OPEN_PREF_LOCAL = 1, OPEN_PREF_STATIC = 2, OPEN_PREF_MPLS = 3,
  OPEN_PREF_OSPF_INTRA_AREA = 4, OPEN_PREF_OSPF_INTER_AREA = 5, OPEN_PREF_OSPF_EXTERNAL = 6, OPEN_PREF_RIP = 7,
  OPEN_PREF_IBGP = 8, OPEN_PREF_EBGP = 9, OPEN_PREF_6TO4 = 10, OPEN_PREF_GLOBAL_DEFAULT_GATEWAY = 11,
  OPEN_PREF_DEFAULT_DHCP = 12, OPEN_PREF_LOCAL_BGP = 13, OPEN_PREF_LAST
}
 Route Preference Types.
 
enum  OPEN_RATE_UNIT_t { OPEN_RATE_UNIT_NONE = 0, OPEN_RATE_UNIT_PERCENT = 1, OPEN_RATE_UNIT_PPS = 2, OPEN_RATE_UNIT_KBPS = 3 }
 OpEN uses this enumeration to define rate units. More...
 
enum  OPEN_REDIST_RT_INDICES_t {
  OPEN_REDIST_RT_FIRST = 0, OPEN_REDIST_RT_LOCAL = 1, OPEN_REDIST_RT_STATIC = 2, OPEN_REDIST_RT_RIP = 3,
  OPEN_REDIST_RT_OSPF = 4, OPEN_REDIST_RT_BGP = 5, OPEN_REDIST_RT_OSPFV3 = 6, OPEN_REDIST_RT_LAST
}
 Redistribution route types.
 
enum  OPEN_REGISTER_FLAGS_t { OPEN_REGISTER_FLAGS_NONE = 0x00000000, OPEN_REGISTER_FLAGS_THREADED = 0x00000001 }
 Open API enhanced registration flags. More...
 
enum  OPEN_VLAN_PARTICIPATION_MODE_t { OPEN_VLAN_PARTICIPATION_MODE_INCLUDE = 0, OPEN_VLAN_PARTICIPATION_MODE_AUTO = 1, OPEN_VLAN_PARTICIPATION_MODE_EXCLUDE = 2 }
 OPEN uses these enumerators to indicate the VLAN participation of a given interface. More...
 

Functions

open_error_t openapiApiVersionGet (openapiClientHandle_t *client_handle, open_revision_data_t *version)
 Returns the revision of the OPEN API. More...
 
int openapiClientNotifySocketFDGet (openapiClientHandle_t *client_handle)
 Accessor function to retrieve the socket FD for event notifications from OpEN. More...
 
open_error_t openapiClientRegister (char *client_name, openapiClientHandle_t *client_handle)
 Register as a client with the OpEN API and wait until OpEN API services are available. More...
 
open_error_t openapiClientRegisterEnhanced (char *client_name, OPEN_REGISTER_FLAGS_t reg_flags, openapiClientHandle_t *client_handle)
 Register as a client with the OpEN API using enhanced options and wait until OpEN API services are available. More...
 
open_error_t openapiClientTearDown (openapiClientHandle_t *client_handle)
 Teardown and cleanup the connection resources. More...
 
open_error_t openapiConnectivityCheck (openapiClientHandle_t *client_handle)
 Return code indicates whether the OpEN remote procedure call infrastructure is ready. More...
 
open_error_t openapiCpuIntfGet (openapiClientHandle_t *client_handle, uint32_t *intf)
 Returns the CPU control plane interface number. More...
 
open_error_t openapiCurrentSDMGet (openapiClientHandle_t *client_handle, uint32_t *sdm_template)
 Get the current active SDM template in the system. More...
 
int openapiEventIsSet (openapiEventList_t *event_mask, OPEN_EVENT_e event_handle)
 Check if a particular event is set in a bit mask of events. More...
 
void openapiEventListClear (openapiEventList_t *event_mask)
 
open_error_t openapiEventRegister (openapiClientHandle_t *client_handle, openapiEventList_t *event_mask)
 Register the client to receive event notifications for one or more event types. More...
 
void openapiEventSet (openapiEventList_t *event_mask, OPEN_EVENT_e event_handle)
 
open_error_t openapiEventWait (openapiClientHandle_t *client_handle, int32_t timeout_secs)
 Wait for Open API events for this client. More...
 
open_error_t openapiHardwareVersionGet (openapiClientHandle_t *client_handle, open_buffdesc *version)
 Returns hardware version of the switch. More...
 
open_error_t openapiImageFileNameMaxLengthGet (openapiClientHandle_t *client_handle, uint32_t *fileNameLen)
 Get the maximum length of an image file name (excluding its path) in the file system. More...
 
open_error_t openapiInetAddrCompare (openapiClientHandle_t *client_handle, open_buffdesc *ip1Str, open_buffdesc *ip2Str, OPEN_BOOL_t *equal)
 Check if the two IP address strings refer to the same address. More...
 
open_error_t openapiInetAddrFromIPAddrHostNameStr (openapiClientHandle_t *client_handle, open_buffdesc *ipOrHostStr, open_inet_addr_t *inetAddr)
 Converts network address string containing either an IPv4/IPv6 address or a host name into an inetAddr in network byte order. More...
 
open_error_t openapiInetAddrGet (openapiClientHandle_t *client_handle, open_buffdesc *ipStr, open_inet_addr_t *ipAddr)
 Get the IP address in network byte order from string format. More...
 
open_error_t openapiInternalClientRegister (char *client_name, openapiClientHandle_t *client_handle)
 Register as an internal client with the OpEN API and wait until OpEN API services are available. More...
 
open_error_t openapiInternalClientTearDown (openapiClientHandle_t *client_handle)
 Deregister an internal OpEN client. More...
 
open_error_t openapiIntfDisplayNameGet (openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, uint32_t port, open_buffdesc *bufdName)
 Get the display name of given interface. More...
 
open_error_t openapiIntfNameGet (openapiClientHandle_t *client_handle, uint32_t intfNum, open_buffdesc *bufdName)
 Get interface name for a given internal interface number. More...
 
open_error_t openapiIntfNameMaxLengthGet (openapiClientHandle_t *client_handle, uint32_t *maxLen)
 Get maximum length of interface name. More...
 
open_error_t openapiIpAddressMaxStringLength (openapiClientHandle_t *client_handle, uint32_t *maxLen)
 Get maximum string length of IP address. More...
 
open_error_t openapiIsInetAddrZero (openapiClientHandle_t *client_handle, open_inet_addr_t ipAddr, OPEN_BOOL_t *isZero)
 Check if the given IP address is zero or not. More...
 
open_error_t openapiMaxInterfaceCountGet (openapiClientHandle_t *client_handle, uint32_t *max_interface_count)
 Get the maximum number of interfaces on this switch. More...
 
open_error_t openapiNetworkOSVersionGet (openapiClientHandle_t *client_handle, open_buffdesc *version)
 Returns the revision of the network operating system running on the switch. More...
 
open_error_t openapiOpenIPtoStringGet (openapiClientHandle_t *client_handle, open_inet_addr_t openAddr, open_buffdesc *bufdName)
 Get human readable string format of given IP address. More...
 
open_error_t openapiOspfEqualCostRoutesMax (openapiClientHandle_t *client_handle, uint32_t *maxPaths)
 Get the number of equal cost routes supported by this platform. More...
 
open_error_t openapiPendingEventsGet (openapiClientHandle_t *client_handle, openapiEventList_t *changed_mask, openapiEventList_t *purged_mask)
 Check what events are pending for this client. More...
 
open_error_t openapiPingCallback (openapiClientHandle_t *client_handle, uint16_t seqNo, uint32_t rtt, uint32_t type, open_buffdesc *srcIp)
 Send the ping response to the client(CLI/Telnet/SSH) session. More...
 
open_error_t openapiServiceClientRegister (char *client_name, int32_t client_inst, int32_t server_id, openapiClientHandle_t *client_handle)
 Register as a client of a specified OpEN API service and wait until the service is available. More...
 
open_error_t openapiSystemFileNameMaxLengthGet (openapiClientHandle_t *client_handle, uint32_t *fileNameLen)
 Get the maximum length of a file name (including its path) in the file system. More...
 
open_error_t openapiSystemReadyStateGet (openapiClientHandle_t *client_handle, uint32_t *system_is_ready)
 Determine whether the system is currently operational or not operational. More...
 
open_error_t openapiSystemReadyStateTransitionNextGet (openapiClientHandle_t *client_handle, uint32_t *system_is_ready)
 Get the next configurator state transition event. More...
 
open_error_t openapiTraceRouteCallbackFn (openapiClientHandle_t *client_handle, uint32_t num_probes, uint32_t ttl, uint32_t ipDa, uint16_t hopCount, uint16_t probeCount, uint32_t rtt, uint8_t errSym)
 Send the traceroute response to the client(CLI/Telnet/SSH) session. More...
 

Detailed Description

Macro Definition Documentation

#define OPEN_IS_ADDR_EQUAL (   xaddr,
  yaddr 
)
Value:
( (OPEN_AF_INET6 == ((open_inet_addr_t *)(xaddr))->family) ? \
( (((open_inet_addr_t *)(xaddr))->addr.ipv6.u.addr32[0] == \
((open_inet_addr_t *)(yaddr))->addr.ipv6.u.addr32[0]) && \
(((open_inet_addr_t *)(xaddr))->addr.ipv6.u.addr32[1] == \
((open_inet_addr_t *)(yaddr))->addr.ipv6.u.addr32[1]) && \
(((open_inet_addr_t *)(xaddr))->addr.ipv6.u.addr32[2] == \
((open_inet_addr_t *)(yaddr))->addr.ipv6.u.addr32[2]) && \
(((open_inet_addr_t *)(xaddr))->addr.ipv6.u.addr32[3] == \
((open_inet_addr_t *)(yaddr))->addr.ipv6.u.addr32[3]) ) : \
( ((open_inet_addr_t *)(xaddr))->addr.ipv4 == \
((open_inet_addr_t *)(yaddr))->addr.ipv4) )
IPV6 address family.

Definition at line 321 of file openapi_common.h.

#define OPENAPI_PROTOCOL_HEX_ARP   0x0806

HEX code for the ARP protocol.

Definition at line 369 of file openapi_common.h.

#define OPENAPI_PROTOCOL_HEX_IP   0x0800

OpEN uses these defines to define hex codes of the protocols.

HEX code for the IP protocol.

Definition at line 368 of file openapi_common.h.

#define OPENAPI_PROTOCOL_HEX_IPX   0x8137

HEX code for the IPX protocol.

Definition at line 370 of file openapi_common.h.

#define OPENAPI_PROTOCOL_HEX_MAX   0xFFFF

Maximim HEX code of the protocol.

Definition at line 372 of file openapi_common.h.

#define OPENAPI_PROTOCOL_HEX_MIN   0x0600

Minumum HEX code of the protocol.

Definition at line 371 of file openapi_common.h.

Enumeration Type Documentation

Enumerator
OPEN_ACCESS_LINE_UNKNOWN 

Unknown Connection.

OPEN_ACCESS_LINE_CONSOLE 

Console Access.

OPEN_ACCESS_LINE_TELNET 

Telnet Access.

OPEN_ACCESS_LINE_SSH 

SSH Access.

Definition at line 313 of file openapi_common.h.

OPEN uses these enumerators to indicate the interface types.

Definition at line 192 of file openapi_common.h.

enum OPEN_AF_t

OPEN uses these enumerators to indicate address family, IPV4 or IPV6.

Enumerator
OPEN_AF_NONE 

Neither IPV4 nor IPV6.

OPEN_AF_INET 

IPV4 address family.

OPEN_AF_INET6 

IPV6 address family.

Definition at line 235 of file openapi_common.h.

enum OPEN_AFX_t

OPEN uses these enumerators to indicate BGP address family index of routes or policy for IPV4 or IPV6.

Enumerator
OPEN_AFX_IP4 

IPV4 address family.

OPEN_AFX_IP6 

IPV6 address family.

Definition at line 244 of file openapi_common.h.

OPEN uses these enumerators to indicate true or false for a given config or status parameter.

Enumerator
OPEN_FALSE 

false

OPEN_TRUE 

true

Definition at line 177 of file openapi_common.h.

OPEN uses these enumerators to indicate enable or disable for a given config or status parameter.

Enumerator
OPEN_DISABLE 

disable

OPEN_ENABLE 

enable

Definition at line 161 of file openapi_common.h.

OPEN uses these enumerators to indicate the types of frames that may be received on this port.

Enumerator
OPEN_DOT1Q_ADMIT_ALL 

Untagged or priority tagged frames.

OPEN_DOT1Q_ADMIN_ONLY_VLAN_TAGGED 

VLAN tagged frames.

OPEN_DOT1Q_ADMIN_ONLY_VLAN_UNTAGGED 

VLAN untagged frames.

Definition at line 223 of file openapi_common.h.

OPEN uses these enumerators to indicate the error codes.

Enumerator
OPEN_E_NONE 

Success.

OPEN_E_RPC 

Error in RPC.

OPEN_E_INTERNAL 

Internal error.

OPEN_E_PARAM 

Invalid parameter.

OPEN_E_FULL 

Maximum count is already reached or table full.

OPEN_E_EXISTS 

Already exists.

OPEN_E_TIMEOUT 

Operation Timeout.

OPEN_E_FAIL 

Operation Fail.

OPEN_E_DISABLED 

Disabled.

OPEN_E_UNAVAIL 

Parameter/feature is not supported.

OPEN_E_NOT_FOUND 

Parameter not found.

OPEN_E_EMPTY 

Nothing to report or table is empty.

OPEN_E_ERROR 

Error conditions.

Definition at line 64 of file openapi_common.h.

Open API Events for which clients can register.

Definition at line 82 of file openapi_common.h.

Enumerator
OPEN_INTF_TYPE_PHY 

Physical interface.

OPEN_INTF_TYPE_CPU 

CPU interface.

OPEN_INTF_TYPE_LAG 

LAG interface.

OPEN_INTF_TYPE_VLAN 

VLAN interface.

OPEN_INTF_TYPE_LOOPBACK 

Loopback interface.

OPEN_INTF_TYPE_TUNNEL 

Tunnel interface.

OPEN_INTF_TYPE_SERVICE_PORT 

Service port interface.

OPEN_INTF_TYPE_OTHER 

Any other interface type.

Not one of the interfaces defined above

OPEN_INTF_TYPE_ANY 

Useful on openapiIfNextGet() to get all interfaces.

Definition at line 199 of file openapi_common.h.

OpEN uses this enumeration to define IP address types.

Enumerator
OPEN_IP_ADDRESS_UNKNOWN 

Address type unknown.

OPEN_IP_ADDRESS_IPV4 

Address type IPv4.

OPEN_IP_ADDRESS_IPV6 

Address type IPv6.

OPEN_IP_ADDRESS_DNS 

Address type DNS.

Definition at line 349 of file openapi_common.h.

OPEN uses these enumerators to indicate the link status.

Enumerator
OPEN_LINK_UP 

Link Up.

OPEN_LINK_DOWN 

Link Down.

Definition at line 184 of file openapi_common.h.

OPEN uses these enumerators to indicate port admin mode enable, disable or diag_disable.

Enumerator
OPEN_PORT_DISABLE 

Port is disabled.

OPEN_PORT_ENABLE 

Port is enabled.

OPEN_PORT_DIAG_DISABLE 

Port is disabled by protocol.

Definition at line 168 of file openapi_common.h.

OpEN uses this enumeration to define rate units.

Enumerator
OPEN_RATE_UNIT_NONE 

Rate unit none.

OPEN_RATE_UNIT_PERCENT 

Rate in percentage of link speed.

OPEN_RATE_UNIT_PPS 

Rate in packets/sec.

OPEN_RATE_UNIT_KBPS 

Rate in kilobytes/sec.

Definition at line 358 of file openapi_common.h.

Open API enhanced registration flags.

Enumerator
OPEN_REGISTER_FLAGS_NONE 

No special flags needed.

OPEN_REGISTER_FLAGS_THREADED 

Multi-threaded application.

Definition at line 120 of file openapi_common.h.

OPEN uses these enumerators to indicate the VLAN participation of a given interface.

Enumerator
OPEN_VLAN_PARTICIPATION_MODE_INCLUDE 

Included in the VLAN.

OPEN_VLAN_PARTICIPATION_MODE_AUTO 

AUTO detect mode .

OPEN_VLAN_PARTICIPATION_MODE_EXCLUDE 

Excluded from the VLAN.

Definition at line 214 of file openapi_common.h.

Function Documentation

open_error_t openapiApiVersionGet ( openapiClientHandle_t client_handle,
open_revision_data_t version 
)

Returns the revision of the OPEN API.

Parameters
[in]client_handleClient handle from registration API.
[out]versionPointer to structure that is used to store revision data.
Return values
OPEN_E_NONERevision data successfully retrieved.
OPEN_E_FAILRevision data could not be retrieved.
OPEN_E_PARAMError in parameter passed.

OpEN API Version: 1.1

Examples:
app_ctrl_example.c, cloud_managed_example.c, issu_example.c, suppfile_example.c, switch_cpu_example.c, system_example.c, and transfer_example.c.
int openapiClientNotifySocketFDGet ( openapiClientHandle_t client_handle)

Accessor function to retrieve the socket FD for event notifications from OpEN.

Parameters
[in]client_handleClient handle from registration API.
Returns
int FD for the notify socket.

OpEN API Version: 1.1

Examples:
vlan_status_example.c.
open_error_t openapiClientRegister ( char *  client_name,
openapiClientHandle_t client_handle 
)

Register as a client with the OpEN API and wait until OpEN API services are available.

Parameters
[in]client_nameString containing the client name.
[out]client_handleStorage to contain handle information.
Return values
OPEN_E_NONEOpEN is ready to accept RPC calls.
OPEN_E_INTERNALOpEN is not available in this product.
OPEN_E_PARAMError in parameter passed.
Note
This API blocks the caller until the Open API services are ready.

The same process may register multiple times.

The client name is a zero-terminated string of any length and does not have to be unique.

Note
Applications designed to run using multiple client threads must call the openapiClientRegisterThreaded API instead of this one.

OpEN API Version: 1.1

Examples:
accounting_example.c, acl_example.c, acl_pkt_cap.c, app_ctrl_example.c, authentication_example.c, authorization_example.c, bgp_example.c, boxs_example.c, bridge_example.c, clitxtcfg_example.c, cloud_managed_example.c, cosq_stats_example.c, dhcp_client_example.c, dns_example.c, dot1ad_example.c, dot1cb_example.c, dot1s_example.c, fdb_example.c, hash_example.c, image_example.c, instru_example.c, instru_nos_example.c, instru_packet_trace_example.c, interface_example.c, intf_stats_example.c, ip_example.c, ipv4_device_tracking_example.c, issu_example.c, l2ol3tunnel_example.c, lag_example.c, link_status_example.c, lldp_example.c, logging_example.c, mfdb_example.c, mpls_example.c, openr_example.c, ospf_example.c, pbvlan_example.c, pml_example.c, poe_example.c, pvlan_example.c, pw_scramble_example.c, registry_example.c, rfc1213_example.c, routing_example.c, rx_pkt_example.c, sdkportregbyname.c, sdkregbyname.c, snmp_example.c, snooping_example.c, sntp_example.c, ssh_example.c, stacking_example.c, static_filter_example.c, storm_control_example.c, suppfile_example.c, switch_cpu_example.c, switchport_config_example.c, system_example.c, tacacs_example.c, tcam_example.c, tcam_policy.c, tcam_usage.c, transfer_example.c, tx_pkt_example.c, user_accounts_example.c, user_sessions_example.c, userapp_config_db_example.c, vlan_example.c, and vlan_status_example.c.
open_error_t openapiClientRegisterEnhanced ( char *  client_name,
OPEN_REGISTER_FLAGS_t  reg_flags,
openapiClientHandle_t client_handle 
)

Register as a client with the OpEN API using enhanced options and wait until OpEN API services are available.

Parameters
[in]client_nameString containing the client name.
[in]reg_flagsClient registration flags (bit mask). The following flags are supported (all other values are silently ignored) -
  • OPEN_REGISTER_FLAGS_NONE: If used without any other flags, this is equivalent to calling openapiClientRegister.
  • OPEN_REGISTER_FLAGS_THREADED: Register as a multi-threaded client application. Normally a client application runs as a single instance within its own process. Applications that instantiate multiple threads within the same process must register with this flag set.
[out]client_handleStorage to contain handle information.
Return values
OPEN_E_NONEOpEN is ready to accept RPC calls.
OPEN_E_INTERNALOpEN is not available in this product.
OPEN_E_PARAMError in parameter passed.
Note
This API blocks the caller until the Open API services are ready.

The same process may register multiple times.

The client name is a zero-terminated string of any length and does not have to be unique.

Note
This registration API must be used by applications that are designed to be multi-threaded, with each thread registering independently with the OpEN API service. Such applications must call this API with OPEN_REGISTER_FLAGS_THREADED set in the reg_flags input parameter instead of calling openapiClientRegister.

OpEN API Version: 1.11

Examples:
multi_threaded_app_example.c.
open_error_t openapiClientTearDown ( openapiClientHandle_t client_handle)

Teardown and cleanup the connection resources.

Parameters
[in]client_handleClient handle from registration API.
Return values
OPEN_E_NONEConnection closed.
OPEN_E_FAILFailed to teardown and cleanup.
OPEN_E_PARAMError in parameter passed.
Note
It's good housekeeping to close and free the connection and relinquish the client handle.

OpEN API Version: 1.3

Examples:
accounting_example.c, acl_example.c, acl_pkt_cap.c, app_ctrl_example.c, authentication_example.c, authorization_example.c, bgp_example.c, boxs_example.c, bridge_example.c, cloud_managed_example.c, dhcp_client_example.c, dns_example.c, dot1ad_example.c, dot1cb_example.c, dot1s_example.c, fdb_example.c, hash_example.c, image_example.c, instru_example.c, instru_nos_example.c, instru_packet_trace_example.c, interface_example.c, intf_stats_example.c, ip_example.c, ipv4_device_tracking_example.c, issu_example.c, l2ol3tunnel_example.c, lag_example.c, link_status_example.c, lldp_example.c, mfdb_example.c, mpls_example.c, multi_threaded_app_example.c, openr_example.c, ospf_example.c, pbvlan_example.c, pml_example.c, poe_example.c, pvlan_example.c, pw_scramble_example.c, registry_example.c, rfc1213_example.c, routing_example.c, rx_pkt_example.c, snmp_example.c, snooping_example.c, sntp_example.c, ssh_example.c, stacking_example.c, static_filter_example.c, storm_control_example.c, suppfile_example.c, switch_cpu_example.c, switchport_config_example.c, system_example.c, tacacs_example.c, tcam_example.c, transfer_example.c, tx_pkt_example.c, user_accounts_example.c, user_sessions_example.c, userapp_config_db_example.c, vlan_example.c, and vlan_status_example.c.
open_error_t openapiConnectivityCheck ( openapiClientHandle_t client_handle)

Return code indicates whether the OpEN remote procedure call infrastructure is ready.

Parameters
[in]client_handleClient handle from registration API.
Return values
OPEN_E_NONEOpEN is ready to accept RPC calls.
OPEN_E_RPCOpEN is not ready to accept RPC calls.
Note
This API is used to synchronize initialization of processes using RPC calls to the network operating system.

OpEN API Version: 1.1

Examples:
accounting_example.c, acl_example.c, acl_pkt_cap.c, app_ctrl_example.c, authentication_example.c, authorization_example.c, bgp_example.c, boxs_example.c, bridge_example.c, clitxtcfg_example.c, cloud_managed_example.c, cosq_stats_example.c, dhcp_client_example.c, dns_example.c, dot1ad_example.c, dot1cb_example.c, dot1s_example.c, fdb_example.c, hash_example.c, image_example.c, instru_example.c, instru_nos_example.c, instru_packet_trace_example.c, interface_example.c, intf_stats_example.c, ip_example.c, ipv4_device_tracking_example.c, issu_example.c, l2ol3tunnel_example.c, lag_example.c, link_status_example.c, lldp_example.c, logging_example.c, mfdb_example.c, mpls_example.c, multi_threaded_app_example.c, openr_example.c, ospf_example.c, pbvlan_example.c, pml_example.c, poe_example.c, pvlan_example.c, pw_scramble_example.c, registry_example.c, rfc1213_example.c, routing_example.c, rx_pkt_example.c, sdkportregbyname.c, sdkregbyname.c, snmp_example.c, snooping_example.c, sntp_example.c, ssh_example.c, stacking_example.c, static_filter_example.c, storm_control_example.c, suppfile_example.c, switch_cpu_example.c, switchport_config_example.c, system_example.c, tacacs_example.c, tcam_example.c, tcam_policy.c, tcam_usage.c, transfer_example.c, tx_pkt_example.c, user_accounts_example.c, user_sessions_example.c, userapp_config_db_example.c, vlan_example.c, and vlan_status_example.c.
open_error_t openapiCpuIntfGet ( openapiClientHandle_t client_handle,
uint32_t *  intf 
)

Returns the CPU control plane interface number.

Parameters
[in]client_handleClient handle from registration API.
[out]intfInternal interface number.
Return values
OPEN_E_NONERevision data successfully retrieved.
OPEN_E_FAILRevision data could not be retrieved.
OPEN_E_PARAMError in parameter passed.

OpEN API Version: 1.1

Examples:
acl_example.c, and cosq_stats_example.c.
open_error_t openapiCurrentSDMGet ( openapiClientHandle_t client_handle,
uint32_t *  sdm_template 
)

Get the current active SDM template in the system.

Parameters
[in]client_handleClient handle from registration API.
[in]sdm_templateCurrent active SDM template.
Return values
OPEN_E_NONESuccessfully passed output to the client.
OPEN_E_FAILFailed to pass output to the client.

OpEN API Version: 1.1

int openapiEventIsSet ( openapiEventList_t event_mask,
OPEN_EVENT_e  event_handle 
)

Check if a particular event is set in a bit mask of events.

Parameters
[in]event_maskBit mask of events in which an event has to be checked to be set.
[in]event_handleStorage to contain event information.
Returns
1 The event type is set in the bit mask of events.
0 The event type is not set in the bit mask of events.

OpEN API Version: 1.1

Examples:
issu_example.c, link_status_example.c, and vlan_status_example.c.
open_error_t openapiEventRegister ( openapiClientHandle_t client_handle,
openapiEventList_t event_mask 
)

Register the client to receive event notifications for one or more event types.

Parameters
[in]client_handleClient handle from registration API.
[in]event_maskBit mask of events for which to register.
Return values
OPEN_E_NONERegistered for all events.
OPEN_E_FAILFailed to register for all events.
Note
There is no API to un-register for events. The clients are un-registered when the client process exits. Use the OPEN_EVENT macros to set up the event mask.

OpEN API Version: 1.1

Examples:
issu_example.c, link_status_example.c, and vlan_status_example.c.
open_error_t openapiEventWait ( openapiClientHandle_t client_handle,
int32_t  timeout_secs 
)

Wait for Open API events for this client.

Parameters
[in]client_handleClient handle from registration API.
[in]timeout_secsNumber of seconds to wait. 0 - Do not wait. Return immediately. < 0 - Wait forever. > 0 - Wait specified number of seconds.
Return values
OPEN_E_NONEEvent is pending for this client.
OPEN_E_TIMEOUTTimed out while waiting for event.
Note
If the timeout_secs is 0 and there are no pending events then the function returns OPEN_E_TIMEOUT.

OpEN API Version: 1.1

Examples:
issu_example.c, link_status_example.c, and transfer_example.c.
open_error_t openapiHardwareVersionGet ( openapiClientHandle_t client_handle,
open_buffdesc version 
)

Returns hardware version of the switch.

Parameters
[in]client_handleClient handle from registration API.
[out]versionPointer to structure that is used to store revision data.
  • Maximum buffer allocated size
  • OPENAPI_VER_BUFF_MAX_SIZE
Return values
OPEN_E_NONERevision data successfully retrieved.
OPEN_E_FAILRevision data could not be retrieved.
OPEN_E_PARAMError in parameter passed.
OPEN_E_UNAVAILParameter/feature is not supported.
OPEN_E_INTERNALInternal error.

OpEN API Version: 1.12

Examples:
switch_cpu_example.c, and system_example.c.
open_error_t openapiImageFileNameMaxLengthGet ( openapiClientHandle_t client_handle,
uint32_t *  fileNameLen 
)

Get the maximum length of an image file name (excluding its path) in the file system.

Parameters
[in]client_handleClient handle from registration API.
[out]fileNameLenMaximum length of a file name.
Return values
OPEN_E_NONEOperation succeeded.
OPEN_E_PARAMError in parameter passed.
Note
The maximum length of a file name varies by platform.
For optimal usage, assume that the output length value does not include room for the NULL string terminator character when getting a file name from the system, meaning add 1 to this value when creating an output buffer large enough to receive it. Conversely, when setting a file name string in the system, assume this length value includes the NULL terminator (i.e. actual file name string allowed is one character less).

OpEN API Version: 1.20

Examples:
image_example.c.
open_error_t openapiInetAddrCompare ( openapiClientHandle_t client_handle,
open_buffdesc ip1Str,
open_buffdesc ip2Str,
OPEN_BOOL_t equal 
)

Check if the two IP address strings refer to the same address.

Parameters
[in]client_handleClient handle from registration API
[in]ip1StrIP address string one
[in]ip2StrIP address string two
[out]equalOPEN_TRUE if equal, else OPEN_FALSE
Return values
OPEN_E_NONESuccess
OPEN_E_FAILFailure occurred when parsing one of the supplied IP address strings
OPEN_E_PARAMAn invalid parameter was passed.

OpEN API Version: 1.15

open_error_t openapiInetAddrFromIPAddrHostNameStr ( openapiClientHandle_t client_handle,
open_buffdesc ipOrHostStr,
open_inet_addr_t inetAddr 
)

Converts network address string containing either an IPv4/IPv6 address or a host name into an inetAddr in network byte order.

Parameters
[in]client_handleClient handle from registration API.
[in]ipOrHostStrBuffer containing string representation of address to convert.
[out]inetAddrIPv4 or IPv6 address in network byte order corresponding to address.
Return values
OPEN_E_NONEif validation is successful.
OPEN_E_PARAMif parameters is not defined correctly.
OPEN_E_UNAVAILNot supported for this platform.

OpEN API Version: 1.10

Note
Buffer containing the host string should have no more than OPENAPI_DNS_HOST_NAME_LEN_MAX in length.
Examples:
transfer_example.c.
open_error_t openapiInetAddrGet ( openapiClientHandle_t client_handle,
open_buffdesc ipStr,
open_inet_addr_t ipAddr 
)

Get the IP address in network byte order from string format.

Parameters
[in]client_handleClient handle from registration API.
[in]ipStrIP address string.
[out]ipAddrIP address in inet address format.
Return values
OPEN_E_NONEValid IP address is passed and is converted to inet format.
OPEN_E_FAILInvalid ip address string is passed.
OPEN_E_PARAMInvalid parameter is passed.
Note
This API checks if the address passed is IPv4 or IPv6 address and updates the parameter of type open_inet_addr_t.

OpEN API Version: 1.1

Examples:
acl_pkt_cap.c, cloud_managed_example.c, dns_example.c, dot1cb_example.c, routing_example.c, and system_example.c.
open_error_t openapiInternalClientRegister ( char *  client_name,
openapiClientHandle_t client_handle 
)

Register as an internal client with the OpEN API and wait until OpEN API services are available.

Parameters
[in]client_nameString containing the client name.
[out]client_handleStorage to contain handle information.
Return values
OPEN_E_NONEOpEN is ready to accept RPC calls.
OPEN_E_INTERNALOpEN is not available in this product.
OPEN_E_PARAMError in parameter passed.
Note
This API blocks the caller until the Open API services are ready.

The same process may register multiple times.

The client name is a zero-terminated string of any length and does not have to be unique.

Note
This API is deprecated. Please use openapiServiceClientRegister() instead.

Deprecated OpEN API Version: 1.6 OpEN API Version: 1.9

open_error_t openapiInternalClientTearDown ( openapiClientHandle_t client_handle)

Deregister an internal OpEN client.

Parameters
[in]client_handleClient handle from registration API.
Return values
OPEN_E_NONEOpEN is ready to accept RPC calls.
OPEN_E_INTERNALOpEN is not available in this product.
OPEN_E_PARAMError in parameter passed.
Note
This API is deprecated. Please use openapiClientTearDown() instead.

Deprecated OpEN API Version: 1.6 OpEN API Version: 1.9

open_error_t openapiIntfDisplayNameGet ( openapiClientHandle_t client_handle,
uint32_t  unit,
uint32_t  slot,
uint32_t  port,
open_buffdesc bufdName 
)

Get the display name of given interface.

Parameters
[in]client_handleClient handle from registration API.
[in]unitUnit number.
[in]slotSlot number.
[in]portPort number.
[out]bufdNameString representation of interface.
Return values
OPEN_E_NONEGet successful.
OPEN_E_PARAMError in parameter passed.

OpEN API Version: 1.7

open_error_t openapiIntfNameGet ( openapiClientHandle_t client_handle,
uint32_t  intfNum,
open_buffdesc bufdName 
)

Get interface name for a given internal interface number.

Parameters
[in]client_handleClient handle from registration API.
[in]intfNumInternal interface name.
[out]bufdNameName of the interface.
Return values
OPEN_E_NONEGet successful.
OPEN_E_PARAMError in parameter passed.

OpEN API Version: 1.7

Examples:
ipv4_device_tracking_example.c, and routing_example.c.
open_error_t openapiIntfNameMaxLengthGet ( openapiClientHandle_t client_handle,
uint32_t *  maxLen 
)

Get maximum length of interface name.

Parameters
[in]client_handleClient handle from registration API.
[out]maxLenMaximum length of interface name: OPEN_INTF_NAME_MAX_LENGTH
Return values
OPEN_E_NONEGet successful.
OPEN_E_PARAMError in parameter passed.

OpEN API Version: 1.7

open_error_t openapiIpAddressMaxStringLength ( openapiClientHandle_t client_handle,
uint32_t *  maxLen 
)

Get maximum string length of IP address.

Parameters
[in]client_handleClient handle from registration API.
[out]maxLenMaximum length of IP address string length: OPEN_IP_ADDR_DISP_LENGTH
Return values
OPEN_E_NONEGet successful.
OPEN_E_PARAMError in parameter passed.

OpEN API Version: 1.7

Examples:
dns_example.c.
open_error_t openapiIsInetAddrZero ( openapiClientHandle_t client_handle,
open_inet_addr_t  ipAddr,
OPEN_BOOL_t isZero 
)

Check if the given IP address is zero or not.

Parameters
[in]client_handleClient handle from registration API.
[in]ipAddrIP address in inet address format.
[out]isZeroReturns OPEN_TRUE if the given IP address is '0', OPEN_FALSE if not.
Return values
OPEN_E_NONEValid IP address is passed.
OPEN_E_PARAMInvalid parameter is passed.
Note
This API checks if the address (IPv4 or IPv6) passed is '0 or not, and returns OPEN_TRUE if the address is '0' and returns OPEN_FALSE if the address is not a '0'.

OpEN API Version: 1.7

open_error_t openapiMaxInterfaceCountGet ( openapiClientHandle_t client_handle,
uint32_t *  max_interface_count 
)

Get the maximum number of interfaces on this switch.

Parameters
[in]client_handleClient handle from registration API.
[out]max_interface_countNumber of interfaces.
Return values
OPEN_E_NONEGot the number of interfaces.
OPEN_E_INTERNALUnexpected error.

OpEN API Version: 1.1

Examples:
link_status_example.c, and tx_pkt_example.c.
open_error_t openapiNetworkOSVersionGet ( openapiClientHandle_t client_handle,
open_buffdesc version 
)

Returns the revision of the network operating system running on the switch.

Parameters
[in]client_handleClient handle from registration API.
[out]versionPointer to structure that is used to store revision data.
Return values
OPEN_E_NONERevision data successfully retrieved.
OPEN_E_FAILRevision data could not be retrieved.
OPEN_E_PARAMError in parameter passed.

OpEN API Version: 1.1

Examples:
accounting_example.c, acl_pkt_cap.c, app_ctrl_example.c, authentication_example.c, authorization_example.c, boxs_example.c, bridge_example.c, clitxtcfg_example.c, cloud_managed_example.c, dhcp_client_example.c, dns_example.c, dot1ad_example.c, dot1cb_example.c, dot1s_example.c, fdb_example.c, image_example.c, instru_nos_example.c, instru_packet_trace_example.c, interface_example.c, intf_stats_example.c, ip_example.c, ipv4_device_tracking_example.c, issu_example.c, l2ol3tunnel_example.c, lag_example.c, link_status_example.c, lldp_example.c, logging_example.c, mfdb_example.c, mpls_example.c, multi_threaded_app_example.c, pbvlan_example.c, pml_example.c, poe_example.c, pvlan_example.c, pw_scramble_example.c, registry_example.c, rfc1213_example.c, rx_pkt_example.c, sdkportregbyname.c, sdkregbyname.c, snooping_example.c, sntp_example.c, ssh_example.c, stacking_example.c, static_filter_example.c, storm_control_example.c, suppfile_example.c, switch_cpu_example.c, switchport_config_example.c, system_example.c, tacacs_example.c, tcam_example.c, tcam_policy.c, tcam_usage.c, transfer_example.c, tx_pkt_example.c, user_accounts_example.c, user_sessions_example.c, userapp_config_db_example.c, vlan_example.c, and vlan_status_example.c.
open_error_t openapiOpenIPtoStringGet ( openapiClientHandle_t client_handle,
open_inet_addr_t  openAddr,
open_buffdesc bufdName 
)

Get human readable string format of given IP address.

Parameters
[in]client_handleClient handle from registration API.
[in]openAddrIP address to convert to string.
[out]bufdNameIP address in string format.
Return values
OPEN_E_NONESet successful.
OPEN_E_PARAMError in parameter passed.

OpEN API Version: 1.7

Examples:
acl_pkt_cap.c.
open_error_t openapiOspfEqualCostRoutesMax ( openapiClientHandle_t client_handle,
uint32_t *  maxPaths 
)

Get the number of equal cost routes supported by this platform.

Parameters
[in]client_handleClient handle from registration API.
[out]maxPathsMaximum number of equal cost routes.
Return values
OPEN_E_NONEGet successful.
OPEN_E_PARAMError in parameter passed.
Note
The max number of equal cost routes are platform specific and may also vary depending upon ECMP support.

OpEN API Version: 1.2

Examples:
ospf_example.c.
open_error_t openapiPendingEventsGet ( openapiClientHandle_t client_handle,
openapiEventList_t changed_mask,
openapiEventList_t purged_mask 
)

Check what events are pending for this client.

Parameters
[in]client_handleClient handle from registration API.
[out]changed_maskTable-Change event is pending for the tables in the bit mask.
[out]purged_maskTable-Purge event is pending for the tables in the bit mask.
Return values
OPEN_E_NONEGot the event mask.
OPEN_E_FAILUnexpected failure.
Note
The pending flag is cleared automatically after it is read. Use the openapiEventIsSet api to examine the event mask.

OpEN API Version: 1.1

Examples:
issu_example.c, link_status_example.c, and vlan_status_example.c.
open_error_t openapiPingCallback ( openapiClientHandle_t client_handle,
uint16_t  seqNo,
uint32_t  rtt,
uint32_t  type,
open_buffdesc srcIp 
)

Send the ping response to the client(CLI/Telnet/SSH) session.

Parameters
[in]client_handleClient handle from registration API.
[in]seqNoSeq. Nb of ping response.
[in]rttResponse time.
[in]typeResponse ICMP packet type.
[in]srcIpSource IP of the responding node.
Return values
OPEN_E_NONESuccessfully passed output to the client.
OPEN_E_FAILFailed to pass output to the client.
Note
This API passes the ping output back to the client.

OpEN API Version: 1.1

open_error_t openapiServiceClientRegister ( char *  client_name,
int32_t  client_inst,
int32_t  server_id,
openapiClientHandle_t client_handle 
)

Register as a client of a specified OpEN API service and wait until the service is available.

Parameters
[in]client_nameString containing the client name.
[in]client_instClient instance number.
[in]server_idServer identifier.
[out]client_handleStorage to contain handle information.
Return values
OPEN_E_NONEOpEN is ready to accept RPC calls.
OPEN_E_INTERNALOpEN is not available in this product.
OPEN_E_PARAMError in parameter passed.
Note
This API blocks the caller until the Open API service is ready.

The same process may register multiple times.

The client name is a zero-terminated string of any length and does not have to be unique.

Note
This API is primarily intended for internal OpEN client applications. Callers must specify a valid server_id (not published externally).
All user-supplied (i.e. external) OpEN clients should continue using openapiClientRegister(). Optionally, external clients may call this API provided that the server_id parameter value is specified as follows: OPEN_REGISTRATION_SERVICE_USERAPPS
The client_inst value is used to differentiate multiple client instances having the same name. While it is typically set to a small integer value, it is recommended that OPEN_CLIENT_INSTANCE_FIRST be used as the first (or only) client instance of a given type, with any additional clients using incremental values thereof.

OpEN API Version: 1.9

open_error_t openapiSystemFileNameMaxLengthGet ( openapiClientHandle_t client_handle,
uint32_t *  fileNameLen 
)

Get the maximum length of a file name (including its path) in the file system.

Parameters
[in]client_handleClient handle from registration API.
[out]fileNameLenMaximum length of a file name.
Return values
OPEN_E_NONEOperation succeeded.
OPEN_E_PARAMError in parameter passed.
Note
The maximum length of a file path and name varies by platform.
For optimal usage, assume that the output length value does not include room for the NULL string terminator character when getting a file path/name from the system, meaning add 1 to this value when creating an output buffer large enough to receive it. Conversely, when setting a file path/name string in the system, assume this length value includes the NULL terminator (i.e. actual file path/name string allowed is one character less).

OpEN API Version: 1.6

Examples:
suppfile_example.c.
open_error_t openapiSystemReadyStateGet ( openapiClientHandle_t client_handle,
uint32_t *  system_is_ready 
)

Determine whether the system is currently operational or not operational.

The function reflects whether the system is in the "Configurator Execute" state.

Parameters
[in]client_handleClient handle from registration API.
[out]system_is_ready1 - System is ready, 0 - Not Ready
Return values
OPEN_E_NONEGot the system state. OPEN_E_INTERNAL Unexpected error.

OpEN API Version: 1.1

open_error_t openapiSystemReadyStateTransitionNextGet ( openapiClientHandle_t client_handle,
uint32_t *  system_is_ready 
)

Get the next configurator state transition event.

Parameters
[in]client_handleClient handle from registration API.
[out]system_is_ready1 - System is ready, 0 - Not Ready
Return values
OPEN_E_NONEGot the system state. OPEN_E_INTERNAL Unexpected error.
Note
This function uses a static variable and is not re-entrant. Make sure that in a multi-threaded application only one thread calls this function.

OpEN API Version: 1.1

open_error_t openapiTraceRouteCallbackFn ( openapiClientHandle_t client_handle,
uint32_t  num_probes,
uint32_t  ttl,
uint32_t  ipDa,
uint16_t  hopCount,
uint16_t  probeCount,
uint32_t  rtt,
uint8_t  errSym 
)

Send the traceroute response to the client(CLI/Telnet/SSH) session.

Parameters
[in]client_handleClient handle from registration API.
[in]numProbesNumber of probes issued per hop.
[in]ttlStarting Time to live value.
[in]ipDaDestination IP address.
[in]hopCountThe hop for current traceroute probes.
[in]probeCountThe current probe number.
[in]rttResponse time.
[in]errSymThe error symbol.
Return values
OPEN_E_NONESuccessfully passed output to the client.
OPEN_E_FAILFailed to pass output to the client.
Note
This API passes the traceroute output back to the client.

OpEN API Version: 1.1