From 990e5c81806f830990006070ebf9a58ebd49b92a Mon Sep 17 00:00:00 2001 From: gordoste Date: Wed, 19 Jun 2019 20:55:31 +1000 Subject: [PATCH] Calling ip_napt_init() after loading portmap table wipes it out --- user/user_main.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/user/user_main.c b/user/user_main.c index 042e83b..93b8510 100644 --- a/user/user_main.c +++ b/user/user_main.c @@ -4238,20 +4238,19 @@ void ICACHE_FLASH_ATTR user_init() os_printf("\r\n\r\nWiFi Repeater %s starting\r\n\nrunning rom %d\r", ESP_REPEATER_VERSION, rboot_get_current_rom()); // Load config - if (config_load(&config) == 0) + uint8_t config_state = config_load(&config); + ip_napt_init(config.max_nat, config.max_portmap); + if (config_state == 0) { // valid config in FLASH, can read portmap table blob_load(0, (uint32_t *)ip_portmap_table, sizeof(struct portmap_table) * IP_PORTMAP_MAX); } else { - // clear portmap table blob_zero(0, sizeof(struct portmap_table) * IP_PORTMAP_MAX); } - ip_napt_init(config.max_nat, config.max_portmap); - if (config.tcp_timeout != 0) ip_napt_set_tcp_timeout(config.tcp_timeout); if (config.udp_timeout != 0)