Message ID | 20190424074434.6419-1-rlanghammer@web.de |
---|---|
State | Superseded |
Headers | show |
diff --git a/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall b/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall index d460222..6ae62b6 100755 --- a/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall +++ b/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall @@ -11,7 +11,7 @@ FIREWALL_DIR=/usr/lib/firewall.d service_triggers() { - procd_add_reload_trigger "fff-firewall" + procd_add_reload_trigger "fff-firewall network" } start_service()
Hallo Robert, vielen Dank für den Patch. Ein paar Fragen unten. > -----Original Message----- > From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf Of > Robert Langhammer > Sent: Mittwoch, 24. April 2019 09:45 > To: franken-dev@freifunk.net > Subject: [PATCH] fff-firewall: Add network to procd_add_reload_trigger > > fff-firewall depends on network.wan.ifname. By adding network, changes there > will invoke a firewall reload called by "reload-config". > Scripts that play with "network" do not need pay attention to the firewall if > "reload-config" is used. > > Signed-off-by: Robert Langhammer <rlanghammer@web.de> > --- > src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall > b/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall > index d460222..6ae62b6 100755 > --- a/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall > +++ b/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall > @@ -11,7 +11,7 @@ FIREWALL_DIR=/usr/lib/firewall.d > > service_triggers() > { > - procd_add_reload_trigger "fff-firewall" Ich habe mal in der Doku nachgelesen: https://openwrt.org/docs/guide-developer/procd-init-scripts#procd_triggers_on_config_filenetwork_interface_changes Wenn ich das richtig verstanden habe, müsste es ein uci file "fff-firewall" geben, damit das so funktioniert?! Das gibt es nämlich nicht. Ist die Doku falsch, oder ist die Zeile in der FW im Moment nutzlos. > + procd_add_reload_trigger "fff-firewall network" Ich habe in der Doku (gleicher Link, aber weiter unten im Text) noch was interessantes gefunden: procd_add_interface_trigger "interface.*" <interface> /etc/init.d/<service> reload Wenn ich das richtig verstehe, könnte man einfach folgendes machen und wäre spezifisch für Änderungen des WAN interfaces: service_triggers() { procd_add_interface_trigger "interface.*" "wan" /etc/init.d/fff-firewall start } Damit hätten wir dann auch gleich das "start" dort stehen und müssen nicht mehr testen, ob reload in diesem Fall auch wirklich start triggert (da gäbe es laut der Doku noch eine Zusatzbedingung.) Was meinst du? Grüße Adrian PS: Entschuldige, dass ich dich erst den Patch schreiben lassen und dann nochmal ewig dran rumdiskutiere. Aber erst durch den Patch weiß ich, wonach ich suchen muss ... :-) > } > > start_service() > -- > 2.20.1
hallo Adrian, irgendwie funktioniert das ganze nicht so wie ich mir das vorgestellt habe. Es waere aber schon schoen, wenn es so gehen wuerde. Ich muss da noch einiges taesten. Im Moment scheint es so, dass wir das initscript weiter umbauen muessen. Dauert also noch etwas. So geht es jedenfalls nicht. Das kommt davon, wenn man ungetestete Patches schickt. Auch wenn sie so simpel sind :-) Robert Am 24.04.19 um 17:58 schrieb Adrian Schmutzler: > Hallo Robert, > > vielen Dank für den Patch. > > Ein paar Fragen unten. > >> -----Original Message----- >> From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf Of >> Robert Langhammer >> Sent: Mittwoch, 24. April 2019 09:45 >> To: franken-dev@freifunk.net >> Subject: [PATCH] fff-firewall: Add network to procd_add_reload_trigger >> >> fff-firewall depends on network.wan.ifname. By adding network, changes there >> will invoke a firewall reload called by "reload-config". >> Scripts that play with "network" do not need pay attention to the firewall if >> "reload-config" is used. >> >> Signed-off-by: Robert Langhammer <rlanghammer@web.de> >> --- >> src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall >> b/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall >> index d460222..6ae62b6 100755 >> --- a/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall >> +++ b/src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall >> @@ -11,7 +11,7 @@ FIREWALL_DIR=/usr/lib/firewall.d >> >> service_triggers() >> { >> - procd_add_reload_trigger "fff-firewall" > Ich habe mal in der Doku nachgelesen: > https://openwrt.org/docs/guide-developer/procd-init-scripts#procd_triggers_on_config_filenetwork_interface_changes > > Wenn ich das richtig verstanden habe, müsste es ein uci file "fff-firewall" geben, damit das so funktioniert?! Das gibt es nämlich nicht. > Ist die Doku falsch, oder ist die Zeile in der FW im Moment nutzlos. > >> + procd_add_reload_trigger "fff-firewall network" > Ich habe in der Doku (gleicher Link, aber weiter unten im Text) noch was interessantes gefunden: > procd_add_interface_trigger "interface.*" <interface> /etc/init.d/<service> reload > > Wenn ich das richtig verstehe, könnte man einfach folgendes machen und wäre spezifisch für Änderungen des WAN interfaces: > > service_triggers() > { > procd_add_interface_trigger "interface.*" "wan" /etc/init.d/fff-firewall start > } > > Damit hätten wir dann auch gleich das "start" dort stehen und müssen nicht mehr testen, ob reload in diesem Fall auch wirklich start triggert (da gäbe es laut der Doku noch eine Zusatzbedingung.) > > Was meinst du? > > Grüße > > Adrian > > PS: Entschuldige, dass ich dich erst den Patch schreiben lassen und dann nochmal ewig dran rumdiskutiere. Aber erst durch den Patch weiß ich, wonach ich suchen muss ... :-) > >> } >> >> start_service() >> -- >> 2.20.1
fff-firewall depends on network.wan.ifname. By adding network, changes there will invoke a firewall reload called by "reload-config". Scripts that play with "network" do not need pay attention to the firewall if "reload-config" is used. Signed-off-by: Robert Langhammer <rlanghammer@web.de> --- src/packages/fff/fff-firewall/files/etc/init.d/fff-firewall | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.20.1