mirror of
https://gitlab.com/shorewall/code.git
synced 2025-06-20 01:37:59 +02:00
Generalize the notion of 'exclude list' in the rules file
git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@2503 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
This commit is contained in:
parent
dee6d1ad0e
commit
1beb8c15aa
@ -5265,12 +5265,19 @@ process_rule() # $1 = target
|
|||||||
excludesource=
|
excludesource=
|
||||||
|
|
||||||
case $clients in
|
case $clients in
|
||||||
|
*!*!*)
|
||||||
|
fatal_error "Invalid SOURCE in rule \"$rule\""
|
||||||
|
;;
|
||||||
!*)
|
!*)
|
||||||
if [ $(list_count $clients) -gt 1 ]; then
|
if [ $(list_count $clients) -gt 1 ]; then
|
||||||
excludesource=${clients#!}
|
excludesource=${clients#!}
|
||||||
clients=
|
clients=
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
*!*)
|
||||||
|
excludesource=${clients#*!}
|
||||||
|
clients=${clients%!*}
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
validate_zone $clientzone || fatal_error "Undefined Client Zone in rule \"$rule\""
|
validate_zone $clientzone || fatal_error "Undefined Client Zone in rule \"$rule\""
|
||||||
@ -5316,12 +5323,19 @@ process_rule() # $1 = target
|
|||||||
excludedest=
|
excludedest=
|
||||||
|
|
||||||
case $servers in
|
case $servers in
|
||||||
|
*!*!*)
|
||||||
|
fatal_error "Invalid DEST in rule \"$rule\""
|
||||||
|
;;
|
||||||
!*)
|
!*)
|
||||||
if [ $(list_count $servers) -gt 1 ]; then
|
if [ $(list_count $servers) -gt 1 ]; then
|
||||||
excludedest=${servers#*!}
|
excludedest=${servers#*!}
|
||||||
servers=
|
servers=
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
*!*)
|
||||||
|
excludedest=${servers#*!}
|
||||||
|
servers=${servers%!*}
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
if ! validate_zone $serverzone; then
|
if ! validate_zone $serverzone; then
|
||||||
|
Loading…
x
Reference in New Issue
Block a user