Re-implement 'try' command

git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@4336 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
This commit is contained in:
teastep 2006-08-09 20:27:43 +00:00
parent 189279ad92
commit a9a5474f7c
3 changed files with 19 additions and 8 deletions

View File

@ -14,6 +14,8 @@ Changes in 3.3.0
7) Merge shorewall.conf handling changes. 7) Merge shorewall.conf handling changes.
8) Re-implement the 'try' command.

View File

@ -42,6 +42,17 @@ Other changes in 3.3.0
removed. Please use ipsets to implement dynamic zones as described removed. Please use ipsets to implement dynamic zones as described
in http://www.shorewall.net/DynamicZones.html. in http://www.shorewall.net/DynamicZones.html.
2) The 'try' command has been re-implemented. The command now does the
following:
- shorewall save
- shorewall restart <specified directory>
- if the restart is not successful, the configuration is
automatically restored
- otherwise, if a timeout is given then
- sleep for the number of seconds specified and
- shorewall restore
Migration Considerations: Migration Considerations:
1) Support for dynamic zones (DYNAMIC_ZONES=Yes in shorewall.conf and 1) Support for dynamic zones (DYNAMIC_ZONES=Yes in shorewall.conf and

View File

@ -1811,15 +1811,13 @@ case "$COMMAND" in
VERBOSE=$(make_verbose) VERBOSE=$(make_verbose)
[ -n "$NOROUTES" ] && NOROUTES=-n [ -n "$NOROUTES" ] && NOROUTES=-n
export -n CONFIG_PATH export -n CONFIG_PATH
if ! $0 $debugging $VERBOSE -c $2 restart; then if $0 $debugging $VERBOSE save; then
if ! $IPTABLES -L shorewall > /dev/null 2> /dev/null; then if $0 $debugging $VERBOSE restart $2 ; then
$0 $VERBOSE $NOROUTES start if [ $# -eq 3 ]; then
fi
elif ! $IPTABLES -L shorewall > /dev/null 2> /dev/null; then
$0 $VERBOSE $NOROUTES start
elif [ $# -eq 3 ]; then
sleep $3 sleep $3
$0 $VERBOSE $NOROUTES restart $0 $VERBOSE $NOROUTES restore
fi
fi
fi fi
;; ;;
logwatch) logwatch)