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/export/ioam_export_all_api_h.h \
74 ioam/lib-trace/trace_all_api_h.h \
75 ioam/lib-trace/trace_msg_enum.h \
76 ioam/lib-trace/trace.api.h \
77 ioam/lib-trace/trace_util.h \
78 ioam/encap/ip6_ioam_trace.h \
79 ioam/lib-trace/trace_config.h
81 IOAM_TRACE_API = ioam/lib-trace/trace.api
83 ioam_trace_test_plugin_la_SOURCES = \
84 ioam/lib-trace/trace_test.c \
85 ioam/lib-trace/trace_plugin.api.h
87 vppapitestplugins_LTLIBRARIES += ioam_trace_test_plugin.la
89 nobase_include_HEADERS += \
90 ioam/lib-trace/trace_util.h \
91 ioam/export-common/ioam_export.h
93 ########################################
95 ########################################
96 IOAM_VXLAN_GPE_SRC = \
97 ioam/lib-vxlan-gpe/ioam_encap.c \
98 ioam/lib-vxlan-gpe/ioam_decap.c \
99 ioam/lib-vxlan-gpe/ioam_transit.c \
100 ioam/lib-vxlan-gpe/ioam_pop.c \
101 ioam/lib-vxlan-gpe/vxlan_gpe_api.c \
102 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_trace.c \
103 ioam/lib-vxlan-gpe/vxlan_gpe_ioam.c \
104 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.c \
105 ioam/export-vxlan-gpe/vxlan_gpe_node.c \
106 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api.h\
107 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_thread.c
109 IOAM_VXLAN_GPE_NOINST_HDR = \
110 ioam/export/ioam_export_all_api_h.h \
111 ioam/lib-vxlan-gpe/vxlan_gpe_all_api_h.h \
112 ioam/lib-vxlan-gpe/vxlan_gpe_msg_enum.h \
113 ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api.h \
114 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_util.h \
115 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_packet.h \
116 ioam/lib-vxlan-gpe/vxlan_gpe_ioam.h \
117 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_all_api_h.h \
118 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_msg_enum.h \
119 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api.h
121 IOAM_VXLAN_GPE_API = ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api
122 IOAM_VXLAN_GPE_API += ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api
124 ioam_vxlan_gpe_test_plugin_la_SOURCES = \
125 ioam/lib-vxlan-gpe/vxlan_gpe_test.c \
126 ioam/lib-vxlan-gpe/vxlan_gpe_plugin.api.h
128 vppapitestplugins_LTLIBRARIES += ioam_vxlan_gpe_test_plugin.la
130 vxlan_gpe_ioam_export_test_plugin_la_SOURCES = \
131 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_test.c \
132 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_plugin.api.h
134 vppapitestplugins_LTLIBRARIES += vxlan_gpe_ioam_export_test_plugin.la
136 ########################################
138 ########################################
141 ioam/encap/ip6_ioam_e2e.c \
142 ioam/encap/ip6_ioam_seqno.c \
143 ioam/lib-e2e/ioam_seqno_lib.c
145 IOAM_E2E_NOINST_HDR = \
146 ioam/encap/ip6_ioam_e2e.h \
147 ioam/encap/ip6_ioam_seqno.h \
148 ioam/lib-e2e/ioam_seqno_lib.h
150 ########################################
152 ########################################
154 IPFIX_COLLECTOR_SRC = \
155 ioam/ipfixcollector/ipfixcollector.c \
156 ioam/ipfixcollector/node.c \
157 ioam/ipfixcollector/ipfixcollector.h
159 ########################################
161 ########################################
164 ioam/analyse/ip6/ip6_ioam_analyse.c \
165 ioam/analyse/ip6/node.c \
166 ioam/analyse/ip6/ip6_ioam_analyse.h \
167 ioam/analyse/ioam_summary_export.c \
168 ioam/analyse/ioam_analyse.h \
169 ioam/analyse/ioam_summary_export.h
171 ########################################
172 # iOAM record cache and rewrite
173 ########################################
175 IOAM_IP6_MANYCAST_SRC = \
176 ioam/ip6/ioam_cache.c \
177 ioam/ip6/ioam_cache_node.c \
178 ioam/ip6/ioam_cache_tunnel_select_node.c \
179 ioam/ip6/ioam_cache.api.h
181 IOAM_IP6_MANYCAST_API = ioam/ip6/ioam_cache.api
183 IOAM_IP6_MANYCAST_NOINST_HDR = \
184 ioam/ip6/ioam_cache_all_api_h.h \
185 ioam/ip6/ioam_cache_msg_enum.h \
186 ioam/ip6/ioam_cache.api.h
189 ########################################
192 ioam/udp-ping/udp_ping_node.c \
193 ioam/udp-ping/udp_ping_util.c \
194 ioam/udp-ping/udp_ping_export.c \
195 ioam/udp-ping/udp_ping_api.c
197 UDP_PING_NOINST_HDR = \
198 ioam/udp-ping/udp_ping_packet.h \
199 ioam/udp-ping/udp_ping.h \
200 ioam/udp-ping/udp_ping_util.h \
201 ioam/udp-ping/udp_ping_all_api_h.h \
202 ioam/udp-ping/udp_ping_msg_enum.h \
203 ioam/udp-ping/udp_ping.api.h
205 UDP_PING_API = ioam/udp-ping/udp_ping.api
207 udp_ping_test_plugin_la_SOURCES = \
208 ioam/udp-ping/udp_ping_test.c \
209 ioam/udp-ping/udp_ping_plugin.api.h
211 vppapitestplugins_LTLIBRARIES += udp_ping_test_plugin.la
213 ########################################
215 ########################################
217 ioam_plugin_la_SOURCES = \
221 $(IOAM_VXLAN_GPE_SRC) \
223 $(IPFIX_COLLECTOR_SRC) \
224 $(IOAM_ANALYSE_SRC) \
225 $(IOAM_IP6_MANYCAST_SRC) \
232 $(IOAM_VXLAN_GPE_API) \
233 $(IOAM_IP6_MANYCAST_API) \
237 $(IOAM_POT_NOINST_HDR) \
238 $(IOAM_EXPORT_NOINST_HDR) \
239 $(IOAM_TRACE_NOINST_HDR) \
240 $(IOAM_VXLAN_GPE_NOINST_HDR) \
241 $(IOAM_E2E_NOINST_HDR) \
242 $(IOAM_IP6_MANYCAST_NOINST_HDR) \
243 $(UDP_PING_NOINST_HDR)
245 vppplugins_LTLIBRARIES += ioam_plugin.la