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

1311 Commits

Author SHA1 Message Date
Vadim Kurland
d7a749154f see #2519 Avoid creating duplicate network objects for the
AttachedNetwork object if the parent interface has multiple ip
addresses that belong to the same subnet.
2011-06-22 15:25:18 -07:00
Vadim Kurland
c940bed072 see #2521 "Compile fails if firewall has locked interface that is set
to dynamic".
2011-06-22 14:55:53 -07:00
Vadim Kurland
344a22feed see #2524 'avoid " {tcp udp icmp} " in place of protocol'. NAT
compiler for PF does not need to generate protocol match "proto {tcp
udp icmp}" when service object used in the NAT rule is "any". The
reason this was done this way is lost in the mist of time; it's been
like this since very early versions of fwbuilder.
2011-06-22 11:03:07 -07:00
Vadim Kurland
49eed4d5be fixes #2428 and SF bug 3305234; new build 3551 2011-06-21 12:49:17 -07:00
Vadim Kurland
b8abb51339 see #2493 implemented "forward" function in addition to the "back"
function, added a button to the roolbar, using new icons for Back and
Forward buttons.
2011-06-20 16:30:53 -07:00
Vadim Kurland
f5e22c040b see #2477 removed transfer agent classes and functions 2011-06-20 14:56:28 -07:00
Vadim Kurland
db233ee8e8 see #2506 removed incomplete and obsolete russian and japanese localization 2011-06-20 11:35:22 -07:00
Vadim Kurland
d4a8546b6b incremented DTD version to 22 necause changes made for keywords and DynamicGroup object are not backwards-compatible; removed contributed autoupgrade xslt script that is not being used anymore, see #2501 2011-06-10 15:26:06 -07:00
Vadim Kurland
d682785b63 see #2496 parsing, but not importing, "user" and "group" matches 2011-06-09 16:33:22 -07:00
Vadim Kurland
c77796ebd0 see #2497 added an error on import of "include" word in pf.conf files 2011-06-09 16:15:36 -07:00
Vadim Kurland
677173e030 see #2487 fixed crash that happened when user created new cluster from member firewalls that had locked interfaces
;
2011-06-09 14:01:17 -07:00
Vadim Kurland
8d80e04420 FWWindow_editor.cpp (openEditor): this change is a part of the
GUI usability improvements: when user double clicks on a firewall
object to open it in the editor, rule set view panel switches to
the rule set of that firewall. To decide which rule set to show,
the program scans history of the objects the user opened before in
the same GUI session and shows that firewall's rule set they
opened last. If user never opened any rule sets of this firewall,
then the first Policy object is shown. See #2465.
2011-06-04 17:04:29 -07:00
Vadim Kurland
5888835db7 see #2454 making "any" open in the editor upon double-click; added ChangeLog record 2011-06-04 16:16:48 -07:00
Vadim Kurland
6d6038370c * applied patch to provide configure command line option to specify
path to ccache. Thanks to user "a. k. huettel " on SourceForge.
2011-06-03 20:39:38 -07:00
Vadim Kurland
6a9fdbf3af NATCompiler_pf.cpp (_expand_addr): see #2455 NAT Compiler for PF
should use "(interface)" syntax to the right of "->" in NAT rules.
This now works for all interfaces, including those that have ip
addresses in fwbuilder configuration, when interface object appears in
"Translated Source" in a nat rule. When firewall object appears in
"Translated Source", it gets replaced with a set of its interfaces
which also get translated into "-> (interface)".
2011-06-03 18:59:44 -07:00
Vadim Kurland
15bab71f49 * NATCompiler_ipt.cpp (compile): see #2456 Added support for
single object negation in "Inbound Interface" and "Outbound
Interface" columns in compiler for iptables.

* NATCompiler_pf.cpp (compile): see #2456 Added support for single
object negation in "Interface" rule element of PF NAT rules. Now
compiler can produce PF commands such as "nat on ! em0 ... " (for
PF <4.7) or "match on ! em0 ..." (for PF >= 4.7)

* Compiler.cpp (singleObjectNegation::processNext): moved rule
processor that processes single object negation in any rule
element to the base class Compiler.
2011-06-03 17:54:14 -07:00
Vadim Kurland
a0da65ddc9 see #2464 implemented import of PF "set timeout",
"set limit" and other "set" commands. Known limitations:

 - commands "set ruleset-optimization", "set loginterface",
   "set block-policy", "set state-defaults", "set require-order",
   "set fingerprints", "set reassemble", "set hostid" are not supported.
