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
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/export/ioam_export_all_api_h.h \
110 ioam/lib-vxlan-gpe/vxlan_gpe_all_api_h.h \
111 ioam/lib-vxlan-gpe/vxlan_gpe_msg_enum.h \
112 ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api.h \
113 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_util.h \
114 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_packet.h \
115 ioam/lib-vxlan-gpe/vxlan_gpe_ioam.h \
116 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_all_api_h.h \
117 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_msg_enum.h \
118 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api.h
120 IOAM_VXLAN_GPE_API = ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api
121 IOAM_VXLAN_GPE_API += ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api
123 ioam_vxlan_gpe_test_plugin_la_SOURCES = \
124 ioam/lib-vxlan-gpe/vxlan_gpe_test.c \
125 ioam/lib-vxlan-gpe/vxlan_gpe_plugin.api.h
127 vppapitestplugins_LTLIBRARIES += ioam_vxlan_gpe_test_plugin.la
129 vxlan_gpe_ioam_export_test_plugin_la_SOURCES = \
130 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_test.c \
131 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_plugin.api.h
133 vppapitestplugins_LTLIBRARIES += vxlan_gpe_ioam_export_test_plugin.la
135 ########################################
137 ########################################
140 ioam/encap/ip6_ioam_e2e.c \
141 ioam/encap/ip6_ioam_seqno.c \
142 ioam/lib-e2e/ioam_seqno_lib.c
144 IOAM_E2E_NOINST_HDR = \
145 ioam/encap/ip6_ioam_e2e.h \
146 ioam/encap/ip6_ioam_seqno.h \
147 ioam/lib-e2e/ioam_seqno_lib.h
149 ########################################
151 ########################################
153 IPFIX_COLLECTOR_SRC = \
154 ioam/ipfixcollector/ipfixcollector.c \
155 ioam/ipfixcollector/node.c \
156 ioam/ipfixcollector/ipfixcollector.h
158 ########################################
160 ########################################
163 ioam/analyse/ip6/ip6_ioam_analyse.c \
164 ioam/analyse/ip6/node.c \
165 ioam/analyse/ip6/ip6_ioam_analyse.h \
166 ioam/analyse/ioam_summary_export.c \
167 ioam/analyse/ioam_analyse.h \
168 ioam/analyse/ioam_summary_export.h
170 ########################################
171 # iOAM record cache and rewrite
172 ########################################
174 IOAM_IP6_MANYCAST_SRC = \
175 ioam/ip6/ioam_cache.c \
176 ioam/ip6/ioam_cache_node.c \
177 ioam/ip6/ioam_cache_tunnel_select_node.c \
178 ioam/ip6/ioam_cache.api.h
180 IOAM_IP6_MANYCAST_API = ioam/ip6/ioam_cache.api
182 IOAM_IP6_MANYCAST_NOINST_HDR = \
183 ioam/ip6/ioam_cache_all_api_h.h \
184 ioam/ip6/ioam_cache_msg_enum.h \
185 ioam/ip6/ioam_cache.api.h
188 ########################################
191 ioam/udp-ping/udp_ping_node.c \
192 ioam/udp-ping/udp_ping_util.c \
193 ioam/udp-ping/udp_ping_export.c \
194 ioam/udp-ping/udp_ping_api.c
196 UDP_PING_NOINST_HDR = \
197 ioam/udp-ping/udp_ping_packet.h \
198 ioam/udp-ping/udp_ping.h \
199 ioam/udp-ping/udp_ping_util.h \
200 ioam/udp-ping/udp_ping_all_api_h.h \
201 ioam/udp-ping/udp_ping_msg_enum.h \
202 ioam/udp-ping/udp_ping.api.h
204 UDP_PING_API = ioam/udp-ping/udp_ping.api
206 udp_ping_test_plugin_la_SOURCES = \
207 ioam/udp-ping/udp_ping_test.c \
208 ioam/udp-ping/udp_ping_plugin.api.h
210 vppapitestplugins_LTLIBRARIES += udp_ping_test_plugin.la
212 ########################################
214 ########################################
216 ioam_plugin_la_SOURCES = \
220 $(IOAM_VXLAN_GPE_SRC) \
222 $(IPFIX_COLLECTOR_SRC) \
223 $(IOAM_ANALYSE_SRC) \
224 $(IOAM_IP6_MANYCAST_SRC) \
231 $(IOAM_VXLAN_GPE_API) \
232 $(IOAM_IP6_MANYCAST_API) \
236 $(IOAM_POT_NOINST_HDR) \
237 $(IOAM_EXPORT_NOINST_HDR) \
238 $(IOAM_TRACE_NOINST_HDR) \
239 $(IOAM_VXLAN_GPE_NOINST_HDR) \
240 $(IOAM_E2E_NOINST_HDR) \
241 $(IOAM_IP6_MANYCAST_NOINST_HDR) \
242 $(UDP_PING_NOINST_HDR)
244 vppplugins_LTLIBRARIES += ioam_plugin.la