*/
define ip_neighbor_details {
u32 context;
- u32 is_static;
+ u8 is_static;
u8 is_ipv6;
u8 mac_address[6];
u8 ip_address[16];
/** \brief IP neighbor 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_id, only for IP4
@param sw_if_index - interface used to reach neighbor
@param is_add - 1 to add neighbor, 0 to delete
@param is_ipv6 - 1 for IPv6 neighbor, 0 for IPv4
- @param is_static -
+ @param is_ipv6 - 1 for IPv6 neighbor, 0 for IPv4
+ @param is_static - A static neighbor Entry - there are not flushed
+ If the interface goes down.
+ @param is_no_adj_fib - Do not create a corresponding entry in the FIB
+ table for the neighbor.
@param mac_address - l2 address of the neighbor
@param dst_address - ip4 or ip6 address of the neighbor
*/
{
u32 client_index;
u32 context;
- u32 vrf_id; /* only makes sense for ip4 */
u32 sw_if_index;
/* 1 = add, 0 = delete */
u8 is_add;
u8 is_ipv6;
u8 is_static;
+ u8 is_no_adj_fib;
u8 mac_address[6];
u8 dst_address[16];
};
/** \brief IPv6 router advertisement prefix config request
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request
- @param sw_if_index -
- @param address[] -
- @param address_length -
- @param use_default -
- @param no_advertise -
- @param off_link -
- @param no_autoconfig -
- @param no_onlink -
- @param is_no -
- @param val_lifetime -
- @param pref_lifetime -
+ @param sw_if_index - The interface the RA prefix information is for
+ @param address[] - The prefix to advertise
+ @param address_length - the prefix length
+ @param use_default - Revert to default settings
+ @param no_advertise - Do not advertise this prefix
+ @param off_link - The prefix is off link (it is not configured on the interface)
+ Configures the L-flag, When set, indicates that this
+ prefix can be used for on-link determination.
+ @param no_autoconfig - Setting for the A-flag. When
+ set indicates that this prefix can be used for
+ stateless address configuration.
+ @param no_onlink - The prefix is not on link. Make sure this is consistent
+ with the off_link parameter else YMMV
+ @param is_no - add/delete
+ @param val_lifetime - The length of time in
+ seconds (relative to the time the packet is sent)
+ that the prefix is valid for the purpose of on-link
+ determination. A value of all one bits
+ (0xffffffff) represents infinity
+ @param pref_lifetime - The length of time in
+ seconds (relative to the time the packet is sent)
+ that addresses generated from the prefix via
+ stateless address autoconfiguration remain
+ preferred [ADDRCONF]. A value of all one bits
+ (0xffffffff) represents infinity.
*/
define sw_interface_ip6nd_ra_prefix
{
i32 retval;
};
+/** \brief IPv6 ND proxy config
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param sw_if_index - The interface the host is on
+ @param address - The address of the host for which to proxy for
+ @param is_add - Adding or deleting
+*/
+define ip6nd_proxy_add_del
+{
+ u32 client_index;
+ u32 context;
+ u32 sw_if_index;
+ u8 is_del;
+ u8 address[16];
+};
+
+/** \brief IPv6 ND proxy response
+ @param context - sender context, to match reply w/ request
+ @param retval - return code for the request
+*/
+define ip6nd_proxy_add_del_reply
+{
+ u32 context;
+ i32 retval;
+};
+
+/** \brief IPv6 ND proxy details returned after request
+ @param context - sender context, to match reply w/ request
+ @param retval - return code for the request
+*/
+define ip6nd_proxy_details
+{
+ u32 client_index;
+ u32 context;
+ u32 sw_if_index;
+ u8 address[16];
+};
+
+/** \brief IPv6 ND proxy dump request
+ @param context - sender context, to match reply w/ request
+ @param retval - return code for the request
+ @param sw_if_index - The interface the host is on
+ @param address - The address of the host for which to proxy for
+*/
+define ip6nd_proxy_dump
+{
+ u32 client_index;
+ u32 context;
+};
+
/** \brief IPv6 interface enable / disable request
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request
@param context - sender context, to match reply w/ request
@param sw_if_index - interface to set link local on
@param address[] - the new link local address
- @param address_length - link local address length
*/
define sw_interface_ip6_set_link_local_address
{
u32 context;
u32 sw_if_index;
u8 address[16];
- u8 address_length;
};
/** \brief IPv6 set link local address on interface response
i32 retval;
};
+/** \brief Add / del route request
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param sw_if_index - software index of the new vlan's parent interface
+ @param vrf_id - fib table /vrf associated with the route
+
+ FIXME
+*/
+define ip_mroute_add_del
+{
+ u32 client_index;
+ u32 context;
+ u32 next_hop_sw_if_index;
+ u32 table_id;
+ u32 entry_flags;
+ u32 itf_flags;
+ u16 grp_address_length;
+ u8 create_vrf_if_needed;
+ u8 is_add;
+ u8 is_ipv6;
+ u8 is_local;
+ u8 grp_address[16];
+ u8 src_address[16];
+};
+
+/** \brief Reply for add / del mroute request
+ @param context - returned sender context, to match reply w/ request
+ @param retval - return code
+*/
+define ip_mroute_add_del_reply
+{
+ u32 context;
+ i32 retval;
+};
+
+/** \brief Dump IP multicast fib table
+ @param client_index - opaque cookie to identify the sender
+*/
+define ip_mfib_dump
+{
+ u32 client_index;
+ u32 context;
+};
+
+/** \brief IP Multicast FIB table response
+ @param table_id - IP fib table id
+ @address_length - mask length
+ @grp_address - Group address/prefix
+ @src_address - Source address
+ @param count - the number of fib_path in path
+ @param path - array of of fib_path structures
+*/
+manual_endian manual_print define ip_mfib_details
+{
+ u32 context;
+ u32 table_id;
+ u8 address_length;
+ u8 grp_address[4];
+ u8 src_address[4];
+ u32 count;
+ vl_api_fib_path_t path[count];
+};
+
+/** \brief Dump IP6 multicast fib table
+ @param client_index - opaque cookie to identify the sender
+*/
+define ip6_mfib_dump
+{
+ u32 client_index;
+ u32 context;
+};
+
+/** \brief IP6 Multicast FIB table response
+ @param table_id - IP fib table id
+ @address_length - mask length
+ @grp_address - Group address/prefix
+ @src_address - Source address
+ @param count - the number of fib_path in path
+ @param path - array of of fib_path structures
+*/
+manual_endian manual_print define ip6_mfib_details
+{
+ u32 context;
+ u32 table_id;
+ u8 address_length;
+ u8 grp_address[16];
+ u8 src_address[16];
+ u32 count;
+ vl_api_fib_path_t path[count];
+};
+
define ip_address_details
{
u32 client_index;
u32 context;
u8 ip[16];
u8 prefix_length;
+ u32 sw_if_index;
+ u8 is_ipv6;
};
define ip_address_dump
{
u32 sw_if_index;
u32 context;
+ u8 is_ipv6;
};
define ip_dump
u8 is_ipv6;
};
+define mfib_signal_dump
+{
+ u32 client_index;
+ u32 context;
+};
+
+define mfib_signal_details
+{
+ u32 client_index;
+ u32 context;
+ u32 sw_if_index;
+ u32 table_id;
+ u16 grp_address_len;
+ u8 grp_address[16];
+ u8 src_address[16];
+ u16 ip_packet_len;
+ u8 ip_packet_data[256];
+};
/*
* Local Variables: