X-Git-Url: https://gerrit.fd.io/r/gitweb?p=vpp.git;a=blobdiff_plain;f=src%2Fvnet%2FCMakeLists.txt;h=658e8d9a6967f4251a45f1edb283f386bfe372ae;hp=0d732f38b4fb486ddef44e6f03b29383f00754f8;hb=9534696b4;hpb=918c1615fef4b499720c967baa3d723d183d2308 diff --git a/src/vnet/CMakeLists.txt b/src/vnet/CMakeLists.txt index 0d732f38b4f..658e8d9a696 100644 --- a/src/vnet/CMakeLists.txt +++ b/src/vnet/CMakeLists.txt @@ -39,6 +39,12 @@ list(APPEND VNET_SOURCES misc.c ) +list(APPEND VNET_MULTIARCH_SOURCES + interface_output.c + interface_stats.c + handoff.c +) + list(APPEND VNET_HEADERS api_errno.h buffer.h @@ -52,6 +58,7 @@ list(APPEND VNET_HEADERS interface_funcs.h ip/ip4_to_ip6.h ip/ip6_to_ip4.h + ip/ip_types_api.h l3_types.h plugin/plugin.h pipeline.h @@ -62,7 +69,11 @@ list(APPEND VNET_HEADERS util/refcount.h ) -list(APPEND VNET_API_FILES interface.api) +list(APPEND VNET_API_FILES + interface.api + interface_types.api + ip/ip_types.api +) ############################################################################## # Policer infra @@ -74,6 +85,10 @@ list(APPEND VNET_SOURCES policer/policer_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + policer/node_funcs.c +) + list(APPEND VNET_HEADERS policer/police.h policer/policer.h @@ -93,6 +108,12 @@ list(APPEND VNET_SOURCES cop/cop_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + cop/node1.c + cop/ip4_whitelist.c + cop/ip6_whitelist.c +) + list(APPEND VNET_HEADERS cop/cop.h ) @@ -120,7 +141,10 @@ list(APPEND VNET_SOURCES ethernet/p2p_ethernet_api.c ) -list(APPEND VNET_MULTIARCH_SOURCES ethernet/node.c) +list(APPEND VNET_MULTIARCH_SOURCES + ethernet/node.c + ethernet/p2p_ethernet_input.c +) list(APPEND VNET_HEADERS ethernet/error.def @@ -132,7 +156,9 @@ list(APPEND VNET_HEADERS ethernet/p2p_ethernet.h ) -list(APPEND VNET_API_FILES ethernet/p2p_ethernet.api) +list(APPEND VNET_API_FILES + ethernet/p2p_ethernet.api + ethernet/ethernet_types.api) ############################################################################## # Layer 2 protocol: Ethernet bridging @@ -142,6 +168,7 @@ list(APPEND VNET_SOURCES l2/l2_api.c l2/l2_bd.c l2/l2_bvi.c + l2/l2_bvi_node.c l2/l2_input_classify.c l2/l2_output_classify.c l2/l2_efp_filter.c @@ -162,10 +189,22 @@ list(APPEND VNET_SOURCES ) list(APPEND VNET_MULTIARCH_SOURCES + l2/l2_bvi_node.c l2/l2_fwd.c l2/l2_learn.c l2/l2_output.c l2/l2_patch.c + l2/l2_in_out_feat_arc.c + l2/l2_input_classify.c + l2/l2_input.c + l2/l2_output_classify.c + l2/l2_flood.c + l2/l2_uu_fwd.c + l2/l2_efp_filter.c + l2/l2_rw.c + l2/l2_xcrw.c + l2/l2_in_out_acl.c + l2/l2_input_vtr.c ) list(APPEND VNET_HEADERS @@ -268,6 +307,10 @@ list(APPEND VNET_SOURCES vxlan/vxlan_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + vxlan/encap.c +) + list(APPEND VNET_HEADERS vxlan/vxlan.h vxlan/vxlan_packet.h @@ -288,6 +331,11 @@ list(APPEND VNET_SOURCES geneve/geneve_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + geneve/encap.c + geneve/decap.c +) + list(APPEND VNET_HEADERS geneve/geneve.h geneve/geneve_packet.h @@ -336,6 +384,7 @@ list(APPEND VNET_API_FILES lldp/lldp.api) ############################################################################## list(APPEND VNET_SOURCES classify/vnet_classify.c + classify/trace_classify.h classify/ip_classify.c classify/in_out_acl.c classify/policer_classify.c @@ -345,8 +394,14 @@ list(APPEND VNET_SOURCES classify/classify_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + classify/ip_classify.c + classify/flow_classify_node.c +) + list(APPEND VNET_HEADERS classify/vnet_classify.h + classify/trace_classify.h classify/in_out_acl.h classify/policer_classify.h classify/flow_classify.h @@ -376,7 +431,8 @@ list(APPEND VNET_SOURCES ip/ip4_pg.c ip/ip4_source_and_port_range_check.c ip/ip4_source_check.c - ip/ip4_reassembly.c + ip/reass/ip4_full_reass.c + ip/reass/ip4_sv_reass.c ip/ip6_format.c ip/ip6_forward.c ip/ip6_ll_table.c @@ -386,7 +442,8 @@ list(APPEND VNET_SOURCES ip/ip6_input.c ip/ip6_neighbor.c ip/ip6_pg.c - ip/ip6_reassembly.c + ip/reass/ip6_full_reass.c + ip/reass/ip6_sv_reass.c ip/rd_cp.c ip/ip_neighbor.c ip/ip_api.c @@ -395,10 +452,28 @@ list(APPEND VNET_SOURCES ip/ip.c ip/ip_init.c ip/ip_in_out_acl.c + ip/ip_punt_drop.c + ip/ip_types.c ip/lookup.c - ip/ping.c ip/punt_api.c ip/punt.c + ip/punt_node.c +) + +list(APPEND VNET_MULTIARCH_SOURCES + ip/ip4_source_check.c + ip/ip4_punt_drop.c + ip/reass/ip4_full_reass.c + ip/ip6_hop_by_hop.c + ip/reass/ip6_full_reass.c + ip/reass/ip4_sv_reass.c + ip/ip6_hop_by_hop.c + ip/reass/ip6_full_reass.c + ip/reass/ip6_sv_reass.c + ip/ip6_input.c + ip/ip6_punt_drop.c + ip/punt_node.c + ip/ip_in_out_acl.c ) list(APPEND VNET_HEADERS @@ -421,6 +496,7 @@ list(APPEND VNET_HEADERS ip/ip_packet.h ip/ip_source_and_port_range_check.h ip/ip_neighbor.h + ip/ip_types.h ip/lookup.h ip/ports.def ip/protocols.def @@ -474,6 +550,20 @@ list(APPEND VNET_SOURCES list(APPEND VNET_API_FILES bfd/bfd.api) +############################################################################## +# Crypto +############################################################################## + +list(APPEND VNET_SOURCES + crypto/cli.c + crypto/crypto.c + crypto/format.c +) + +list(APPEND VNET_HEADERS + crypto/crypto.h +) + ############################################################################## # Layer 3 protocol: IPSec ############################################################################## @@ -482,22 +572,19 @@ list(APPEND VNET_SOURCES ipsec/ipsec_cli.c ipsec/ipsec_format.c ipsec/ipsec_input.c - ipsec/ipsec_if.c - ipsec/ipsec_if_in.c + ipsec/ipsec_punt.c ipsec/ipsec_sa.c ipsec/ipsec_spd.c ipsec/ipsec_spd_policy.c + ipsec/ipsec_tun.c + ipsec/ipsec_tun_in.c ipsec/esp_format.c ipsec/esp_encrypt.c ipsec/esp_decrypt.c ipsec/ah_decrypt.c ipsec/ah_encrypt.c - ipsec/ikev2.c - ipsec/ikev2_crypto.c - ipsec/ikev2_cli.c - ipsec/ikev2_payload.c - ipsec/ikev2_format.c ipsec/ipsec_api.c + ipsec/ipsec_types_api.c ) list(APPEND VNET_MULTIARCH_SOURCES @@ -505,11 +592,12 @@ list(APPEND VNET_MULTIARCH_SOURCES ipsec/esp_decrypt.c ipsec/ah_decrypt.c ipsec/ah_encrypt.c - ipsec/ipsec_if_in.c ipsec/ipsec_output.c ipsec/ipsec_input.c + ipsec/ipsec_tun_in.c ) +list(APPEND VNET_API_FILES ipsec/ipsec_types.api) list(APPEND VNET_API_FILES ipsec/ipsec.api) list(APPEND VNET_SOURCES @@ -521,11 +609,11 @@ list(APPEND VNET_HEADERS ipsec/ipsec_spd.h ipsec/ipsec_spd_policy.h ipsec/ipsec_sa.h - ipsec/ipsec_if.h + ipsec/ipsec_tun.h + ipsec/ipsec_types_api.h + ipsec/ipsec_punt.h ipsec/esp.h ipsec/ah.h - ipsec/ikev2.h - ipsec/ikev2_priv.h ) ############################################################################## @@ -553,9 +641,17 @@ list(APPEND VNET_SOURCES tcp/tcp_input.c tcp/tcp_newreno.c tcp/tcp_cubic.c + tcp/tcp_bt.c + tcp/tcp_debug.c tcp/tcp.c ) +list(APPEND VNET_MULTIARCH_SOURCES + tcp/tcp_input.c + tcp/tcp_output.c + tcp/tcp_syn_filter4.c +) + list(APPEND VNET_HEADERS tcp/tcp_packet.h tcp/tcp_timer.h @@ -580,6 +676,11 @@ list(APPEND VNET_SOURCES udp/udp_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + udp/udp_local.c + udp/udp_encap_node.c +) + list(APPEND VNET_HEADERS udp/udp_error.def udp/udp.h @@ -588,27 +689,6 @@ list(APPEND VNET_HEADERS list(APPEND VNET_API_FILES udp/udp.api) -############################################################################## -# Layer 4 protocol: sctp -############################################################################## -list(APPEND VNET_SOURCES - sctp/sctp_api.c - sctp/sctp.c - sctp/sctp_pg.c - sctp/sctp_input.c - sctp/sctp_output.c - sctp/sctp_format.c -) - -list(APPEND VNET_HEADERS - sctp/sctp_error.def - sctp/sctp_packet.h - sctp/sctp_timer.h - sctp/sctp.h -) - -list(APPEND VNET_API_FILES sctp/sctp.api) - ############################################################################## # Tunnel protocol: gre ############################################################################## @@ -620,6 +700,11 @@ list(APPEND VNET_SOURCES gre/gre_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + gre/node.c + gre/gre.c +) + list(APPEND VNET_HEADERS gre/gre.h gre/packet.h @@ -637,13 +722,22 @@ list(APPEND VNET_SOURCES ipip/sixrd.c ipip/ipip_api.c ipip/ipip_cli.c + ipip/ipip_types_api.c +) + +list(APPEND VNET_MULTIARCH_SOURCES + ipip/node.c ) list(APPEND VNET_HEADERS ipip/ipip.h + ipip/ipip_types_api.h ) -list(APPEND VNET_API_FILES ipip/ipip.api) +list(APPEND VNET_API_FILES + ipip/ipip_types.api + ipip/ipip.api +) ############################################################################## # Tunnel protocol: l2tpv3 @@ -656,6 +750,11 @@ list(APPEND VNET_SOURCES l2tp/l2tp_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + l2tp/encap.c + l2tp/decap.c +) + list(APPEND VNET_HEADERS l2tp/l2tp.h l2tp/packet.h @@ -678,6 +777,13 @@ list(APPEND VNET_SOURCES mpls/mpls_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + mpls/mpls_output.c + mpls/mpls_input.c + mpls/mpls_lookup.c + mpls/mpls_features.c +) + list(APPEND VNET_HEADERS mpls/mpls.h mpls/mpls_types.h @@ -699,6 +805,11 @@ list(APPEND VNET_SOURCES vxlan-gbp/vxlan_gbp_packet.c ) +list (APPEND VNET_MULTIARCH_SOURCES + vxlan-gbp/decap.c + vxlan-gbp/encap.c +) + list(APPEND VNET_HEADERS vxlan-gbp/vxlan_gbp.h vxlan-gbp/vxlan_gbp_packet.h @@ -718,6 +829,10 @@ list(APPEND VNET_SOURCES vxlan-gpe/vxlan_gpe_api.c ) +list (APPEND VNET_MULTIARCH_SOURCES + vxlan-gpe/decap.c +) + list(APPEND VNET_HEADERS vxlan-gpe/vxlan_gpe.h vxlan-gpe/vxlan_gpe_packet.h @@ -726,23 +841,6 @@ list(APPEND VNET_HEADERS list(APPEND VNET_API_FILES vxlan-gpe/vxlan_gpe.api) -############################################################################## -# Tunnel protocol: ipsec+gre -############################################################################## -list(APPEND VNET_SOURCES - ipsec-gre/ipsec_gre.c - ipsec-gre/node.c - ipsec-gre/interface.c - ipsec-gre/ipsec_gre_api.c -) - -list(APPEND VNET_HEADERS - ipsec-gre/ipsec_gre.h - ipsec-gre/error.def -) - -list(APPEND VNET_API_FILES ipsec-gre/ipsec_gre.api) - ############################################################################## # LISP control plane: lisp-cp ############################################################################## @@ -798,50 +896,6 @@ list(APPEND VNET_HEADERS list(APPEND VNET_API_FILES lisp-gpe/lisp_gpe.api) -############################################################################## -# DHCP client -############################################################################## -list(APPEND VNET_SOURCES - dhcp/client.c - dhcp/dhcp_client_detect.c - dhcp/dhcp6_client_common_dp.c - dhcp/dhcp6_pd_client_dp.c - dhcp/dhcp6_pd_client_cp.c - dhcp/dhcp6_ia_na_client_dp.c - dhcp/dhcp6_ia_na_client_cp.c - dhcp/dhcp_api.c -) - -list(APPEND VNET_HEADERS - dhcp/client.h - dhcp/dhcp6_client_common_dp.h - dhcp/dhcp6_pd_client_dp.h - dhcp/dhcp6_ia_na_client_dp.h -) - -list(APPEND VNET_API_FILES - dhcp/dhcp.api - dhcp/dhcp6_pd_client_cp.api - dhcp/dhcp6_ia_na_client_cp.api -) - -############################################################################## -# DHCP proxy -############################################################################## -list(APPEND VNET_SOURCES - dhcp/dhcp6_proxy_node.c - dhcp/dhcp4_proxy_node.c - dhcp/dhcp_proxy.c -) - -list(APPEND VNET_HEADERS - dhcp/dhcp4_packet.h - dhcp/dhcp6_packet.h - dhcp/dhcp_proxy.h - dhcp/dhcp6_proxy_error.def - dhcp/dhcp4_proxy_error.def -) - ############################################################################## # ipv6 segment routing ############################################################################## @@ -893,6 +947,24 @@ list(APPEND VNET_HEADERS list(APPEND VNET_API_FILES ipfix-export/ipfix_export.api) +############################################################################## +# GSO +############################################################################## +list(APPEND VNET_SOURCES + gso/cli.c + gso/gso.c + gso/gso_api.c + gso/node.c +) + +list(APPEND VNET_HEADERS + gso/gso.h +) + +list(APPEND VNET_API_FILES + gso/gso.api +) + ############################################################################## # IPFIX classify code ############################################################################## @@ -914,6 +986,10 @@ list(APPEND VNET_SOURCES lawful-intercept/node.c ) +list(APPEND VNET_MULTIARCH_SOURCES + lawful-intercept/node.c +) + list(APPEND VNET_HEADERS lawful-intercept/lawful_intercept.h ) @@ -928,29 +1004,15 @@ list(APPEND VNET_SOURCES span/node.c ) -list(APPEND VNET_HEADERS - span/span.h -) - -list(APPEND VNET_API_FILES span/span.api) - -############################################################################## -# DNS proxy, API -############################################################################## -list(APPEND VNET_SOURCES - dns/dns.c - dns/dns.h - dns/dns_packet.h - dns/reply_node.c - dns/request_node.c - dns/resolver_process.c +list(APPEND VNET_MULTIARCH_SOURCES + span/node.c ) list(APPEND VNET_HEADERS - dns/dns.h + span/span.h ) -list(APPEND VNET_API_FILES dns/dns.api) +list(APPEND VNET_API_FILES span/span.api) ############################################################################## # Packet generator @@ -978,16 +1040,17 @@ list(APPEND VNET_API_FILES pg/pg.api) ############################################################################## list(APPEND VNET_SOURCES + devices/virtio/cli.c devices/virtio/device.c + devices/virtio/format.c devices/virtio/node.c + devices/virtio/pci.c devices/virtio/vhost_user.c devices/virtio/vhost_user_input.c devices/virtio/vhost_user_output.c devices/virtio/vhost_user_api.c devices/virtio/virtio.c devices/virtio/virtio_api.c - devices/virtio/cli.c - devices/virtio/pci.c ) list(APPEND VNET_HEADERS @@ -999,6 +1062,10 @@ list(APPEND VNET_HEADERS list(APPEND VNET_MULTIARCH_SOURCES devices/virtio/vhost_user_input.c devices/virtio/vhost_user_output.c + devices/netmap/node.c + devices/virtio/node.c + devices/af_packet/node.c + devices/virtio/device.c ) list(APPEND VNET_API_FILES @@ -1052,6 +1119,7 @@ list(APPEND VNET_SOURCES session/application_worker.c session/session_cli.c session/application_interface.c + session/application_local.c session/application_namespace.c session/segment_manager.c session/session_api.c @@ -1067,6 +1135,7 @@ list(APPEND VNET_HEADERS session/transport.h session/transport_types.h session/application_interface.h + session/application_local.h session/application_namespace.h session/session_debug.h session/segment_manager.h @@ -1078,22 +1147,6 @@ list(APPEND VNET_HEADERS list(APPEND VNET_API_FILES session/session.api) -############################################################################## -# session layer applications -############################################################################## - -list(APPEND VNET_SOURCES - session-apps/echo_client.c - session-apps/echo_server.c - session-apps/http_server.c - session-apps/proxy.c -) - -list(APPEND VNET_HEADERS - session-apps/echo_client.h - session-apps/proxy.h -) - ############################################################################## # TLS protocol ############################################################################## @@ -1119,6 +1172,11 @@ list(APPEND VNET_SOURCES devices/af_packet/af_packet_api.c ) +list(APPEND VNET_MULTIARCH_SOURCES + devices/netmap/device.c + devices/af_packet/device.c +) + list(APPEND VNET_HEADERS devices/af_packet/af_packet.h ) @@ -1201,6 +1259,7 @@ list(APPEND VNET_SOURCES fib/fib_entry_src_lisp.c fib/fib_entry_cover.c fib/fib_entry_delegate.c + fib/fib_entry_track.c fib/fib_path_list.c fib/fib_path.c fib/fib_path_ext.c @@ -1223,6 +1282,8 @@ list(APPEND VNET_HEADERS fib/fib_entry_delegate.h ) +list(APPEND VNET_API_FILES fib/fib_types.api) + ############################################################################## # ADJ ############################################################################## @@ -1231,6 +1292,7 @@ list(APPEND VNET_SOURCES adj/adj_nbr.c adj/adj_glean.c adj/adj_midchain.c + adj/adj_midchain_delegate.c adj/adj_mcast.c adj/adj_l2.c adj/adj_nsh.c @@ -1240,12 +1302,18 @@ list(APPEND VNET_SOURCES adj/adj_delegate.c ) +list(APPEND VNET_MULTIARCH_SOURCES + adj/adj_nsh.c + adj/adj_l2.c +) + list(APPEND VNET_HEADERS adj/adj.h adj/adj_types.h adj/adj_glean.h adj/adj_nsh.h adj/adj_nbr.h + adj/adj_midchain.h adj/rewrite.h ) @@ -1271,6 +1339,15 @@ list(APPEND VNET_SOURCES dpo/mpls_label_dpo.c dpo/l3_proxy_dpo.c dpo/dvr_dpo.c + dpo/pw_cw.c +) + +list(APPEND VNET_MULTIARCH_SOURCES + dpo/lookup_dpo.h + dpo/mpls_disposition.c + dpo/dvr_dpo.c + dpo/mpls_label_dpo.c + dpo/interface_rx_dpo.c ) list(APPEND VNET_HEADERS @@ -1293,6 +1370,7 @@ list(APPEND VNET_SOURCES mfib/mfib_forward.c mfib/ip4_mfib.c mfib/ip6_mfib.c + mfib/mfib_api.c mfib/mfib_types.c mfib/mfib_signal.c mfib/mfib_itf.c @@ -1305,12 +1383,18 @@ list(APPEND VNET_SOURCES mfib/mfib_table.c ) +list(APPEND VNET_MULTIARCH_SOURCES + mfib/mfib_forward.c +) + list(APPEND VNET_HEADERS mfib/ip4_mfib.h mfib/mfib_types.h mfib/mfib_table.h ) +list(APPEND VNET_API_FILES mfib/mfib_types.api) + ############################################################################## # Utilities ############################################################################## @@ -1335,7 +1419,16 @@ list(APPEND VNET_SOURCES qos/qos_api.c qos/qos_egress_map.c qos/qos_record.c + qos/qos_record_node.c + qos/qos_store.c + qos/qos_store_node.c qos/qos_mark.c + qos/qos_mark_node.c +) + +list(APPEND VNET_MULTIARCH_SOURCES + qos/qos_record_node.c + qos/qos_mark_node.c ) list(APPEND VNET_API_FILES qos/qos.api) @@ -1366,6 +1459,12 @@ list(APPEND VNET_SOURCES bier/bier_bift_table.c ) +list(APPEND VNET_MULTIARCH_SOURCES + bier/bier_disp_dispatch_node.c + bier/bier_disp_lookup_node.c + bier/bier_imp_node.c +) + list(APPEND VNET_HEADERS bier/bier_types.h bier/bier_entry.h @@ -1406,23 +1505,3 @@ add_vpp_library(vnet ) ############################################################################## -# Session echo apps -############################################################################## - -option(VPP_BUILD_SESSION_ECHO_APPS "Build session echo apps." ON) -if(VPP_BUILD_SESSION_ECHO_APPS) - add_vpp_executable(tcp_echo - SOURCES ../tests/vnet/session/tcp_echo.c - LINK_LIBRARIES vlibmemoryclient svm vppinfra pthread m rt - DEPENDS api_headers - NO_INSTALL - ) - add_vpp_executable(udp_echo - SOURCES ../tests/vnet/session/udp_echo.c - LINK_LIBRARIES vlibmemoryclient svm vppinfra pthread m rt - DEPENDS api_headers - NO_INSTALL - ) -endif(VPP_BUILD_SESSION_ECHO_APPS) - -##############################################################################