1 # Copyright (c) 2015 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
6 # http://www.apache.org/licenses/LICENSE-2.0
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
15 ########################################
16 # iOAM Proof of Transit
17 ########################################
20 ioam/lib-pot/pot_util.c \
21 ioam/encap/ip6_ioam_pot.c \
22 ioam/lib-pot/pot_util.h \
23 ioam/lib-pot/math64.h \
24 ioam/lib-pot/pot_api.c
26 IOAM_POT_NOINST_HDR = \
27 ioam/lib-pot/pot_all_api_h.h \
28 ioam/lib-pot/pot_msg_enum.h \
29 ioam/lib-pot/pot.api.h \
30 ioam/lib-pot/pot_util.h \
33 IOAM_POT_API = ioam/lib-pot/pot.api
35 ioam_pot_test_plugin_la_SOURCES = \
36 ioam/lib-pot/pot_test.c \
37 ioam/lib-pot/pot_plugin.api.h
39 vppapitestplugins_LTLIBRARIES += ioam_pot_test_plugin.la
41 ########################################
42 # iOAM trace export for IPv6
43 ########################################
46 ioam/export/ioam_export.c \
48 ioam/export/ioam_export.api.h \
49 ioam/export/ioam_export_thread.c
51 IOAM_EXPORT_NOINST_HDR = \
52 ioam/export/ioam_export_all_api_h.h \
53 ioam/export/ioam_export_msg_enum.h \
54 ioam/export/ioam_export.api.h
56 IOAM_EXPORT_API = ioam/export/ioam_export.api
58 ioam_export_test_plugin_la_SOURCES = \
59 ioam/export/ioam_export_test.c \
60 ioam/export/ioam_export_plugin.api.h
62 vppapitestplugins_LTLIBRARIES += ioam_export_test_plugin.la
64 ########################################
66 ########################################
68 ioam/lib-trace/trace_util.c \
69 ioam/encap/ip6_ioam_trace.c \
70 ioam/lib-trace/trace_api.c
72 IOAM_TRACE_NOINST_HDR = \
73 ioam/lib-trace/trace_all_api_h.h \
74 ioam/lib-trace/trace_msg_enum.h \
75 ioam/lib-trace/trace.api.h \
76 ioam/lib-trace/trace_util.h \
77 ioam/encap/ip6_ioam_trace.h \
78 ioam/lib-trace/trace_config.h
80 IOAM_TRACE_API = ioam/lib-trace/trace.api
82 ioam_trace_test_plugin_la_SOURCES = \
83 ioam/lib-trace/trace_test.c \
84 ioam/lib-trace/trace_plugin.api.h
86 vppapitestplugins_LTLIBRARIES += ioam_trace_test_plugin.la
88 nobase_include_HEADERS += \
89 ioam/lib-trace/trace_util.h \
90 ioam/export-common/ioam_export.h
92 ########################################
94 ########################################
95 IOAM_VXLAN_GPE_SRC = \
96 ioam/lib-vxlan-gpe/ioam_encap.c \
97 ioam/lib-vxlan-gpe/ioam_decap.c \
98 ioam/lib-vxlan-gpe/ioam_transit.c \
99 ioam/lib-vxlan-gpe/ioam_pop.c \
100 ioam/lib-vxlan-gpe/vxlan_gpe_api.c \
101 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_trace.c \
102 ioam/lib-vxlan-gpe/vxlan_gpe_ioam.c \
103 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.c \
104 ioam/export-vxlan-gpe/vxlan_gpe_node.c \
105 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api.h\
106 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_thread.c
108 IOAM_VXLAN_GPE_NOINST_HDR = \
109 ioam/lib-vxlan-gpe/vxlan_gpe_all_api_h.h \
110 ioam/lib-vxlan-gpe/vxlan_gpe_msg_enum.h \
111 ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api.h \
112 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_util.h \
113 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_packet.h \
114 ioam/lib-vxlan-gpe/vxlan_gpe_ioam.h \
115 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_all_api_h.h \
116 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_msg_enum.h \
117 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api.h
119 IOAM_VXLAN_GPE_API = ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api
120 IOAM_VXLAN_GPE_API += ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api
122 ioam_vxlan_gpe_test_plugin_la_SOURCES = \
123 ioam/lib-vxlan-gpe/vxlan_gpe_test.c \
124 ioam/lib-vxlan-gpe/vxlan_gpe_plugin.api.h
126 vppapitestplugins_LTLIBRARIES += ioam_vxlan_gpe_test_plugin.la
128 vxlan_gpe_ioam_export_test_plugin_la_SOURCES = \
129 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_test.c \
130 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_plugin.api.h
132 vppapitestplugins_LTLIBRARIES += vxlan_gpe_ioam_export_test_plugin.la
134 ########################################
136 ########################################
139 ioam/encap/ip6_ioam_e2e.c \
140 ioam/encap/ip6_ioam_seqno.c \
141 ioam/lib-e2e/ioam_seqno_lib.c
143 IOAM_E2E_NOINST_HDR = \
144 ioam/encap/ip6_ioam_e2e.h \
145 ioam/encap/ip6_ioam_seqno.h \
146 ioam/lib-e2e/ioam_seqno_lib.h
148 ########################################
150 ########################################
152 IPFIX_COLLECTOR_SRC = \
153 ioam/ipfixcollector/ipfixcollector.c \
154 ioam/ipfixcollector/node.c \
155 ioam/ipfixcollector/ipfixcollector.h
157 ########################################
159 ########################################
162 ioam/analyse/ip6/ip6_ioam_analyse.c \
163 ioam/analyse/ip6/node.c \
164 ioam/analyse/ip6/ip6_ioam_analyse.h \
165 ioam/analyse/ioam_summary_export.c \
166 ioam/analyse/ioam_analyse.h \
167 ioam/analyse/ioam_summary_export.h
169 ########################################
170 # iOAM record cache and rewrite
171 ########################################
173 IOAM_IP6_MANYCAST_SRC = \
174 ioam/ip6/ioam_cache.c \
175 ioam/ip6/ioam_cache_node.c \
176 ioam/ip6/ioam_cache_tunnel_select_node.c \
177 ioam/ip6/ioam_cache.api.h
179 IOAM_IP6_MANYCAST_API = ioam/ip6/ioam_cache.api
181 IOAM_IP6_MANYCAST_NOINST_HDR = \
182 ioam/ip6/ioam_cache_all_api_h.h \
183 ioam/ip6/ioam_cache_msg_enum.h \
184 ioam/ip6/ioam_cache.api.h
187 ########################################
190 ioam/udp-ping/udp_ping_node.c \
191 ioam/udp-ping/udp_ping_util.c \
192 ioam/udp-ping/udp_ping_export.c \
193 ioam/udp-ping/udp_ping_api.c
195 UDP_PING_NOINST_HDR = \
196 ioam/udp-ping/udp_ping_packet.h \
197 ioam/udp-ping/udp_ping.h \
198 ioam/udp-ping/udp_ping_util.h \
199 ioam/udp-ping/udp_ping_all_api_h.h \
200 ioam/udp-ping/udp_ping_msg_enum.h \
201 ioam/udp-ping/udp_ping.api.h
203 UDP_PING_API = ioam/udp-ping/udp_ping.api
205 udp_ping_test_plugin_la_SOURCES = \
206 ioam/udp-ping/udp_ping_test.c \
207 ioam/udp-ping/udp_ping_plugin.api.h
209 vppapitestplugins_LTLIBRARIES += udp_ping_test_plugin.la
211 ########################################
213 ########################################
215 ioam_plugin_la_SOURCES = \
219 $(IOAM_VXLAN_GPE_SRC) \
221 $(IPFIX_COLLECTOR_SRC) \
222 $(IOAM_ANALYSE_SRC) \
223 $(IOAM_IP6_MANYCAST_SRC) \
230 $(IOAM_VXLAN_GPE_API) \
231 $(IOAM_IP6_MANYCAST_API) \
234 nobase_apiinclude_HEADERS += \
235 $(IOAM_POT_NOINST_HDR) \
236 $(IOAM_EXPORT_NOINST_HDR) \
237 $(IOAM_TRACE_NOINST_HDR) \
238 $(IOAM_VXLAN_GPE_NOINST_HDR) \
239 $(IOAM_E2E_NOINST_HDR) \
240 $(IOAM_IP6_MANYCAST_NOINST_HDR) \
241 $(UDP_PING_NOINST_HDR)
243 vppplugins_LTLIBRARIES += ioam_plugin.la