Procházet zdrojové kódy

Almost working: do_exec does not take into account actions if not at $1

Laurent HUBERT před 9 měsíci
rodič
revize
598d002ca8

+ 4 - 1
Makefile

@@ -12,7 +12,7 @@ SYSTEMD_SERVICE_FILE=$(SYSTEMD_INSTALL_DIR)/$(SERVICE_FILE)
 #SysVinit installation dir
 #INSTALL_DIR=/etc/init.d
 
-install: config $(INSTALL_DIR)/lfirewall $(FIREWALL_ETC_DIR)/setup $(FIREWALL_ETC_DIR)/execute_dir $(SYSTEMD_SERVICE_FILE) examples
+install: config $(INSTALL_DIR)/lfirewall $(FIREWALL_ETC_DIR)/setup $(INSTALL_DIR)/execute_lfirewall_dir $(SYSTEMD_SERVICE_FILE) examples
 
 config:
 	$(MKDIR) -p $(FIREWALL_ETC_DIR) $(FIREWALL_ETC_DIR)/post-start-stop.d $(FIREWALL_ETC_DIR)/post-up-down.d
@@ -24,6 +24,9 @@ examples: $(FIREWALL_ETC_DIR)/post-start-stop.d/post-start-stop.example $(FIREWA
 $(INSTALL_DIR)/lfirewall: scripts/lfirewall
 	$(CP) $< $@
 
+$(INSTALL_DIR)/execute_lfirewall_dir: scripts/execute_lfirewall_dir
+	$(CP) $< $@
+
 $(FIREWALL_ETC_DIR)/%: scripts/%
 	$(CP) $< $@
 

+ 3 - 2
etc/post-up-down-routing.example

@@ -1,7 +1,8 @@
 # Creates a routing rule to external interface
-if [ -z ${1:-}]
+DEFAULT_NET_INTERFACE=eth0
+if [ -z ${1:-} ]
 then
-    external_if=eth0
+    external_if=${DEFAULT_NET_INTERFACE}
 else
     external_if=$1
 fi

scripts/execute_dir → scripts/execute_lfirewall_dir


+ 3 - 2
scripts/lfirewall

@@ -292,12 +292,13 @@ fw_execute () {
 	fw_whitelist $do_action
 }
 
+EXECUTE_LFIREWALL_DIR=`dirname $0`/execute_lfirewall_dir
 
 fw_execute_post_up_down(){
 	local do_action
 	do_action=$1
 	set +eu
-	${CONFIGURATION_DIR}/execute_dir -f ${do_action} ${POST_UP_DOWN_SCRIPTS_DIR}
+	${EXECUTE_LFIREWALL_DIR} -f ${do_action} ${POST_UP_DOWN_SCRIPTS_DIR}
 	set -eu
 }
 
@@ -306,7 +307,7 @@ fw_execute_post_start_stop(){
 	local do_action
 	do_action=$1
 	set +eu
-	${CONFIGURATION_DIR}/execute_dir ${do_action} ${POST_START_STOP_SCRIPTS_DIR}
+	${EXECUTE_LFIREWALL_DIR} ${do_action} ${POST_START_STOP_SCRIPTS_DIR}
 	set -eu
 }