2011-06-02 17:18:37 -07:00
Vadim Kurland
52ea731f92 refactored useful classes AddressSpec, PortSpec, InterfaceSpec, IcmpSpec and RouteSpec to separate modules so they can be used with other installers 2011-05-31 16:31:05 -07:00
Vadim Kurland
1ed2581dd1 see #2449 import of "nat" rules. First implementation. Restrictions are listed in ChangeLog 2011-05-30 21:49:46 -07:00
Vadim Kurland
a3a07b4b42 see #2394 documenting import limitations in ChangeLog 2011-05-27 14:50:28 -07:00
Vadim Kurland
a544492ced see #2434 "PF compiler should use 'self' keyword where
appropriate". Compiler for PF now uses keyword 'self' in rules
where firewall object is used in Source or Destination.
2011-05-26 14:13:26 -07:00
Vadim Kurland
ea7f28e1ef * FWObjectDatabase_tree_ops.cpp (merge): see #2420 "Crash when
selecting New Firewall and existing firewall has interface that is
locked". Fixed GUI crash that happened on some operations if an
object in the tree was locked. For example, if the user locked an
interface of one of the firewall objects that then proceeded to
create new firewall object, the GUI would crash. The problem was
not limited to locking specifically interface objects.
2011-05-17 11:56:21 -07:00
Vadim Kurland
ac4e1bfb62 see #2411 implemented import of iptables rules with target CLASSIFY 2011-05-15 22:47:55 -07:00
Vadim Kurland
1199fd926a see #2405 "Tag and classify actions dont work properly with branches".
When branching rule points to a rule set that has rules with Tag and
Classify options, branching should occur in mangle table even when
checkbox "create branch in mangle table" is not checked. The fix in
this change is tentative as it creates branch in chains PREROUTING,
POSTROUTING and OUTPUT. Since target CLASSIFY is only allowed in
POSTROUTING, this may create conflict. Need to test more.
2011-05-14 15:46:23 -07:00
Vadim Kurland
f0dc79359e * AttachedNetworks.cpp (AttachedNetworks): see #1580 New object
type: network object that automatically matches subnets an
interface is attached to. The object can be a child of an
interface. The object is optional and is not created automatically
for all interfaces; user can add it using context menu associated
with an interface. Dialog for this object allows editing of the
name and comment. List of network addresses represented by this
object is always generated automatically. Compiler for PF
translates this object to "en0:network" construct that is
supported by PF. Compiler for iptables expands it to the list of
ipv4 and ipv6 networks defined by the addresses of the parent
interface if interface has static addresses. If interface is
confgiured as "dynamic" and has no address in fwbuilder, then
compiler treats AttachedNetworks object as run-time and uses shell
function to determine network addresses during activation of the
firewall script. Compilers for other firewall platforms always
treat this object as compile-time and abort if it is used with
dynamic interface.
2011-05-14 14:44:00 -07:00
Vadim Kurland
6f9add86c3 * PolicyCompiler_ipt.cpp (processNext): see #2402 "Tag action
should be done in PREROUTING so it can be acted on later". If a
rule has both tagging and classification options, the rule should
be split so that iptables command doing tagging goes in PREROUTING
and rule doing classification goes into POSTROUTING chain.
;
2011-05-13 18:21:56 -07:00
Vadim Kurland
a787f35fd0 see #2401 "Deprecating
Route option for iptables"
2011-05-13 16:14:34 -07:00
Vadim Kurland
2b67a0a491 see #2399, #2340 rules that require tagging, classification or routing are now split so that regular actions such as Accept are implemented using normal rules in the table "filter" and rules in table "mangle" only implement tagging, classification and routing. See ChangeLog for longer description 2011-05-13 13:06:42 -07:00
Vadim Kurland
83cc8b4b3f merge from the latest changes in release-4.2.1 2011-05-11 22:43:01 -07:00
Vadim Kurland
a2d64c733a set version to 4.2.2
see #2395, #2396  need to call fixTree() to fix pointers to the root of the tree after merge()
2011-05-11 09:53:11 -07:00
Vadim Kurland
e706c96473 v 4.3.0.3541; merged from multiple_actions 2011-05-10 16:33:34 -07:00
Vadim Kurland
38540cec7c merge from development 4.2.1.3540 2011-05-09 17:08:17 -07:00
Vadim Kurland
3b70160562 * FWCmdAddObject.cpp (redo): fixes #2391 "selecting 'new library'
when editor panel not on 'editor' tab causes crash"
2011-05-09 11:27:57 -07:00
Vadim Kurland
880cfb13fc * PolicyCompiler_pf_writers.cpp (_printQueue): see #2390 Classify
does not generate "queue" string for rules created in V4.2.1.3538
This completes the fix for the bug #2385.
2011-05-06 18:36:23 -07:00
Vadim Kurland
8773642198 see #2367 merge from development 2011-05-05 19:16:47 -07:00
Vadim Kurland
e24a73a560 see #2385 "PF action Classify uses
wrong parameter". This change fixes a bug introduced in 4.2.0
that affects rules with action Classify in PF firewalls.
2011-05-05 18:50:32 -07:00
Vadim Kurland
c096684c20 see #2367 merged latest changes from development branch; this merged transformation for v18->v19 XML file upgrades; upgraded test files for PF 2011-05-04 16:44:08 -07:00
Vadim Kurland
d14a984f85 * FWObjectDatabase_18.xslt: XSLT transformation to upgrade data
files from DTD v18 to DTD v19. This transformation finds
"PolicyRule" elements with missing "Itf" child elements and fixes
them by adding such element with a reference pointint to "any".
Fixes #2383

