Release notes for VPP 26.02 =========================== More than 516 commits since the previous release, including 123 fixes. Features -------- - IGE Device driver - Native driver for Intel Gigabit Adapters (i211, i225, i226) (`b86e7f6d4 `_) - Infrastructure Library - Libc alloc/free intercept (`615a4c82c `_) - Plugins - DPDK - Bump to DPDK 25.11 and rdma-core 60.0 (`af2a4e31d `_) - HTTP - QPACK header decoding w/o dynamic table (`46813ba73 `_) - QPACK decoding request and response (`023ea1152 `_) - QPACK header encoding w/o dynamic table (`130697c1f `_) - QPACK encoding response (`fa905f032 `_) - QPACK encoding request (`036f00d04 `_) - Http/3 framing layer (`cddc11b31 `_) - Http/3 core skeleton (`c0f4f9ce7 `_) - H3 client side (`365a134c9 `_) - Host Stack Applications - Http connect proxy client (`545fca0a3 `_) - Basic redirect support for http client (`b7ef26e21 `_) - Marvell Octeon device driver - Update octeon roc version (`48b84d4a2 `_) - NPol - Network Policies plugin (`f40fcee5b `_) - Shared Elog - Introduce the Shared Elog plugin (`085d6de44 `_) - Selog client lib (`ba4eee76f `_) - Soft RSS - Software RSS plugin (`abbc4c02f `_) - Snort plugin - Add support for daq-VPP msg dump (`60c86051e `_) - Add support for packet injection (`379f3ebba `_) - Plugin StateFul Data Plane Services - Plugin with basic SFDP services (`28dbf5aee `_) - SASC - Session-aware service chaining (`92efc8a22 `_) - VNET - IPSec - Unify crypto+HMAC in single op for ESP (`9eed09d0f `_) - Session Layer - Add cli to format session tree (`d1c82ffaf `_) - StateFul Data Plane - StateFul Data Plane (`a74f0ef0a `_) - TLS and TLS engine plugins - Support retrieving peer cert (`b4cb85a41 `_) - Server side mtls support (`db7db9209 `_) - VPP Comms Library - Add api that supports dynamic configuration (`1d822cc24 `_) - Vector Library - Native fuse filesystem implementation (`188280037 `_) - Expose function to switch elog\_main (`914013e03 `_) - Add pointer based next frame macros (`daa068680 `_) - Show runtime "time" option. (`e0835a7f4 `_) Known issues ------------ For the full list of issues please refer to fd.io `JIRA `_. Fixed issues ------------ For the full list of fixed issues please refer to: - fd.io `JIRA `_ - git `commit log `_ API changes ----------- Description of results: - *Definition changed*: indicates that the API file was modified between releases. - *Only in image*: indicates the API is new for this release. - *Only in file*: indicates the API has been removed in this release. ============================================================= ================== Message Name Result ============================================================= ================== avf_create only in file avf_create_reply only in file avf_delete only in file avf_delete_reply only in file npol_configure_policies only in image npol_configure_policies_reply only in image npol_get_version only in image npol_get_version_reply only in image npol_ipset_add_del_members only in image npol_ipset_add_del_members_reply only in image npol_ipset_create only in image npol_ipset_create_reply only in image npol_ipset_delete only in image npol_ipset_delete_reply only in image npol_policy_create only in image npol_policy_create_reply only in image npol_policy_delete only in image npol_policy_delete_reply only in image npol_policy_update only in image npol_policy_update_reply only in image npol_rule_create only in image npol_rule_create_reply only in image npol_rule_delete only in image npol_rule_delete_reply only in image npol_rule_update only in image npol_rule_update_reply only in image selog_event_type_details only in image selog_event_type_dump only in image selog_event_type_string_details only in image selog_event_type_string_dump only in image selog_get_shm only in image selog_get_shm_reply only in image selog_get_string_table only in image selog_get_string_table_reply only in image selog_track_details only in image selog_track_dump only in image sfdp_gateway_geneve_input_enable_disable only in image sfdp_gateway_geneve_input_enable_disable_reply only in image sfdp_gateway_set_geneve_output only in image sfdp_gateway_set_geneve_output_reply only in image sfdp_interface_input_set only in image sfdp_interface_input_set_reply only in image sfdp_nat_alloc_pool_add_del only in image sfdp_nat_alloc_pool_add_del_reply only in image sfdp_nat_set_external_interface only in image sfdp_nat_set_external_interface_reply only in image sfdp_nat_snat_set_unset only in image sfdp_nat_snat_set_unset_reply only in image sfdp_session_details only in image sfdp_session_dump only in image sfdp_set_icmp_error_node only in image sfdp_set_icmp_error_node_reply only in image sfdp_set_services only in image sfdp_set_services_reply only in image sfdp_set_sp_node only in image sfdp_set_sp_node_reply only in image sfdp_set_timeout only in image sfdp_set_timeout_reply only in image sfdp_tcp_session_details only in image sfdp_tcp_session_dump only in image sfdp_tenant_add_del only in image sfdp_tenant_add_del_reply only in image sfdp_tenant_details only in image sfdp_tenant_dump only in image ============================================================= ================== Found 64 api message signature differences Newly deprecated API messages ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ These messages are still there in the API, but can and probably will disappear in the next release. - tap_create_v2 - tap_create_v2_reply In-progress API messages ~~~~~~~~~~~~~~~~~~~~~~~~ These messages are provided for testing and experimentation only. They are *not* subject to any compatibility process, and therefore can arbitrarily change or disappear at *any* moment. Also they may have less than satisfactory testing, making them unsuitable for other use than the technology preview. If you are intending to use these messages in production projects, please collaborate with the feature maintainer on their productization. - abf_itf_attach_add_del - abf_itf_attach_add_del_reply - abf_itf_attach_details - abf_itf_attach_dump - abf_plugin_get_version - abf_plugin_get_version_reply - abf_policy_add_del - abf_policy_add_del_reply - abf_policy_details - abf_policy_dump - acl_plugin_use_hash_lookup_get - acl_plugin_use_hash_lookup_get_reply - acl_plugin_use_hash_lookup_set - acl_plugin_use_hash_lookup_set_reply - bpf_trace_filter_set - bpf_trace_filter_set_reply - bpf_trace_filter_set_v2 - bpf_trace_filter_set_v2_reply - cnat_get_snat_addresses - cnat_get_snat_addresses_reply - cnat_session_details - cnat_session_dump - cnat_session_purge - cnat_session_purge_reply - cnat_set_snat_addresses - cnat_set_snat_addresses_reply - cnat_set_snat_policy - cnat_set_snat_policy_reply - cnat_snat_policy_add_del_exclude_pfx - cnat_snat_policy_add_del_exclude_pfx_reply - cnat_snat_policy_add_del_if - cnat_snat_policy_add_del_if_reply - cnat_translation_del - cnat_translation_del_reply - cnat_translation_details - cnat_translation_dump - cnat_translation_update - cnat_translation_update_reply - det44_get_timeouts_reply - det44_set_timeouts - det44_set_timeouts_reply - dev_attach - dev_attach_reply - dev_create_port_if - dev_create_port_if_reply - dev_detach - dev_detach_reply - dev_remove_port_if - dev_remove_port_if_reply - flowprobe_get_params - flowprobe_get_params_reply - flowprobe_interface_add_del - flowprobe_interface_add_del_reply - flowprobe_interface_details - flowprobe_interface_dump - flowprobe_set_params - flowprobe_set_params_reply - gbp_bridge_domain_add - gbp_bridge_domain_add_reply - gbp_bridge_domain_del - gbp_bridge_domain_del_reply - gbp_bridge_domain_details - gbp_bridge_domain_dump - gbp_bridge_domain_dump_reply - gbp_contract_add_del - gbp_contract_add_del_reply - gbp_contract_details - gbp_contract_dump - gbp_endpoint_add - gbp_endpoint_add_reply - gbp_endpoint_del - gbp_endpoint_del_reply - gbp_endpoint_details - gbp_endpoint_dump - gbp_endpoint_group_add - gbp_endpoint_group_add_reply - gbp_endpoint_group_del - gbp_endpoint_group_del_reply - gbp_endpoint_group_details - gbp_endpoint_group_dump - gbp_ext_itf_add_del - gbp_ext_itf_add_del_reply - gbp_ext_itf_details - gbp_ext_itf_dump - gbp_recirc_add_del - gbp_recirc_add_del_reply - gbp_recirc_details - gbp_recirc_dump - gbp_route_domain_add - gbp_route_domain_add_reply - gbp_route_domain_del - gbp_route_domain_del_reply - gbp_route_domain_details - gbp_route_domain_dump - gbp_route_domain_dump_reply - gbp_subnet_add_del - gbp_subnet_add_del_reply - gbp_subnet_details - gbp_subnet_dump - gbp_vxlan_tunnel_add - gbp_vxlan_tunnel_add_reply - gbp_vxlan_tunnel_del - gbp_vxlan_tunnel_del_reply - gbp_vxlan_tunnel_details - gbp_vxlan_tunnel_dump - gtpu_add_del_forward - gtpu_add_del_forward_reply - gtpu_add_del_tunnel_v2 - gtpu_add_del_tunnel_v2_reply - gtpu_get_transfer_counts - gtpu_get_transfer_counts_reply - gtpu_tunnel_v2_details - gtpu_tunnel_v2_dump - ikev2_child_sa_v2_details - ikev2_child_sa_v2_dump - ikev2_initiate_del_child_sa - ikev2_initiate_del_child_sa_reply - ikev2_initiate_del_ike_sa - ikev2_initiate_del_ike_sa_reply - ikev2_initiate_rekey_child_sa - ikev2_initiate_rekey_child_sa_reply - ikev2_initiate_sa_init - ikev2_initiate_sa_init_reply - ikev2_nonce_get - ikev2_nonce_get_reply - ikev2_profile_add_del - ikev2_profile_add_del_reply - ikev2_profile_details - ikev2_profile_disable_natt - ikev2_profile_disable_natt_reply - ikev2_profile_dump - ikev2_profile_set_auth - ikev2_profile_set_auth_reply - ikev2_profile_set_id - ikev2_profile_set_id_reply - ikev2_profile_set_ipsec_udp_port - ikev2_profile_set_ipsec_udp_port_reply - ikev2_profile_set_liveness - ikev2_profile_set_liveness_reply - ikev2_profile_set_ts - ikev2_profile_set_ts_reply - ikev2_profile_set_udp_encap - ikev2_profile_set_udp_encap_reply - ikev2_sa_v3_details - ikev2_sa_v3_dump - ikev2_set_esp_transforms - ikev2_set_esp_transforms_reply - ikev2_set_ike_transforms - ikev2_set_ike_transforms_reply - ikev2_set_local_key - ikev2_set_local_key_reply - ikev2_set_responder - ikev2_set_responder_hostname - ikev2_set_responder_hostname_reply - ikev2_set_responder_reply - ikev2_set_sa_lifetime - ikev2_set_sa_lifetime_reply - ikev2_set_tunnel_interface - ikev2_set_tunnel_interface_reply - ikev2_traffic_selector_details - ikev2_traffic_selector_dump - ip_neighbor_config_get - ip_neighbor_config_get_reply - ip_route_add_del_v2 - ip_route_add_del_v2_reply - ip_route_lookup_v2 - ip_route_lookup_v2_reply - ip_route_v2_details - ip_route_v2_dump - ip_session_redirect_add - ip_session_redirect_add_reply - ip_session_redirect_add_v2 - ip_session_redirect_add_v2_reply - ip_session_redirect_del - ip_session_redirect_del_reply - ip_session_redirect_details - ip_session_redirect_dump - l2_emulation - l2_emulation_reply - lcp_default_ns_get_reply - lcp_default_ns_set - lcp_default_ns_set_reply - lcp_itf_pair_add_del_v2 - lcp_itf_pair_add_del_v2_reply - lcp_itf_pair_add_del_v3 - lcp_itf_pair_add_del_v3_reply - lcp_itf_pair_details - lldp_details - mdata_enable_disable - mdata_enable_disable_reply - nat44_ed_vrf_tables_v2_details - nat44_ed_vrf_tables_v2_dump - nat44_ei_add_del_address_range - nat44_ei_add_del_address_range_reply - nat44_ei_add_del_static_mapping - nat44_ei_add_del_static_mapping_reply - nat44_ei_address_details - nat44_ei_address_dump - nat44_ei_del_session - nat44_ei_del_session_reply - nat44_ei_del_user - nat44_ei_del_user_reply - nat44_ei_forwarding_enable_disable - nat44_ei_forwarding_enable_disable_reply - nat44_ei_ha_flush - nat44_ei_ha_flush_reply - nat44_ei_ha_resync - nat44_ei_ha_resync_completed_event - nat44_ei_ha_resync_reply - nat44_ei_ha_set_failover - nat44_ei_ha_set_failover_reply - nat44_ei_ha_set_listener - nat44_ei_ha_set_listener_reply - nat44_ei_interface_add_del_feature - nat44_ei_interface_add_del_feature_reply - nat44_ei_interface_details - nat44_ei_interface_dump - nat44_ei_ipfix_enable_disable - nat44_ei_ipfix_enable_disable_reply - nat44_ei_plugin_enable_disable - nat44_ei_plugin_enable_disable_reply - nat44_ei_set_addr_and_port_alloc_alg - nat44_ei_set_addr_and_port_alloc_alg_reply - nat44_ei_set_fq_options - nat44_ei_set_fq_options_reply - nat44_ei_set_mss_clamping - nat44_ei_set_mss_clamping_reply - nat44_ei_set_timeouts - nat44_ei_set_timeouts_reply - nat44_ei_set_workers - nat44_ei_set_workers_reply - nat44_ei_show_fq_options - nat44_ei_show_fq_options_reply - nat44_ei_show_running_config - nat44_ei_show_running_config_reply - nat44_ei_static_mapping_details - nat44_ei_static_mapping_dump - nat44_ei_user_details - nat44_ei_user_dump - nat44_ei_user_session_details - nat44_ei_user_session_dump - nat44_ei_user_session_v2_details - nat44_ei_user_session_v2_dump - nat44_ei_worker_details - nat44_ei_worker_dump - nat64_plugin_enable_disable - nat64_plugin_enable_disable_reply - npol_configure_policies - npol_configure_policies_reply - npol_get_version - npol_get_version_reply - npol_ipset_add_del_members - npol_ipset_add_del_members_reply - npol_ipset_create - npol_ipset_create_reply - npol_ipset_delete - npol_ipset_delete_reply - npol_policy_create - npol_policy_create_reply - npol_policy_delete - npol_policy_delete_reply - npol_policy_update - npol_policy_update_reply - npol_rule_create - npol_rule_create_reply - npol_rule_delete - npol_rule_delete_reply - npol_rule_update - npol_rule_update_reply - npt66_binding_add_del - npt66_binding_add_del_reply - oddbuf_enable_disable - oddbuf_enable_disable_reply - pg_interface_enable_disable_coalesce - pg_interface_enable_disable_coalesce_reply - ping_finished_event - pnat_binding_add - pnat_binding_add_reply - pnat_binding_add_v2 - pnat_binding_add_v2_reply - pnat_binding_attach - pnat_binding_attach_reply - pnat_binding_del - pnat_binding_del_reply - pnat_binding_detach - pnat_binding_detach_reply - pnat_bindings_details - pnat_bindings_get - pnat_bindings_get_reply - pnat_flow_lookup - pnat_flow_lookup_reply - pnat_interfaces_details - pnat_interfaces_get - pnat_interfaces_get_reply - pvti_interface_create - pvti_interface_create_reply - pvti_interface_delete - pvti_interface_delete_reply - pvti_interface_details - pvti_interface_dump - sample_macswap_enable_disable - sample_macswap_enable_disable_reply - selog_event_type_details - selog_event_type_dump - selog_event_type_string_details - selog_event_type_string_dump - selog_get_shm - selog_get_shm_reply - selog_get_string_table - selog_get_string_table_reply - selog_track_details - selog_track_dump - set_ip_flow_hash_v3 - set_ip_flow_hash_v3_reply - sfdp_gateway_geneve_input_enable_disable - sfdp_gateway_geneve_input_enable_disable_reply - sfdp_gateway_set_geneve_output - sfdp_gateway_set_geneve_output_reply - sfdp_interface_input_set - sfdp_interface_input_set_reply - sfdp_nat_alloc_pool_add_del - sfdp_nat_alloc_pool_add_del_reply - sfdp_nat_set_external_interface - sfdp_nat_set_external_interface_reply - sfdp_nat_snat_set_unset - sfdp_nat_snat_set_unset_reply - sfdp_session_details - sfdp_session_dump - sfdp_set_icmp_error_node - sfdp_set_icmp_error_node_reply - sfdp_set_services - sfdp_set_services_reply - sfdp_set_sp_node - sfdp_set_sp_node_reply - sfdp_set_timeout - sfdp_set_timeout_reply - sfdp_tcp_session_details - sfdp_tcp_session_dump - sfdp_tenant_add_del - sfdp_tenant_add_del_reply - sfdp_tenant_details - sfdp_tenant_dump - sflow_direction_get - sflow_direction_get_reply - sflow_direction_set - sflow_direction_set_reply - sflow_drop_monitoring_get - sflow_drop_monitoring_get_reply - sflow_drop_monitoring_set - sflow_drop_monitoring_set_reply - sflow_enable_disable - sflow_enable_disable_reply - sflow_header_bytes_get - sflow_header_bytes_get_reply - sflow_header_bytes_set - sflow_header_bytes_set_reply - sflow_interface_details - sflow_interface_dump - sflow_polling_interval_get - sflow_polling_interval_get_reply - sflow_polling_interval_set - sflow_polling_interval_set_reply - sflow_sampling_rate_get - sflow_sampling_rate_get_reply - sflow_sampling_rate_set - sflow_sampling_rate_set_reply - sr_localsids_with_packet_stats_details - sr_localsids_with_packet_stats_dump - sr_mobile_localsid_add_del - sr_mobile_localsid_add_del_reply - sr_mobile_policy_add - sr_mobile_policy_add_reply - sr_policies_with_sl_index_details - sr_policies_with_sl_index_dump - sr_policy_add_v2 - sr_policy_add_v2_reply - sr_policy_mod_v2 - sr_policy_mod_v2_reply - sw_interface_ip6nd_ra_details - sw_interface_ip6nd_ra_dump - sw_interface_set_vxlan_gbp_bypass - sw_interface_set_vxlan_gbp_bypass_reply - test_addresses - test_addresses2 - test_addresses2_reply - test_addresses3 - test_addresses3_reply - test_addresses_reply - test_empty - test_empty_reply - test_enum - test_enum_reply - test_interface - test_interface_reply - test_prefix - test_prefix_reply - test_string - test_string2 - test_string2_reply - test_string_reply - test_vla - test_vla2 - test_vla2_reply - test_vla3 - test_vla3_reply - test_vla4 - test_vla4_reply - test_vla5 - test_vla5_reply - test_vla_reply - trace_capture_packets - trace_capture_packets_reply - trace_clear_cache - trace_clear_cache_reply - trace_clear_capture - trace_clear_capture_reply - trace_details - trace_dump - trace_dump_reply - trace_filter_function_details - trace_filter_function_dump - trace_set_filter_function - trace_set_filter_function_reply - trace_set_filters - trace_set_filters_reply - trace_v2_details - trace_v2_dump - tracenode_enable_disable - tracenode_enable_disable_reply - vxlan_gbp_tunnel_add_del - vxlan_gbp_tunnel_add_del_reply - vxlan_gbp_tunnel_details - vxlan_gbp_tunnel_dump - want_ping_finished_events - want_ping_finished_events_reply Patches that changed API definitions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ``src/plugins/crypto_sw_scheduler/crypto_sw_scheduler.api`` * `3f7d1ffa6 `_ misc: remove gnu indent footers ``src/plugins/npol/npol.api`` * `f40fcee5b `_ npol: Network Policies plugin ``src/plugins/srmpls/sr_mpls.api`` * `3f7d1ffa6 `_ misc: remove gnu indent footers ``src/plugins/tap/tapv2.api`` * `cb19c526d `_ tap: rework and move to plugins ``src/plugins/selog/selog.api`` * `085d6de44 `_ selog: introduce the Shared Elog plugin ``src/plugins/cnat/cnat.api`` * `3f7d1ffa6 `_ misc: remove gnu indent footers ``src/plugins/sfdp_services/base/interface_input/interface_input.api`` * `28dbf5aee `_ sfdp_services: plugin with basic SFDP services ``src/plugins/sfdp_services/base/tcp-check/tcp_check.api`` * `28dbf5aee `_ sfdp_services: plugin with basic SFDP services ``src/plugins/sfdp_services/base/nat/nat.api`` * `28dbf5aee `_ sfdp_services: plugin with basic SFDP services ``src/plugins/sfdp_services/geneve/gateway.api`` * `28dbf5aee `_ sfdp_services: plugin with basic SFDP services ``src/plugins/urpf/urpf.api`` * `3f7d1ffa6 `_ misc: remove gnu indent footers ``src/plugins/sasc/sasc.api`` * `92efc8a22 `_ sasc: session-aware service chaining ``src/vnet/sfdp/sfdp.api`` * `a74f0ef0a `_ sfdp: StateFul Data Plane ``src/vnet/sfdp/sfdp_types.api`` * `a74f0ef0a `_ sfdp: StateFul Data Plane ``src/vnet/srv6/sr.api`` * `27fca32bc `_ misc: convert copyright headers to SPDX ``src/vnet/interface_types.api`` * `3f7d1ffa6 `_ misc: remove gnu indent footers ``src/vnet/devices/virtio/virtio_types.api`` * `c9d32e020 `_ virtio: remove legacy pre-1.0 virtio support ``src/vnet/devices/virtio/virtio.api`` * `c9d32e020 `_ virtio: remove legacy pre-1.0 virtio support