1
0
mirror of https://github.com/fwbuilder/fwbuilder synced 2026-03-20 18:27:16 +01:00

* Compiler.cpp (Compiler::_expand_addr_recursive): change in the

algorithm used to decide which interfaces of the host or firewall
object to use in a rule when this host or firewall object is found
in source or destination.
This commit is contained in:
Vadim Kurland 2008-10-21 02:49:41 +00:00
parent e3dc662a00
commit 483dab7051
6 changed files with 34 additions and 32 deletions

View File

@ -1 +1 @@
#define BUILD_NUM 621
#define BUILD_NUM 623

View File

@ -1,3 +1,20 @@
2008-10-20 vadim <vadim@vk.crocodile.org>
* Compiler.cpp (Compiler::_expand_addr_recursive): ) change in
libfwbuilder) change in the algorithm used to decide which
interfaces of the host or firewall object to use in a rule when
this host or firewall object is found in source or
destination. Previously, compiler would skip loopback interface
unless user associated the rule with loopback by putting it in the
"Interface" rule element. This made it impossible to create rules
with address 127.0.0.1 in destination but attached to interface
other than loopback (such rule is used for transparent proxy
configuration). Now if user explicitly put loopback interface
object into rule element, we always keep it. However when compiler
expands interfaces from a host or firewall object, it will skip
loopback as before, unless the rule is attached to loopback
interface.
2008-10-19 vadim <vadim@vk.crocodile.org>
* fixed object type icon in the RuleSet and Interface object dialogs.

View File

@ -2,7 +2,7 @@
XMLFILE=$1
DIFFCMD="diff -C 1 -c -b -B -I \"# Generated\" -I 'Activating ' -I '# Firewall Builder fwb_ipt v' -I 'Can not find file' -I '====' -I 'log '"
DIFFCMD="diff -C 5 -c -b -B -I \"# Generated\" -I 'Activating ' -I '# Firewall Builder fwb_ipt v' -I 'Can not find file' -I '====' -I 'log '"
fwbedit list -f $XMLFILE -o /User/Firewalls -c -F%name% | sort | while read fwobj; do
echo "$DIFFCMD ${fwobj}.fw.orig ${fwobj}.fw"

View File

@ -1,18 +1,11 @@
#!/usr/bin/perl
$XMLFILE=@ARGV[0];
$DIFFCMD="diff -C 1 -b -B -c -I \"# Generated\" -I 'Activating ' -I '# Firewall Builder fwb_pf v' -I '===='";
#!/bin/sh
while (<>) {
$str=$_;
while ( $str=~ /<Firewall / ) {
$str=~ /<Firewall [^>]+name="([^"]*).*$"/;
$fw=$1;
printf "$DIFFCMD %s.fw.orig %s.fw\n",$fw,$fw;
printf "$DIFFCMD %s.conf.orig %s.conf\n",$fw,$fw;
$str=~ s/^.*<Firewall [^>]+name="$fw"[^>]+>//;
}
}
XMLFILE=$1
DIFFCMD="diff -C 1 -c -b -B -I \"# Generated\" -I 'Activating ' -I '# Firewall Builder fwb_ipt v' -I 'Can not find file' -I '====' -I 'log '"
fwbedit list -f $XMLFILE -o /User/Firewalls -c -F%name% | sort | while read fwobj; do
echo "$DIFFCMD ${fwobj}.fw.orig ${fwobj}.fw"
echo "$DIFFCMD ${fwobj}.conf.orig ${fwobj}.conf"
done

View File

@ -1,18 +1,10 @@
#!/usr/bin/perl
#!/bin/sh
$XMLFILE=@ARGV[0];
while (<>) {
$str=$_;
while ( $str=~ /<Firewall / ) {
$str=~ /<Firewall [^>]+name="([^"]*).*$"/;
$fw=$1;
printf "\n";
printf "echo '********* $fw'\n";
printf "fwb_pf -xt -v -f $XMLFILE $fw\n";
$str=~ s/^.*<Firewall [^>]+name="$fw"[^>]+>//;
}
}
XMLFILE=$1
fwbedit list -f $XMLFILE -o /User/Firewalls -c -F%name% | sort | while read fwobj; do
echo "echo"
echo "echo \"============================ $fwobj\""
echo "fwb_pf -v -f $XMLFILE -xt $fwobj"
done