X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvpp%2Fapi%2Fvpe.api;h=3db34fec3d934e5b36a2d447e1d1745704970729;hb=933fcf489;hp=24d44bd31e7d2ce151415d1c626adf9064ed6d83;hpb=413f4a5b2123c1625d615315db293a080078482b;p=vpp.git diff --git a/src/vpp/api/vpe.api b/src/vpp/api/vpe.api index 24d44bd31e7..3db34fec3d9 100644 --- a/src/vpp/api/vpe.api +++ b/src/vpp/api/vpe.api @@ -16,22 +16,22 @@ /** \file This file defines vpe control-plane API messages which are generally - called through a shared memory interface. + called through a shared memory interface. */ -option version = "1.1.0"; +option version = "1.6.1"; -/* +import "vpp/api/vpe_types.api"; + +/* * Note: API placement cleanup in progress * If you're looking for interface APIs, please * see .../src/vnet/{interface.api,interface_api.c} * IP APIs: see .../src/vnet/ip/{ip.api, ip_api.c} - * TAP APIs: see .../src/vnet/unix/{tap.api, tap_api.c} * VXLAN APIs: see .../src/vnet/vxlan/{vxlan.api, vxlan_api.c} * GENEVE APIs: see .../src/vnet/geneve/{geneve.api, geneve_api.c} * LLDP APIs: see .../src/vnet/lldp/{lldp.api, lldp_api.c} * AF-PACKET APIs: see ... /vnet/devices/af_packet/{af_packet.api, af_packet_api.c} - * NETMAP APIs: see ... /src/vnet/devices/netmap/{netmap.api, netmap_api.c} * VHOST-USER APIs: see .../vnet/devices/virtio/{vhost_user.api, vhost_user_api.c} * VXLAN GPE APIs: see .../src/vnet/vxlan-gpe/{vxlan_gpe.api, vxlan_gpe_api.c} * GRE APIs: see .../src/vnet/gre/{gre.api, gre_api.c} @@ -39,7 +39,6 @@ option version = "1.1.0"; * L2TP APIs: see .../src/vnet/l2tp/{l2tp.api, l2tp_api.c} * BFD APIs: see .../src/vnet/bfd/{bfd.api, bfd_api.c} * IPSEC APIs: see .../src/vnet/ipsec/{ipsec.api, ipsec_api.c} - * IPSEC-GRE APIs: see .../src/vnet/ipsec-gre/{ipsec_gre.api, ipsec_gre_api.c} * LISP APIs: see .../src/vnet/lisp/{lisp.api, lisp_api.c} * LISP-GPE APIs: see .../src/vnet/lisp-gpe/{lisp_gpe.api, lisp_gpe_api.c} * SESSION APIs: .../vnet/session/{session.api session_api.c} @@ -50,7 +49,6 @@ option version = "1.1.0"; * DHCP APIs: see ... /src/vnet/dhcp/{dhcp.api, dhcp_api.c} * COP APIs: see ... /src/vnet/cop/{cop.api, cop_api.c} * POLICER APIs: see ... /src/vnet/policer/{policer.api, policer_api.c} - * STATS APIs: see .../src/vpp/stats/{stats.api, stats.c} * BIER APIs: see ... /src/vnet/policer/{bier.api, bier_api.c} */ @@ -93,7 +91,7 @@ define cli_inband { u32 client_index; u32 context; - string cmd; + string cmd[]; }; /** \brief vpe parser cli string response @@ -111,7 +109,7 @@ define cli_inband_reply { u32 context; i32 retval; - string reply; + string reply[]; }; /** \brief Get node index using name request @@ -123,7 +121,7 @@ define get_node_index { u32 client_index; u32 context; - u8 node_name[64]; + string node_name[64]; }; /** \brief Get node index using name request @@ -148,8 +146,8 @@ define add_node_next { u32 client_index; u32 context; - u8 node_name[64]; - u8 next_name[64]; + string node_name[64]; + string next_name[64]; }; /** \brief IP Set the next node for a given node response @@ -185,10 +183,10 @@ define show_version_reply { u32 context; i32 retval; - string program; - string version; - string build_date; - string build_directory; + string program[32]; + string version[32]; + string build_date[32]; + string build_directory[256]; }; @@ -214,11 +212,11 @@ define show_threads @param core - thread pinned to actual physical core. @param cpu_socket - thread is running on which cpu socket. */ -typeonly define thread_data +typedef thread_data { u32 id; - u8 name[64]; - u8 type[64]; + string name[64]; + string type[64]; u32 pid; u32 cpu_id; u32 core; @@ -270,8 +268,8 @@ define get_next_index { u32 client_index; u32 context; - u8 node_name[64]; - u8 next_name[64]; + string node_name[64]; + string next_name[64]; }; /** \brief Reply for get next node index @@ -286,6 +284,90 @@ define get_next_index_reply u32 next_index; }; +define log_dump { + u32 client_index; + u32 context; + vl_api_timestamp_t start_timestamp; +}; + +define log_details { + u32 context; + vl_api_timestamp_t timestamp; + vl_api_log_level_t level; + string msg_class[32]; + string message[256]; +}; + +/** \brief Show the current system timestamp. + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request +*/ +define show_vpe_system_time +{ + u32 client_index; + u32 context; +}; + +/** \brief Reply for show vpe system time. + @param context - sender context which was passed in the request + @param retval - return value + @param vpe_system_time - the time in seconds since epoch of the host system. +*/ +define show_vpe_system_time_reply +{ + u32 context; + i32 retval; + vl_api_timestamp_t vpe_system_time; +}; + +/** \brief f64 types are not standardized across the wire. Sense wire format in each direction by sending the f64 value 1.0. + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param f64_one - The constant of 1.0. If you send a different value, expect an rv=VNET_API_ERROR_API_ENDIAN_FAILED. +*/ +define get_f64_endian_value +{ + u32 client_index; + u32 context; + f64 f64_one [default=1.0]; +}; + +/** \brief get_f64_endian_value reply message + @param context - sender context which was passed in the request + @param retval - return value - VNET_API_ERROR_API_ENDIAN_FAILED if f64_one != 1.0 + @param f64_one_result - The value of 'f64 1.0' +*/ +define get_f64_endian_value_reply +{ + u32 context; + u32 retval; + f64 f64_one_result; +}; + +/** \brief Verify f64 wire format by sending a value and receiving the value + 1.0 + @param client_index - opaque cookie to identify the sender. + @param context - sender context, to match reply w/ request. + @param f64_value - The value you want to test. Default: 1.0. +*/ +define get_f64_increment_by_one +{ + u32 client_index; + u32 context; + f64 f64_value [default=1.0]; +}; + +/** \brief get_f64_increment_by_one reply + @param client_index - opaque cookie to identify the sender. + @param context - sender context, to match reply w/ request. + @param f64_value - The input f64_value incremented by 1.0. +*/ +define get_f64_increment_by_one_reply +{ + u32 context; + u32 retval; + f64 f64_value; +}; + /* * Local Variables: * eval: (c-set-style "gnu")