diff options
| author | Your Name <you@example.com> | 2026-05-17 16:39:31 +0530 |
|---|---|---|
| committer | Your Name <you@example.com> | 2026-05-17 16:39:31 +0530 |
| commit | 0c2c67b463d6a90aaa0bb69bf3c91dba1d9ec3ec (patch) | |
| tree | afd9d9bca2d184825ebf7413ec31830e14131030 /CMakeLists.txt | |
| parent | 3342c8e7b4f645c75470d3d893d09037a672cfd2 (diff) | |
feat: per-client NAT filtering via LWIP_HOOK_IP4_CANFORWARD
- Add lwip_tollgate_hooks.h defining LWIP_HOOK_IP4_CANFORWARD macro
- Inject hook into lwIP build via CMakeLists.txt ESP_IDF_LWIP_HOOK_FILENAME
- Filter forwarded packets by source IP against firewall allowed list
- Only filter packets from AP subnet (10.192.45.0/24), allow all others
- Fix byte order bug: use network byte order for firewall_is_client_allowed
- NAT always enabled, removed global NAT toggle functions
- Remove spent-secret tracking from session.c (mint is authority)
- Remove unused get_ap_netif() function
- Reduce API server stack from 32KB to 16KB (fixes ESP_ERR_HTTPD_TASK)
- Add esp_random.h stub for unit tests
- All 186 unit tests passing
- Verified on hardware: block->pay->allow->revoke->block E2E works
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index d93e479..4214983 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
| @@ -2,3 +2,7 @@ cmake_minimum_required(VERSION 3.16) | |||
| 2 | set(PARTITION_CSV_PATH "${CMAKE_SOURCE_DIR}/partitions.csv") | 2 | set(PARTITION_CSV_PATH "${CMAKE_SOURCE_DIR}/partitions.csv") |
| 3 | include($ENV{IDF_PATH}/tools/cmake/project.cmake) | 3 | include($ENV{IDF_PATH}/tools/cmake/project.cmake) |
| 4 | project(esp32-tollgate) | 4 | project(esp32-tollgate) |
| 5 | |||
| 6 | idf_component_get_property(lwip lwip COMPONENT_LIB) | ||
| 7 | target_compile_options(${lwip} PRIVATE "-I${PROJECT_DIR}/main") | ||
| 8 | target_compile_definitions(${lwip} PRIVATE "-DESP_IDF_LWIP_HOOK_FILENAME=\"lwip_tollgate_hooks.h\"") | ||