X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fip%2Fip.api;h=923249b8365bbcecd287f07d778c3cf8bdb1a062;hb=b11f903a;hp=38024926ab73fff4bff90bd5dae1ff7fc2d00419;hpb=c7b430406cb572e318c5b7b805fd98bdae0d680a;p=vpp.git diff --git a/src/vnet/ip/ip.api b/src/vnet/ip/ip.api index 38024926ab7..923249b8365 100644 --- a/src/vnet/ip/ip.api +++ b/src/vnet/ip/ip.api @@ -19,7 +19,8 @@ called through a shared memory interface. */ -option version = "1.2.2"; +option version = "1.3.0"; +import "vnet/ip/ip_types.api"; import "vnet/fib/fib_types.api"; /** \brief Add / del table request @@ -446,6 +447,7 @@ autoreply define ip_mroute_add_del u8 is_local; u8 grp_address[16]; u8 src_address[16]; + u8 nh_address[16]; }; /** \brief Dump IP multicast fib table @@ -524,10 +526,32 @@ define ip_address_dump u8 is_ipv6; }; -define ip_details +/** \brief IP unnumbered configurations + @param sw_if_index The interface that has unnumbered configuration + @param ip_sw_if_index The IP interface that it is unnnumbered to +*/ +define ip_unnumbered_details +{ + u32 client_index; + u32 context; + u32 sw_if_index; + u32 ip_sw_if_index; +}; + +/** \brief Dump IP unnumbered configurations + @param sw_if_index ~0 for all interfaces, else the interface desired +*/ +define ip_unnumbered_dump { + u32 client_index; + u32 context; u32 sw_if_index; +}; + +define ip_details +{ u32 context; + u32 sw_if_index; u8 is_ipv6; }; @@ -650,6 +674,30 @@ autoreply define ip_source_and_port_range_check_interface_add_del u32 udp_out_vrf_id; }; +/** \brief Enable/disable periodic IP neighbor scan + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param mode - 0: disable, 1: IPv4, 2: IPv6, 3: both IPv4/v6 + @param scan_interval - neighbor scan interval in minutes, 0: default to 1 + @param max_proc_time - max processing time per run in usec, 0: default to 20 + @param max_update - max neighbor probe/delete per run, 0: default to 10 + @param scan_int_delay - delay in msec to resume scan if exceed max proc + time or update, 0: default to 1 + @param stale_threshold - threshold in minutes for neighbor deletion, + 0: default to 4*scan_interval +*/ +autoreply define ip_scan_neighbor_enable_disable +{ + u32 client_index; + u32 context; + u8 mode; + u8 scan_interval; + u8 max_proc_time; + u8 max_update; + u8 scan_int_delay; + u8 stale_threshold; +}; + /** \brief IP probe neighbor address on an interface by sending an ARP request (for IP4) or ICMP6 Neighbor Solicitation (for IP6) @param client_index - opaque cookie to identify the sender @@ -813,25 +861,50 @@ service { events ip6_nd_event; }; +/** \brief Proxy ARP configuration type + @param vrf_id - VRF / Fib table ID + @param low_address[4] - Low address of the Proxy ARP range + @param hi_address[4] - High address of the Proxy ARP range +*/ +typeonly define proxy_arp +{ + u32 vrf_id; + u8 low_address[4]; + u8 hi_address[4]; +}; + /** \brief Proxy ARP add / del request @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request - @param vrf_id - VRF / Fib table ID @param is_add - 1 if adding the Proxy ARP range, 0 if deleting - @param low_address[4] - Low address of the Proxy ARP range - @param hi_address[4] - High address of the Proxy ARP range + @param proxy - Proxy configuration */ autoreply define proxy_arp_add_del { u32 client_index; u32 context; - u32 vrf_id; u8 is_add; - u8 low_address[4]; - u8 hi_address[4]; + vl_api_proxy_arp_t proxy; }; -/** \brief Proxy ARP add / del request +/** \brief Proxy ARP dump request + */ +define proxy_arp_dump +{ + u32 client_index; + u32 context; +}; + +/** \brief Proxy ARP dump details reply + * @param proxy - Same data as used to configure + */ +define proxy_arp_details +{ + u32 context; + vl_api_proxy_arp_t proxy; +}; + +/** \brief Proxy ARP add / del interface request @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param sw_if_index - Which interface to enable / disable Proxy Arp on @@ -846,6 +919,23 @@ autoreply define proxy_arp_intfc_enable_disable u8 enable_disable; }; +/** \brief Proxy ARP interface dump request + */ +define proxy_arp_intfc_dump +{ + u32 client_index; + u32 context; +}; + +/** \brief Proxy ARP interface dump details reply + * @param sw_if_index The interface on which ARP proxy is enabled. + */ +define proxy_arp_intfc_details +{ + u32 context; + u32 sw_if_index; +}; + /** \brief Reset fib table request @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request