/* * Copyright (c) 2015-2016 Cisco and/or its affiliates. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** \file This file defines vpe control-plane API messages which are generally called through a shared memory interface. */ option version = "1.7.0"; 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} * 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} * 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} * L2 APIs: see .../src/vnet/l2/{l2.api, l2_api.c} * 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} * 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} * MPLS APIs: see .../src/vnet/mpls/{mpls.api, mpls_api.c} * SR APIs: see .../src/vnet/srv6/{sr.api, sr_api.c} * CLASSIFY APIs: see ... /src/vnet/classify/{classify.api, classify_api.c} * FLOW APIs: see ... /src/vnet/flow/{flow.api, flow_api.c} * 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} * BIER APIs: see ... /src/vnet/policer/{bier.api, bier_api.c}. * flow APIs: see .../vnet/vnet/flow/{flow.api, flow_api.c} */ /** \brief show version @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request */ define show_version { u32 client_index; u32 context; }; /** \brief show version response @param context - sender context, to match reply w/ request @param retval - return code for the request @param program - name of the program (vpe) @param version - version of the program @param build_directory - root of the workspace where the program was built */ define show_version_reply { u32 context; i32 retval; string program[32]; string version[32]; string build_date[32]; string build_directory[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; }; 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]; }; /* * Local Variables: * eval: (c-set-style "gnu") * End: */