global: remove automatic notrack rules
[project/firewall3.git] / forwards.c
index c610247c8ab6aed99a9d210946c6f807e2607af9..997c30712614373ae3b8f9fd94b02cdc2f8ebc2a 100644 (file)
@@ -38,7 +38,6 @@ fw3_load_forwards(struct fw3_state *state, struct uci_package *p)
        struct uci_section *s;
        struct uci_element *e;
        struct fw3_forward *forward;
-       bool changed;
 
        INIT_LIST_HEAD(&state->forwards);
 
@@ -88,30 +87,15 @@ fw3_load_forwards(struct fw3_state *state, struct uci_package *p)
                continue;
        }
 
-       /* Propagate conntrack requirement flag into all zones connected through
-          forwarding entries and repeat until all zones are normalized */
-       do {
-               changed = false;
-
-               list_for_each_entry(forward, &state->forwards, list)
+       list_for_each_entry(forward, &state->forwards, list)
+       {
+               /* NB: forward family... */
+               if (forward->_dest)
                {
-                       /* NB: forward family... */
-                       if (forward->_dest)
-                       {
-                               fw3_setbit(forward->_dest->flags[0], FW3_FLAG_ACCEPT);
-                               fw3_setbit(forward->_dest->flags[1], FW3_FLAG_ACCEPT);
-
-                               if (forward->_src &&
-                                   (forward->_src->conntrack != forward->_dest->conntrack))
-                               {
-                                       forward->_src->conntrack = true;
-                                       forward->_dest->conntrack = true;
-                                       changed = true;
-                               }
-                       }
+                       fw3_setbit(forward->_dest->flags[0], FW3_FLAG_ACCEPT);
+                       fw3_setbit(forward->_dest->flags[1], FW3_FLAG_ACCEPT);
                }
        }
-       while (changed);
 }