utils: persist effective extra_src and extra_dest options in state file
authorJo-Philipp Wich <jo@mein.io>
Fri, 22 Nov 2019 17:51:22 +0000 (18:51 +0100)
committerJo-Philipp Wich <jo@mein.io>
Fri, 22 Nov 2019 17:51:50 +0000 (18:51 +0100)
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
utils.c

diff --git a/utils.c b/utils.c
index a1cba7ecccee8f6b4f2f1ae34f8af3234f2a7eeb..441dbd26020a7864411688e2ac8f127b051903db 100644 (file)
--- a/utils.c
+++ b/utils.c
@@ -569,6 +569,22 @@ write_zone_uci(struct uci_context *ctx, struct fw3_zone *z,
                }
        }
 
+       if (z->extra_src)
+       {
+               ptr.o      = NULL;
+               ptr.option = "extra_src";
+               ptr.value  = z->extra_src;
+               uci_set(ctx, &ptr);
+       }
+
+       if (z->extra_dest)
+       {
+               ptr.o      = NULL;
+               ptr.option = "extra_dest";
+               ptr.value  = z->extra_dest;
+               uci_set(ctx, &ptr);
+       }
+
        sprintf(buf, "0x%x", z->flags[0]);
        ptr.o      = NULL;
        ptr.option = "__flags_v4";