* fwbuilder.dtd.in: Element "Itf" (an interface) of "PolicyRule"
should be required. DTD version increment.
2011-05-04 15:23:46 -07:00
Vadim Kurland
a694b9a93d merged latest changes from development branch 2011-05-03 11:48:20 -07:00
Vadim Kurland
350c40030e * newFirewallDialog.cpp (finishClicked): see #2380 "Firewall
object is created in the middle of the "new firewall" wizard and
clicking Back creates two firewall objects". If user chose to
create new firewall object from a template and clicked Back after
choosing the template, the program actually created two firewall
objects but only one was visible in the tree.
2011-05-03 11:28:13 -07:00
Vadim Kurland
13a897452d * PolicyCompiler_ipt.cpp (processNext): see #2367 "Multiple
actions per policy rule". Options "Tag", "Classify" and "Route"
work with iptables in a combination with any action. This
implementation has one restriction: option Route can not be used
in combination with options Tag or Classify and any action that is
not Continue. This is because option Route can yield rules in
PREROUTING or POSTROUTING chains that are also used by options Tag
and Classify. For this combination we create two user-defined
chains that perform routing and tagging (or classification). In
case of a terminating action both chains end with it. This means
if one matches the packet, the other is never going to see it.
Non-terminating action "Continue" does not create this problem.
This limitation may be removed in future versions of fwbuilder.
2011-05-03 10:30:55 -07:00
Vadim Kurland
32302739fd see #2373 using different signal to call RuleSetView::updateAllColumnsSize() only once instead of doing it for each rule using object that changed 2011-04-30 12:48:47 -07:00
Vadim Kurland
7627a82cfe see #2373 first fix for this problem
The change in UsageResolver
eliminates unnecessary scanning of all rule sets to check if the
affected rule set might be used as a branch. The program used to
scan the same objects many times.
.
2011-04-29 18:50:37 -07:00
Vadim Kurland
a62f914887 * iosaclAdvancedDialog.cpp (accept): fixes #2368 and SF bug
3294457 "External install script". External install script name
and arguments werent saved for IOS firewall objects.
2011-04-29 12:06:16 -07:00
Vadim Kurland
bb5abafe5b * snmpNetworkDiscoveryWizard/ND_ProgressPage.h: fixes #2370, #2371
"broken signals in network discovery wizard". Network discovery
wizard was not correctly initializased and did not work.
2011-04-29 11:49:06 -07:00
Vadim Kurland
339079da7b * instDialog_ui_ops.cpp (readInstallerOptionsFromDialog):
tentative fix for SF bug 3169045 "Batch installer lists IPv4
address as management address". Built-in installer wanted to use
management interface address in batch mode even when alternative
address or putty session name was provided. This happens only in
batch mode install.
2011-04-25 12:00:54 -07:00
Vadim Kurland
856126c1cc started 4.2.1 2011-04-25 11:58:14 -07:00
Vadim Kurland
103c06aec0 added changelog record for the latest fix 2011-04-20 10:48:53 -07:00
Vadim Kurland
9ba2dc42ee * RoutingCompiler_ipt.cpp (compile): see #2359 "Crash when
compiling single rule with IPv6 destination and IPv4 gateway or
interface". Routing compiler for iptables does not support ipv6 at
this time and will issue a warning when user tries to place ipv6
address or network in a routing rule. The warning does not appear
when ipv6 address is a member of a group used in the rule. Also
see #1575.
2011-04-19 14:18:33 -07:00
Vadim Kurland
25633190e0 release notes for 4.2.0 2011-04-17 16:50:26 -07:00