1
0
mirror of https://github.com/fwbuilder/fwbuilder synced 2026-03-22 03:07:20 +01:00

60 Commits

Author SHA1 Message Date
Vadim Kurland
b5a794d1f1 * platforms.cpp (isDefaultPolicyRuleOptions): fixed #1365 "missing
some flags for the "non-default" rule options for PF"

* FWObjectPropertiesFactory.cpp (FWObjectPropertiesFactory::getPolicyRuleOptions):
fixed #1364 "add synproxy and other missing pf rule options to the
rule options tooltip"
2010-03-27 17:25:05 +00:00
Vadim Kurland
816dac9402 fixed #1297 "change in scrub rules in PF 4.6". PF 4.6 stopped
support for several reassemble options except for "reassemble tcp"
and changed format for the "scrub" rules.
2010-03-05 02:05:28 +00:00
Vadim Kurland
81ee822cd3 * OSConfigurator_bsd.cpp (OSConfigurator_bsd::configureInterfaces):
New feature: incremental VLAN interface management for OpenBSD and
FreeBSD. When user adds or removes VLAN subinterface in fwbuilder
GUI, geenrated script executes appropriate ifconfig commands to
add or remove corresponding vlan pseudo-interface on the firewall
machine.
2010-02-14 03:23:25 +00:00
Vadim Kurland
a0314a7d97 * src/pflib/PolicyCompiler_pf_writers.cpp (PrintRule::processNext):
fixes #1210 "syntax error in PF rule - "modulate state" is
required".  Per bug reported in the mailing list (and according to
the pf.conf manual), pf.conf requires "keep state", "modulate
state" or "synproxy"if any of the stateful tracking options are
used in the rule. These include "max", "no-sync", "pflow",
"sloppy", "source-track" and others.
2010-02-07 05:24:21 +00:00
Vadim Kurland
0ee88506b5 * ../src/iptlib/NATCompiler_ipt.cpp (VerifyRules2::processNext):
fixes #1109: "rules that do not pass verifyRules() checks may
cause compiler crash in test mode or gui crash in single rule
compile mode"
2010-01-20 02:55:38 +00:00
Vadim Kurland
2e27954947 * PolicyCompiler_ipt.cpp (PolicyCompiler_ipt::compile): Using rule
processor Compiler::checkForObjectsWithErrors to find objects with
errors and generate proper calls to abort(). This exposes errors
that happened when Preprocessor failed to resolve compile-time
AddressTable and DNSName objects. If compiler runs in test mode,
preprocessor did not abort but used dummy substitution addresses
and continued. Call to checkForObjectsWithErrors generates proper
error messages tied to rules. Using this rule processor in all
compilers. Fixes #1087
2010-01-16 00:26:01 +00:00
Vadim Kurland
8c84808bda 2010-01-15 vadim <vadim@vk.crocodile.org>
* CompilerDriver_ipt_run.cpp (CompilerDriver_ipt::run): Refs #869
making sure non-english comments appear correctly in the single
rule compile output and generated configuration files and scripts.
2010-01-15 20:31:33 +00:00
Vadim Kurland
836430513e * PolicyCompiler_pf_writers.cpp (PrintRule::processNext): Added
support for pf state tracking options "no-sync" and "pflow". Set
version to "4.5" or "4.6" in the firewall object to be able to use
these new options.
2010-01-14 20:07:04 +00:00
Vadim Kurland
c8f06769e1 see #1049 2010-01-06 23:56:08 +00:00
Vadim Kurland
2398f59273 fixes #1005 "Wrong optimization flag for PF" 2009-12-28 00:54:22 +00:00
Vadim Kurland
005507969c fixes #712 (ipt_mangle_only_rulesets option converted) fixes #713 2009-11-26 02:37:38 +00:00
Vadim Kurland
60c01cdd1a example for ftp-proxy rules for PF; allow objects of different types to have the same name so that we can create policy and nat rulesets with name "ftp-proxy/*" 2009-11-16 19:28:25 +00:00
Vadim Kurland
2310dad6ff 2009-11-01 Vadim Kurland <vadim@vk.crocodile.org>
* CompilerDriver_pf.cpp (CompilerDriver_pf::printStaticOptions):
Added support for PF configuration parameter "set state-policy"
which can have values "if-bound" or "floating". The GUI input
element provides these options in addition to the default empty
option. If empty list item is selected, command "set state-policy"
is not added to the generated .conf file at all. Fixes #423
2009-11-01 17:50:34 +00:00
Vadim Kurland
f78806dcf8 . Added PF versions 4.0-4.2 and >4.3 to the list. Using keywords nat-anchor and rdr-anchor if PF version is <4.3. Refs #84 2009-10-21 00:49:39 +00:00
Vadim Kurland
a47cd5c817 Support for branching NAT rules for PF. Refs #84 2009-10-21 00:14:22 +00:00
Vadim Kurland
68c8b0aa93 fixes #512 2009-10-15 22:17:19 +00:00
Vadim Kurland
4fc1735694 fixes #353, #355, #356 Using configlets to generate .fw script for pf, ipfilter and ipfw 2009-10-09 18:23:54 +00:00
Vadim Kurland
23ee2d9531 merge from v3_1_merge 2009-09-23 17:00:48 +00:00
Vadim Kurland
b97470d09e 2009-09-18 vadim <vadim@vk.crocodile.org>
* PolicyCompiler.cpp (ItfNegation::processNext): fix for bug
#2710034 "PF Compiler in 3.0.3 Unprotected Interface Bug". When we
expand "interface" rule element which uses negation, skip
unprotected interfaces.
2009-09-18 18:02:56 +00:00
Vadim Kurland
213d270623 * PolicyCompiler_pf_writers.cpp (PrintRule::processNext): For bug
#2835193: "Modulate state doesnt work for PF". Check variable
"modulate state" in rule optiopns and global firewall options. If
checkbox is turned on in the firewall options, then we always use
"modulate state". This option can also be turned on for an
individual rule using rule options dialog.

