X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvpp%2Fapi%2Fvpe.api;h=3db34fec3d934e5b36a2d447e1d1745704970729;hb=933fcf489;hp=bd6b9d5638fdee9dc2f1e3b0df15aa92a739c043;hpb=03f1af23b90eb053ba46e47d50bffc2fdfafbd16;p=vpp.git diff --git a/src/vpp/api/vpe.api b/src/vpp/api/vpe.api index bd6b9d5638f..3db34fec3d9 100644 --- a/src/vpp/api/vpe.api +++ b/src/vpp/api/vpe.api @@ -16,12 +16,14 @@ /** \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.3.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} @@ -30,7 +32,6 @@ option version = "1.3.0"; * 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} @@ -90,7 +91,7 @@ define cli_inband { u32 client_index; u32 context; - string cmd; + string cmd[]; }; /** \brief vpe parser cli string response @@ -108,7 +109,7 @@ define cli_inband_reply { u32 context; i32 retval; - string reply; + string reply[]; }; /** \brief Get node index using name request @@ -120,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 @@ -145,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 @@ -182,10 +183,10 @@ define show_version_reply { u32 context; i32 retval; - string program [limit = 32]; - string version [limit = 32]; - string build_date [limit = 32]; - string build_directory [limit = 256]; + string program[32]; + string version[32]; + string build_date[32]; + string build_directory[256]; }; @@ -211,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; @@ -267,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 @@ -283,53 +284,88 @@ define get_next_index_reply u32 next_index; }; -enum log_level { - VPE_API_LOG_LEVEL_EMERG = 0, /* emerg */ - VPE_API_LOG_LEVEL_ALERT = 1, /* alert */ - VPE_API_LOG_LEVEL_CRIT = 2, /* crit */ - VPE_API_LOG_LEVEL_ERR = 3, /* err */ - VPE_API_LOG_LEVEL_WARNING = 4, /* warn */ - VPE_API_LOG_LEVEL_NOTICE = 5, /* notice */ - VPE_API_LOG_LEVEL_INFO = 6, /* info */ - VPE_API_LOG_LEVEL_DEBUG = 7, /* debug */ - VPE_API_LOG_LEVEL_DISABLED = 8, /* disabled */ -}; - define log_dump { u32 client_index; u32 context; - f64 start_timestamp; + vl_api_timestamp_t start_timestamp; }; define log_details { u32 context; - f64 timestamp_ticks; + vl_api_timestamp_t timestamp; vl_api_log_level_t level; - string timestamp [limit=24]; - string msg_class [limit=32]; - string message [limit=256]; + 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_ticks +define show_vpe_system_time { u32 client_index; u32 context; }; -/** \brief Reply for show vpe system time ticks. +/** \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_ticks - the time in ticks of the host system. + @param vpe_system_time - the time in seconds since epoch of the host system. */ -define show_vpe_system_time_ticks_reply +define show_vpe_system_time_reply { u32 context; i32 retval; - f64 vpe_system_time_ticks; + 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; }; /*