1 diff -ur shorewall-5.2.8.orig/shorewall/configure shorewall-5.2.8/shorewall/configure
2 --- shorewall-5.2.8.orig/shorewall/configure 2020-09-25 00:02:15.000000000 +0200
3 +++ shorewall-5.2.8/shorewall/configure 2024-05-25 17:49:28.409051456 +0200
6 if [ -f /etc/debian_version ]; then
8 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
9 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
10 elif [ -f /etc/altlinux-release ] ; then
12 elif [ -f /etc/redhat-release ]; then
14 if [ $vendor = linux ]; then
15 rcfile=shorewallrc.default;
16 elif [ $vendor = debian -a -f /etc/debian_version ]; then
17 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
18 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
20 rcfile=shorewallrc.$vendor
22 diff -ur shorewall-5.2.8.orig/shorewall/lib.cli-std shorewall-5.2.8/shorewall/lib.cli-std
23 --- shorewall-5.2.8.orig/shorewall/lib.cli-std 2024-05-25 14:52:30.564705737 +0200
24 +++ shorewall-5.2.8/shorewall/lib.cli-std 2024-05-25 17:50:39.342091463 +0200
28 [ $# -eq 1 ] && fatal_error "The -t option requires a timeout value"
29 - echo $2 | egrep -q '[[:digit:]]+[smh]' || fatal_error "The timeout value must be numeric, optionally followed by a suffix (s, m or h)"
30 + echo $2 | grep -E -q '[[:digit:]]+[smh]' || fatal_error "The timeout value must be numeric, optionally followed by a suffix (s, m or h)"
38 - echo $2 | egrep -q '[[:digit:]]+[smh]' || fatal_error "The timeout value must be numeric, optionally followed by a suffix (s, m or h)"
39 + echo $2 | grep -E -q '[[:digit:]]+[smh]' || fatal_error "The timeout value must be numeric, optionally followed by a suffix (s, m or h)"
43 diff -ur shorewall-5.2.8.orig/shorewall/Perl/lib.runtime shorewall-5.2.8/shorewall/Perl/lib.runtime
44 --- shorewall-5.2.8.orig/shorewall/Perl/lib.runtime 2024-05-25 14:52:30.564705737 +0200
45 +++ shorewall-5.2.8/shorewall/Perl/lib.runtime 2024-05-25 17:50:43.246148702 +0200
47 # Generate a list of all network interfaces on the system
49 find_all_interfaces() {
50 - ${IP:-ip} link list | egrep '^[[:digit:]]+:' | cut -d ' ' -f2 | sed -r 's/(@.*)?:$//'
51 + ${IP:-ip} link list | grep -E '^[[:digit:]]+:' | cut -d ' ' -f2 | sed -r 's/(@.*)?:$//'
55 # Generate a list of all network interfaces on the system that have an ipvX address
57 find_all_interfaces1() {
58 - ${IP:-ip} -$g_family addr list | egrep '^[[:digit:]]+:' | cut -d ' ' -f2 | sed -r 's/(@.*)?:$//'
59 + ${IP:-ip} -$g_family addr list | grep -E '^[[:digit:]]+:' | cut -d ' ' -f2 | sed -r 's/(@.*)?:$//'
66 if ! loopback_interface $1; then
67 - if interface_is_up $1 && [ "$(find_first_interface_address_if_any $1)" != 0.0.0.0 ] && [ -z "$($IP -$g_family link list dev $1 2> /dev/null | fgrep 'state DOWN')" ]; then
68 + if interface_is_up $1 && [ "$(find_first_interface_address_if_any $1)" != 0.0.0.0 ] && [ -z "$($IP -$g_family link list dev $1 2> /dev/null | grep -F 'state DOWN')" ]; then
69 if [ "$COMMAND" != enable ]; then
70 [ ! -f ${VARDIR}/${1}_disabled ] && run_isusable_exit $1
73 gateway="nexthop $gateway dead"
76 - if eval echo $route \| fgrep -q \'$gateway\'; then
77 + if eval echo $route \| grep -F -q \'$gateway\'; then
78 eval route=\`echo $route \| sed \'s/$gateway/ /\'\`
79 run_ip route replace table $2 $route
81 diff -ur shorewall-5.2.8.orig/shorewall/Perl/prog.footer shorewall-5.2.8/shorewall/Perl/prog.footer
82 --- shorewall-5.2.8.orig/shorewall/Perl/prog.footer 2020-09-24 23:46:24.000000000 +0200
83 +++ shorewall-5.2.8/shorewall/Perl/prog.footer 2024-05-25 17:49:42.813262647 +0200
88 - if type $1 2> /dev/null | fgrep -q 'is a function'; then
89 + if type $1 2> /dev/null | grep -F -q 'is a function'; then
91 # It's a shell function -- call it
93 diff -ur shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Chains.pm shorewall-5.2.8/shorewall/Perl/Shorewall/Chains.pm
94 --- shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Chains.pm 2020-09-25 00:02:15.000000000 +0200
95 +++ shorewall-5.2.8/shorewall/Perl/Shorewall/Chains.pm 2024-05-25 17:50:54.430312682 +0200
98 emit( qq(if [ -n "\$g_docker" ]; then),
99 qq( $tool -t nat -S DOCKER | tail -n +2 > \${VARDIR}/.nat_DOCKER),
100 - qq( $tool -t nat -S OUTPUT | tail -n +2 | fgrep DOCKER > \${VARDIR}/.nat_OUTPUT),
101 - qq( $tool -t nat -S POSTROUTING | tail -n +2 | fgrep -v SHOREWALL | fgrep -v LIBVIRT > \${VARDIR}/.nat_POSTROUTING),
102 + qq( $tool -t nat -S OUTPUT | tail -n +2 | grep -F DOCKER > \${VARDIR}/.nat_OUTPUT),
103 + qq( $tool -t nat -S POSTROUTING | tail -n +2 | grep -F -v SHOREWALL | grep -F -v LIBVIRT > \${VARDIR}/.nat_POSTROUTING),
104 qq( $tool -t filter -S DOCKER | tail -n +2 > \${VARDIR}/.filter_DOCKER),
105 qq( rm -f \${VARDIR}/.filter_DOCKER-*),
106 qq( [ -n "\$g_dockeringress" ] && $tool -t filter -S DOCKER-INGRESS | tail -n +2 > \${VARDIR}/.filter_DOCKER-INGRESS),
107 @@ -8780,7 +8780,7 @@
108 if ( known_interface( $bridge ) ) {
109 emit( qq( $tool -t filter -S FORWARD | grep '^-A FORWARD.*[io] br-[a-z0-9]\\{12\\}' > \${VARDIR}/.filter_FORWARD) );
111 - emit( qq( $tool -t filter -S FORWARD | egrep '^-A FORWARD.*[io] ($bridge|br-[a-z0-9]{12})' > \${VARDIR}/.filter_FORWARD) );
112 + emit( qq( $tool -t filter -S FORWARD | grep -E '^-A FORWARD.*[io] ($bridge|br-[a-z0-9]{12})' > \${VARDIR}/.filter_FORWARD) );
115 emit( q( [ -s ${VARDIR}/.filter_FORWARD ] || rm -f ${VARDIR}/.filter_FORWARD),
116 @@ -8825,7 +8825,7 @@
119 if chain_exists dynamic; then
120 - $tool -S dynamic | tail -n +2 | fgrep -v -- '-j ACCEPT' > \${VARDIR}/.dynamic
121 + $tool -S dynamic | tail -n +2 | grep -F -v -- '-j ACCEPT' > \${VARDIR}/.dynamic
123 rm -f \${VARDIR}/.dynamic
125 diff -ur shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Config.pm shorewall-5.2.8/shorewall/Perl/Shorewall/Config.pm
126 --- shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Config.pm 2024-05-25 14:52:30.560705678 +0200
127 +++ shorewall-5.2.8/shorewall/Perl/Shorewall/Config.pm 2024-05-25 17:50:46.862201722 +0200
128 @@ -5059,7 +5059,7 @@
132 - $tc && have_capability( 'BASIC_FILTER' ) && system( "$tc filter add basic help 2>&1 | egrep -q match" ) == 0;
133 + $tc && have_capability( 'BASIC_FILTER' ) && system( "$tc filter add basic help 2>&1 | grep -E -q match" ) == 0;
136 sub Fwmark_Rt_Mask() {
137 diff -ur shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Misc.pm shorewall-5.2.8/shorewall/Perl/Shorewall/Misc.pm
138 --- shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Misc.pm 2020-09-25 00:02:15.000000000 +0200
139 +++ shorewall-5.2.8/shorewall/Perl/Shorewall/Misc.pm 2024-05-25 17:50:08.705642277 +0200
140 @@ -2559,7 +2559,7 @@
143 if chain_exists dynamic; then
144 - ${IPTABLES}-save -t filter | grep '^-A dynamic' | fgrep -v -- '-j ACCEPT' > ${VARDIR}/.dynamic
145 + ${IPTABLES}-save -t filter | grep '^-A dynamic' | grep -F -v -- '-j ACCEPT' > ${VARDIR}/.dynamic
149 @@ -2574,7 +2574,7 @@
152 if chain_exists dynamic; then
153 - ${IP6TABLES}-save -t filter | grep '^-A dynamic' | fgrep -v -- '-j ACCEPT' > ${VARDIR}/.dynamic
154 + ${IP6TABLES}-save -t filter | grep '^-A dynamic' | grep -F -v -- '-j ACCEPT' > ${VARDIR}/.dynamic
158 diff -ur shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Proc.pm shorewall-5.2.8/shorewall/Perl/Shorewall/Proc.pm
159 --- shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Proc.pm 2020-09-25 00:02:15.000000000 +0200
160 +++ shorewall-5.2.8/shorewall/Perl/Shorewall/Proc.pm 2024-05-25 17:49:51.965396834 +0200
163 emit( " setting=$setting",
165 - " fgrep -q $setting /proc/net/netfilter/nf_log || setting=$alternative",
166 + " grep -F -q $setting /proc/net/netfilter/nf_log || setting=$alternative",
168 " if echo \$setting > $file; then",
169 ' progress_message "Log Backend set to $setting"',
170 diff -ur shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Providers.pm shorewall-5.2.8/shorewall/Perl/Shorewall/Providers.pm
171 --- shorewall-5.2.8.orig/shorewall/Perl/Shorewall/Providers.pm 2020-09-25 00:02:15.000000000 +0200
172 +++ shorewall-5.2.8/shorewall/Perl/Shorewall/Providers.pm 2024-05-25 17:50:51.250266058 +0200
173 @@ -1061,7 +1061,7 @@
177 - qq(if ! \$IP -6 rule ls | egrep -q "32767:[[:space:]]+from all lookup (default|253)"; then) ,
178 + qq(if ! \$IP -6 rule ls | grep -E -q "32767:[[:space:]]+from all lookup (default|253)"; then) ,
179 qq( qt \$IP -6 rule add from all table $providers{default}->{id} prio 32767\n) ,
180 qq(fi) ) if $family == F_IPV6;
182 @@ -1078,7 +1078,7 @@
183 } elsif ( ! $noautosrc ) {
186 - emit( qq(if ! egrep -q "^20000:[[:space:]]+from $address lookup $id"; then),
187 + emit( qq(if ! grep -E -q "^20000:[[:space:]]+from $address lookup $id"; then),
188 qq( qt \$IP -$family rule del from $address pref 20000),
189 qq( run_ip rule add from $address pref 20000 table $id),
190 qq( echo "\$IP -$family rule del from $address pref 20000> /dev/null 2>&1" >> \${VARDIR}/undo_${table}_routing ),
191 diff -ur shorewall-5.2.8.orig/shorewall6/configure shorewall-5.2.8/shorewall6/configure
192 --- shorewall-5.2.8.orig/shorewall6/configure 2020-09-25 00:02:16.000000000 +0200
193 +++ shorewall-5.2.8/shorewall6/configure 2024-05-25 17:48:41.736367147 +0200
196 if [ -f /etc/debian_version ]; then
198 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
199 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
200 elif [ -f /etc/altlinux-release ] ; then
202 elif [ -f /etc/redhat-release ]; then
204 if [ $vendor = linux ]; then
205 rcfile=shorewallrc.default;
206 elif [ $vendor = debian -a -f /etc/debian_version ]; then
207 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
208 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
210 rcfile=shorewallrc.$vendor
212 diff -ur shorewall-5.2.8.orig/shorewall6-lite/configure shorewall-5.2.8/shorewall6-lite/configure
213 --- shorewall-5.2.8.orig/shorewall6-lite/configure 2020-09-25 00:02:16.000000000 +0200
214 +++ shorewall-5.2.8/shorewall6-lite/configure 2024-05-25 17:49:23.932985828 +0200
217 if [ -f /etc/debian_version ]; then
219 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
220 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
221 elif [ -f /etc/altlinux-release ] ; then
223 elif [ -f /etc/redhat-release ]; then
225 if [ $vendor = linux ]; then
226 rcfile=shorewallrc.default;
227 elif [ $vendor = debian -a -f /etc/debian_version ]; then
228 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
229 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
231 rcfile=shorewallrc.$vendor
233 diff -ur shorewall-5.2.8.orig/shorewall-core/configure shorewall-5.2.8/shorewall-core/configure
234 --- shorewall-5.2.8.orig/shorewall-core/configure 2020-09-25 00:02:15.000000000 +0200
235 +++ shorewall-5.2.8/shorewall-core/configure 2024-05-25 17:49:13.276829586 +0200
238 if [ -f /etc/debian_version ]; then
240 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
241 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
242 elif [ -f /etc/altlinux-release ] ; then
244 elif [ -f /etc/redhat-release ]; then
246 if [ $vendor = linux ]; then
247 rcfile=shorewallrc.default;
248 elif [ $vendor = debian -a -f /etc/debian_version ]; then
249 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
250 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
252 rcfile=shorewallrc.$vendor
254 diff -ur shorewall-5.2.8.orig/shorewall-core/lib.cli shorewall-5.2.8/shorewall-core/lib.cli
255 --- shorewall-5.2.8.orig/shorewall-core/lib.cli 2024-05-25 14:52:30.564705737 +0200
256 +++ shorewall-5.2.8/shorewall-core/lib.cli 2024-05-25 17:50:34.890026189 +0200
259 qt tc -s filter ls root dev $1 && tc -s filter ls root dev $device | grep -v '^$'
260 tc filter show dev $1
261 - tc class show dev $1 | fgrep 'leaf ' | fgrep -v ' hfsc' | sed 's/^.*leaf //;s/ .*//' | while read class; do
262 + tc class show dev $1 | grep -F 'leaf ' | grep -F -v ' hfsc' | sed 's/^.*leaf //;s/ .*//' | while read class; do
263 if [ -n "$class" ]; then
270 - supported=$(run_it $g_firewall help | fgrep savesets )
271 + supported=$(run_it $g_firewall help | grep -F savesets )
273 [ -n "$supported" ] && run_it $g_firewall savesets ${g_restorepath}-ipsets
279 - supported=$(run_it $g_firewall help | fgrep savesets )
280 + supported=$(run_it $g_firewall help | grep -F savesets )
282 [ -n "$supported" ] && run_it $g_firewall savesets ${VARDIR}/ipsets.save && progress_message3 "The ipsets have been saved to ${VARDIR}/ipsets.save"
288 - $IPSETN -L | egrep "^Name: ${1}(_.+)?$" | while read junk setname; do echo $setname; done
289 + $IPSETN -L | grep -E "^Name: ${1}(_.+)?$" | while read junk setname; do echo $setname; done
294 determine_ipset_version
296 if [ $g_family -eq 4 ]; then
297 - sets=$($IPSETN -L | egrep "^$1(_.+)?");
298 + sets=$($IPSETN -L | grep -E "^$1(_.+)?");
300 - sets=$($IPSETN -L | egrep "^6_$1(_.+)?")
301 + sets=$($IPSETN -L | grep -E "^6_$1(_.+)?")
304 [ -n "$sets" ] || sets=$(find_sets $1)
305 @@ -1207,7 +1207,7 @@
306 $IP -s -$g_family xfrm policy | spd_filter
309 - $IP -s -$g_family xfrm state | egrep -v '[[:space:]]+(auth-trunc|enc )' # Don't divulge the keys
310 + $IP -s -$g_family xfrm state | grep -E -v '[[:space:]]+(auth-trunc|enc )' # Don't divulge the keys
313 show_ipsec_command() {
314 @@ -1533,7 +1533,7 @@
315 if chain_exists dynamic; then
316 g_ipt_options="$g_ipt_options --line-numbers"
317 $g_tool -t filter -L dynamic $g_ipt_options | head -n2
318 - $g_tool -t filter -L dynamic $g_ipt_options | fgrep ACCEPT | $output_filter
319 + $g_tool -t filter -L dynamic $g_ipt_options | grep -F ACCEPT | $output_filter
323 @@ -1625,7 +1625,7 @@
325 if [ -n "$hnames" ]; then
326 for hname in $hnames; do
327 - iptaccount -l $hname | egrep '^IP:|^Show'
328 + iptaccount -l $hname | grep -E '^IP:|^Show'
332 @@ -3253,7 +3253,7 @@
334 if $TC filter add basic help 2>&1 | grep -q ^Usage; then
336 - $TC filter add basic help 2>&1 | egrep -q match && BASIC_EMATCH=Yes
337 + $TC filter add basic help 2>&1 | grep -E -q match && BASIC_EMATCH=Yes
340 if $TC action add connmark help 2>&1 | grep -q ^Usage; then
341 @@ -3674,7 +3674,7 @@
342 if [ $COMMAND = 'blacklist!' ]; then
345 - echo "$@" | fgrep -q ' timeout ' || timeout="timeout $g_dbltimeout"
346 + echo "$@" | grep -F -q ' timeout ' || timeout="timeout $g_dbltimeout"
349 if $IPSET -A $g_blacklistipset $@ $timeout -exist; then
350 @@ -4932,12 +4932,12 @@
352 # First look for it here
354 - if type $1 2> /dev/null | fgrep -q 'is a function'; then
355 + if type $1 2> /dev/null | grep -F -q 'is a function'; then
357 # It's a shell function -- call it
360 - elif type $1 2> /dev/null | fgrep -q 'is a shell function'; then
361 + elif type $1 2> /dev/null | grep -F -q 'is a shell function'; then
363 # It's a shell function -- call it
365 diff -ur shorewall-5.2.8.orig/shorewall-core/lib.common shorewall-5.2.8/shorewall-core/lib.common
366 --- shorewall-5.2.8.orig/shorewall-core/lib.common 2024-05-25 14:52:30.564705737 +0200
367 +++ shorewall-5.2.8/shorewall-core/lib.common 2024-05-25 17:49:09.004766950 +0200
369 #Determines if the passed interface is a loopback interface
371 loopback_interface() { #$1 = Interface name
372 - [ "$1" = lo ] || $IP link show $1 | fgrep -q LOOPBACK
373 + [ "$1" = lo ] || $IP link show $1 | grep -F -q LOOPBACK
378 find_loopback_interfaces() {
381 - [ -x "$IP" ] && interfaces=$($IP link show | fgrep LOOPBACK | sed 's/://g' | cut -d ' ' -f 2)
382 + [ -x "$IP" ] && interfaces=$($IP link show | grep -F LOOPBACK | sed 's/://g' | cut -d ' ' -f 2)
384 [ -n "$interfaces" ] && echo $interfaces || echo lo
386 diff -ur shorewall-5.2.8.orig/shorewall-init/configure shorewall-5.2.8/shorewall-init/configure
387 --- shorewall-5.2.8.orig/shorewall-init/configure 2020-09-25 00:02:16.000000000 +0200
388 +++ shorewall-5.2.8/shorewall-init/configure 2024-05-25 17:48:10.515909400 +0200
391 if [ -f /etc/debian_version ]; then
393 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
394 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
395 elif [ -f /etc/altlinux-release ] ; then
397 elif [ -f /etc/redhat-release ]; then
399 if [ $vendor = linux ]; then
400 rcfile=shorewallrc.default;
401 elif [ $vendor = debian -a -f /etc/debian_version ]; then
402 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
403 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
405 rcfile=shorewallrc.$vendor
407 diff -ur shorewall-5.2.8.orig/shorewall-lite/configure shorewall-5.2.8/shorewall-lite/configure
408 --- shorewall-5.2.8.orig/shorewall-lite/configure 2020-09-25 00:02:16.000000000 +0200
409 +++ shorewall-5.2.8/shorewall-lite/configure 2024-05-25 17:49:17.420890348 +0200
412 if [ -f /etc/debian_version ]; then
414 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
415 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
416 elif [ -f /etc/altlinux-release ] ; then
418 elif [ -f /etc/redhat-release ]; then
420 if [ $vendor = linux ]; then
421 rcfile=shorewallrc.default;
422 elif [ $vendor = debian -a -f /etc/debian_version ]; then
423 - ls -l /sbin/init | fgrep -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
424 + ls -l /sbin/init | grep -F -q systemd && rcfile=shorewallrc.debian.systemd || rcfile=shorewallrc.debian.sysvinit
426 rcfile=shorewallrc.$vendor