* pfAdvancedDialog.cpp (pfAdvancedDialog::pfAdvancedDialog): Fixed
bug #2835193: "Modulate state doesnt work for PF".  The name Xml
attribute used to hold the value of "module state" option was
entered incorrectly in the dialog.
2009-08-10 22:33:16 +00:00
Vadim Kurland
f9eb5e1a8c 2009-06-09 vadim <vadim@vk.crocodile.org>
* NATCompiler_pf_writers.cpp (PrintRule::_printSrcPort): fixed bug
#2803702 "NAT rule with source port range in TSrv is broken for
PF".  NAT rules matching source port ranges and translating source
port ranges should be possible.

* NATCompiler.cpp (classifyNATRule::processNext): (change in
libfwbuilder) fixed bug #2803689 "NAT rule matching dport but
chaning sport is broken".  NAT rules that match destination port
but translate source port should be possible (and the opposite
too).
2009-06-09 22:36:41 +00:00
Vadim Kurland
34be1c5f47 2009-06-06 vadim <vadim@vk.crocodile.org>
* PolicyCompiler_pf.cpp (PolicyCompiler_pf::compile): fixed
bug (no #): compiler for PF did not remove rules using IPv4
objects while compiling policy set to be "combined IPv4 and IPv6"
for IPv6 and vice versa. As the result, it used to double some
rules because the would appear both in IPv4 and IPv6 sections of
generated .conf file.
2009-06-06 20:19:10 +00:00
Vadim Kurland
0815275873 2009-06-05 vadim <vadim@vk.crocodile.org>
* PolicyCompiler_PrintRule.cpp (PrintRule::_printIP): fixed bug
#2801548 "fwb_ipt should issue error for ipsrv with options for
ipv6". Since IP options lsrr, ssrr, rr do not exist in ipv6,
compiler should refuse to compile rules that request matching
these options.

* PolicyCompiler_iosacl_writers.cpp (PrintRule::_printIPServiceOptions):
fixed bug #2801547 "fwb_iosacl should issue an error for ipservice
with options". IOS access lists can not match source routing
options set in IPService object, compiler should issue an error
and abort processing when an object like this is encountered in a
rule.

* IPServiceDialog.cpp (IPServiceDialog::loadFWObject): fixed bug
#2801545 "IP Service object: lsrr, ssrr, rr options not saved".

* PolicyCompiler_pf_writers.cpp (PrintRule::_printDstService):
fixed bug #2801544 "missing space after tos option in pf config"
2009-06-05 16:58:28 +00:00
Vadim Kurland
0a191e2fdd 2009-05-27 vadim <vadim@vk.crocodile.org>
* PolicyCompiler_pf_writers.cpp (PrintRule::_printAddr): fixed
bug (no #): policy compiler for pf crashed when dynamic interface
was used in source or destination of a policy rule.

* ObjectManipulator.cpp (ObjectManipulator::contextMenuRequested):
fixed bug #2793144 "Context menu item for the new User Service
object is missing".
2009-05-27 16:37:35 +00:00
Vadim Kurland
444dfb5bb2 2009-05-14 vadim <vadim@vk.crocodile.org>
* PolicyCompiler_pf.cpp (fillDirection::processNext): fixed bug
#2791950 "no way to generate "pass out" rule with no interface".
Compiler created two rules "pass out" and "pass in" for rules with
no interface and direction "in" or "out". It should create one
rule with direction defined by the rule in the GUI.
2009-05-14 21:54:42 +00:00
Vadim Kurland
896fbc723a pf example for ssh access to fw. per email support request 2009-04-09 23:05:27 +00:00
Vadim Kurland
c18f9a88da 2009-03-24 vadim <vadim@vk.crocodile.org>
* DialogData.cpp (DialogData::loadToWidget): fixed bug #2710309:
"Bug in gui/DialogData.cpp when not using mapping.". There was a
bug in DialogData.cpp that when setting the value of a combobox
and not using a mapping array the requested value would not be
selected. Applied patch provided by Tom Judge ( tomjudge )

* platforms.cpp (init_platforms): fixed bug #2710300 "Bug in
gui/platforms.cpp". there was a discrepancy between the list of
route-to options for PF and UI elements.
2009-03-25 04:43:16 +00:00
Vadim Kurland
f6d1b5b38d 2009-03-24 vadim <vadim@vk.crocodile.org>
* PolicyCompiler_pf_writers.cpp (PrintRule::_printAction): Added
support for anchor names with "/*" suffix for PF. Now the user can
create policy ruleset with name e.g. "ftp-proxy/*" and then set up
branching rule pointing to this ruleset. This ruleset is treated
by the program in a special way. First, it allows characters "/"
and "*" in the name of the ruleset (but only for PF firewalls).
Second, compiler does not create a .conf file with rules from this
ruleset, assuming that it will be controlled by external program
such as ftp-proxy. See man page ftp-proxy(8) for examples.
2009-03-24 07:31:48 +00:00
Vadim Kurland
932b4d2d34 2009-03-23 vadim <vadim@vk.crocodile.org>
* pf.cpp (main): fixed bug (no #): compiler for pf added code
provided in the "prolog" section while option was set to "add
after table definitions" in the incorrect place.
2009-03-24 04:42:54 +00:00
Vadim Kurland
58f4b70da1 2009-03-11 vadim <vadim@vk.crocodile.org>
* RuleSetView.cpp (RuleSetView::createGroup): fixed bug (no #): if
user selected some rules that belonged to a group and few other
rules that did not belong to any group at the same time and used
context menu to place all these rules in a new group, the GUI used
to crash.

;
2009-03-12 04:50:00 +00:00
Vadim Kurland
53844b8060 checking for "proto ..." in the custom service code string before printing protocol in policy and nat compilers for pf" 2008-12-28 12:17:26 +00:00
Vadim Kurland
a720640ffe bugs 1111267, 2463048 2008-12-28 07:12:12 +00:00
Vadim Kurland
b62891ba69 * SSHSession.cpp (SSHSession::heartBeat): built-in installer
periodically "pings" the other end to keep ssh session alive. This
helps recreate state in the firewall state table if it is cleared
when rules are reloaded, which in turn prevents installer from
hanging.
2008-12-22 05:10:11 +00:00
Vadim Kurland
742f0b6791 test for compined ruleset for pf 2008-12-16 05:18:21 +00:00
Vadim Kurland
4cb259c543 2008-12-08 Vadim Kurland <vadim@vk.crocodile.org>
* RuleSetView.cpp (RuleSetView::contextMenu): fixed bug #2407141
"label markers". Color label text set in Preferences was not used
in the contet menus where user can actually apply those colors to
rules.
2008-12-09 03:40:40 +00:00
Vadim Kurland
0cbf11fa16 2008-11-17 Vadim Kurland <vadim@vk.crocodile.org>
* ObjectManipulator.cpp (ObjectManipulator::duplicateObject): fix
bug #2303486: "Operation of duplicating firewall should switch
policy". When firewall object is duplicated, the GUI should
automatically open policy of the new object rather than keep
policy of the original open. At the same time, reset lastModified,
lastCompiled, lastInstalled of the new firewall instead of keeping
copies from the original.

* instDialog.cpp (instDialog::testFirewall): Check to make sure
paths to ssh and scp utilities are properly configured in
Preferences before running install. Show aprropriate error dialog
to the user if path to ssh or scp is not configured.
2008-11-17 16:45:14 +00:00
Vadim Kurland
483dab7051 * 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.
2008-10-21 02:49:41 +00:00
Vadim Kurland
7c3fdae4f5 main window and dialogs do not enforce font 2008-08-30 05:05:56 +00:00
Vadim Kurland
61601fe1e3 bug 2056510 "Compile time" address tables objects dont work 2008-08-18 01:47:56 +00:00
Vadim Kurland
3304512740 2055984 ] Negate Objects not work 2008-08-18 01:28:00 +00:00
Vadim Kurland
46d9e07645 controls to turn ipv6 forwarding on/off for linux,openbsd and freebsd 2008-07-18 22:56:50 +00:00
Vadim Kurland
65b82d973a one more nat rule for pf 2008-07-07 05:15:25 +00:00
Vadim Kurland
75d30ae964 added -xt option to fwb_iosacl 2008-07-07 04:36:10 +00:00
Vadim Kurland
25e6e7de73 test file 2008-07-06 02:45:35 +00:00
Vadim Kurland
ce2508e93a support for tos matching for PF 2008-07-06 02:02:26 +00:00
Vadim Kurland
47a435f7d3 support for userService in compiler for pf 2008-06-07 03:09:38 +00:00
Vadim Kurland
ece0df1e07 compilers for iptables and pf find branch rulesets even if they belong to a different fw 2008-06-05 20:41:25 +00:00
Vadim Kurland
2e2135bcbf updated test cases; testing xslt transformations that add TagService objects 2008-06-04 22:46:06 +00:00
Vadim Kurland
a2049a8c31 ipv6 in fwb_pf 2008-05-31 22:32:34 +00:00
Vadim Kurland
0457709b97 support for multiple rule sets in PF 2008-05-30 22:00:45 +00:00