@@ -3,22 +3,23 @@ CFLAGS:=-Wall -Werror -Wextra -I. -D_GNU_SOURCE
33CFLAGS+ =-g -ggdb -Wdeclaration-after-statement
44LDFLAGS+ =-pthread
55
6+ #
67# Debug flags:
7- # CFLAGS+=-DDEBUG_TAP
8- # print ethernet headers
9- # CFLAGS+=-DDEBUG_ETH
10- # print ip headers
11- # CFLAGS+=-DDEBUG_IP
12- # print tcp headers
13- # CFLAGS+=-DDEBUG_TCP
14- # print esp header data
15- CFLAGS+ =-DWOLFIP_DEBUG_ESP
16- # CFLAGS+=-DWOLFIP_DEBUG_ESP_VERBOSE
17-
18- # ESP support
19- # CFLAGS+=-DWOLFIP_ESP
20- # CFLAGS+=-DWOLFSSL_WOLFIP
21- # LDFLAGS+=-lwolfssl
8+ # tap debug:
9+ # CFLAGS+=-DDEBUG_TAP
10+ #
11+ # print ethernet headers:
12+ # CFLAGS+=-DDEBUG_ETH
13+ #
14+ # print ip headers:
15+ # CFLAGS+=-DDEBUG_IP
16+ #
17+ # print tcp headers:
18+ # CFLAGS+=-DDEBUG_TCP
19+ #
20+ # print esp header data:
21+ # CFLAGS+=-DWOLFIP_DEBUG_ESP
22+ #
2223
2324UNAME_S: =$(shell uname -s)
2425UNAME_M: =$(shell uname -m)
@@ -119,6 +120,9 @@ OBJ=build/wolfip.o \
119120IPFILTER_OBJ =build/ipfilter/wolfip.o \
120121 $(TAP_OBJ )
121122
123+ ESP_OBJ =build/esp/wolfip.o \
124+ $(TAP_OBJ )
125+
122126HAVE_WOLFSSL: =$(shell printf "#include <wolfssl/options.h>\nint main(void) {return 0;}\n" | $(CC ) $(CFLAGS ) -x c - -c -o /dev/null 2>/dev/null && echo 1)
123127
124128# Require wolfSSL unless the requested goals are wolfSSL-independent (unit/cppcheck/clean).
@@ -171,6 +175,11 @@ asan: $(EXE) $(LIB)
171175asan:CFLAGS+=-fsanitize =address
172176asan:LDFLAGS+ =-static-libasan
173177
178+ ESP_CFLAGS = \
179+ -DWOLFIP_ESP \
180+ -DWOLFSSL_WOLFIP \
181+ -DDEBUG_IP \
182+ -DWOLFIP_DEBUG_ESP
174183
175184# Test
176185
@@ -206,9 +215,6 @@ build/tcp_netcat_select: $(OBJ) build/port/posix/bsd_socket.o build/test/tcp_net
206215 @echo " [LD] $@ "
207216 @$(CC ) $(CFLAGS ) $(LDFLAGS ) -o $@ $(BEGIN_GROUP ) $(^ ) $(END_GROUP )
208217
209- build/test-esp : $(OBJ ) build/test/test_esp.o
210- @echo " [LD] $@ "
211- @$(CC ) $(CFLAGS ) $(LDFLAGS ) -o $@ $(BEGIN_GROUP ) $(^ ) $(END_GROUP )
212218
213219build/test-wolfssl:CFLAGS+ =-Wno-cpp -DWOLFSSL_DEBUG -DWOLFSSL_WOLFIP
214220build/test-httpd:CFLAGS+ =-Wno-cpp -DWOLFSSL_DEBUG -DWOLFSSL_WOLFIP -Isrc/http
@@ -229,6 +235,20 @@ build/ipfilter/wolfip.o: src/wolfip.c
229235
230236build/test/ipfilter_logger.o : CFLAGS+=-DCONFIG_IPFILTER=1
231237
238+ # ipsec esp
239+ build/esp/wolfip.o : src/wolfip.c
240+ @mkdir -p ` dirname $@ ` || true
241+ @echo " [CC] $< (esp)"
242+ @$(CC ) $(CFLAGS ) $(ESP_CFLAGS ) -c $< -o $@
243+
244+ build/test/test_esp.o : src/test/test_esp.c
245+ @echo " [CC] $@ "
246+ @$(CC ) $(CFLAGS ) $(ESP_CFLAGS ) -c $< -o $@
247+
248+ build/test-esp : $(ESP_OBJ ) build/test/test_esp.o
249+ @echo " [LD] $@ "
250+ @$(CC ) $(CFLAGS ) $(ESP_CFLAGS ) $(LDFLAGS ) -o $@ $(BEGIN_GROUP ) $(^ ) -lwolfssl $(END_GROUP )
251+
232252build/test-wolfssl-forwarding : build/test/test_wolfssl_forwarding.o build/test/wolfip_forwarding.o $(TAP_OBJ ) build/port/wolfssl_io.o build/certs/server_key.o build/certs/ca_cert.o build/certs/server_cert.o
233253 @echo " [LD] $@ "
234254 @$(CC ) $(CFLAGS ) $(LDFLAGS ) -o $@ $(BEGIN_GROUP ) $(^ ) -lwolfssl $(END_GROUP )
0 commit comments