Commit Graph
304 Commits
Author SHA1 Message Date
Vadim Kurland 4b1ecbfc93 added test cases for SF bug 3077132 2010-10-05 19:40:29 +00:00
Vadim Kurland c3aa139f22 * NATCompiler_PrintRule.cpp (processNext): fixed SF bug 3057503
"DNAT rule with dynamic IP has a white space, causing error".
2010-09-14 21:59:13 +00:00
Vadim Kurland d438b220a0 * NATCompiler_ipt.cpp (VerifyRules2::processNext): fixed #1685
"iptables redirecting NAT rules in the OUTPUT chain". NAT rules
should be allowed to translate from CustomService to TCP or UDP
service, provided CustomService object is configured with matching
protocol. See also change in libfwbuilder NATCompiler::classifyNATRule::processNext.
2010-08-19 19:21:16 +00:00
Vadim Kurland 4c60f2a610 * NATCompiler_ipt.cpp (localNATRule::processNext): see #1685
"iptables redirecting NAT rules in the OUTPUT chain". This fix
makes it possible to create iptables NAT rule with target REDIRECT
in the OUTPUT chain. The rule should have firewall object in OSrc
and TDst rule elements.
2010-08-19 18:40:48 +00:00
Vadim Kurland c993ccd943 * NATCompiler_ipt.cpp (splitNATBranchRule::processNext): fixed #1686
"can not generate basic NAT branching rule". NAT branching rules
were not generated in single rule compile mode.
2010-08-19 18:13:22 +00:00
Vadim Kurland 2ea02ccf67 fixed #1693 , SF bug 3048516: "NAT rule with 'Use SNAT instead MASQ'
doesn't work".
2010-08-19 17:05:26 +00:00
Vadim Kurland cfaf044212 * PolicyCompiler_cisco.cpp (PolicyCompiler_cisco::setAllNetworkZonesToAny):
fixed #1690 "IOS ACL and Procurve ACL compilers fail because
interfaces are not assumed to have network zone "any" anymore".
Compilers for Cisco IOS ACL and Procurve ACL always assumed all
interfaces have network zone "any". Recent changes made in 4.1.0
changed that and compilers stopped working for some rule configurations.

* (PolicyCompiler_cisco::createACLObject): fixed #1688 "Procurve
ACL remarks should be in quotes if they include space"
2010-08-17 20:32:45 +00:00
Vadim Kurland d672e836f7 set version to 4.1.1; working implementation of policy installer for ProCurve 2010-08-15 06:12:52 +00:00
Vadim Kurland 0060ee84fa fixed SF bug3038636: support for the new syntax of ipv4options module 2010-08-04 01:36:30 +00:00
Vadim Kurland c83b04f36b Fixes SF bug #3036541 "IPV6
only firewall resets ipv4 stack" only reset ipv4 iptables when there are some ip4 rules; also added action block to usage string of the generated iptables script
2010-07-29 18:12:06 +00:00
Vadim Kurland 89d504f639 better algorithm to find loops in rule branches and a test case for it for iptables; als fix for SF bug 3034628 "iptables does not allow target REJECT in mangle table" 2010-07-29 01:57:28 +00:00
Vadim Kurland a51d1733fc fixed #1640 "default policy when the script is stopped should be
optional".
2010-07-27 22:10:53 +00:00
Vadim Kurland 1a8d8cd1ea fixed #1633 use ipset module in NATCompiler_ipt 2010-07-24 06:03:48 +00:00
Vadim Kurland e82f770956 * PolicyCompiler_PrintRule.cpp: added support for iptables module
"set" used to generate iptables command for rules with run-time
AddressTable objects. This module is only available in iptables
1.4.1.1 and later, however some embedded platforms do not have it
even though they ship later versions ofiptables (e.g. OpenWRT).
Use of this module is controlled by a checkbox in the iptables 
"advanced" settings dialog which is off by default. This checkbox
becomes disabled when iptables version is set to < 1.4.1.1.
2010-07-23 05:15:05 +00:00
Vadim Kurland 8a4fb97afe upgraded test data files for 4.1 2010-07-20 23:45:05 +00:00
Vadim Kurland e75d3ccdb0 minor updates in test data files after they were loaded in the latest version of the gui 2010-07-15 17:09:55 +00:00
Vadim Kurland 1ee9ca248d * PolicyCompiler_ipt.cpp (specialCaseWithFWInDstAndOutbound::processNext):
fixed #1523 "outbound ipv6 rule matching multicast ipv6 destination
is not generated". The rule with network object fe80::/10 in source
and ipv6 muticast ff00::/8 in destination did not produce correspondign
ip6tables command. The change affects other cases with rules using
broadcast or multicast objects that should be considered matching
the firewall object.
2010-06-17 23:58:17 +00:00
Vadim Kurland d670e07a6a test case for #1523 2010-06-16 15:18:07 +00:00
Vadim Kurland 4ecb807f23 * IPTImporter.cpp (IPTImporter::finalize): see #1513 iptables
importer should check default policy in standard chains.
2010-06-11 20:27:35 +00:00
Vadim Kurland 9f00e4e619 * CompilerDriver_pix_run.cpp (CompilerDriver_pix::pixNetworkZoneChecks):
fixed #1491 fwb_pix crashes trying to compile simple rule. Compiler
should check validity of the object used as network zone of an interface.
2010-06-08 00:56:07 +00:00
Vadim Kurland d57bd1cf0b * Preprocessor.cpp (Preprocessor::findMultiAddressObjectsUsedInRules):
change in libfwbuilder: fixed #1485 "dns name object is recognized
as an empty group when it appears in shared rule set"
2010-06-02 16:51:58 +00:00
Vadim Kurland cedb9620bd * PolicyCompiler_iosacl_writers.cpp (PrintRule::_printRule):
restored function of the "comment the code" in the "Script
options" of the firewall settings dialog for Cisco IOS ACL and
ProCurve ACL. When this checkbox is off, comments are not
added to generated script.
2010-05-17 20:36:48 +00:00
Vadim Kurland fe5a13d1b5 * iptables.g (MATCH_RECENT_SET): see #1451 "policy importer should
support some popular iptables modules". Added support for module
"recent" and rules that match standard ip/icmp/udp/tcp protocols
and at the same time module "mark", "length", "limit" or "recent".
Rules like these are translated into a combination of a branching
rule and additional rule in a branch rule set that implements
module match.
2010-05-14 00:54:03 +00:00
Vadim Kurland 1378ab08b3 added installer commands for ProCurve, using the same code for Cisco and ProCurve 2010-05-12 21:45:32 +00:00
Vadim Kurland 4a246aa75c fixed #1449 options for ACL remarks and comments for ProCurve 2010-05-12 21:28:50 +00:00
Vadim Kurland b4eeb1563d newline after exit in commands that attach acl to regular interface; generating different commands depending on whether management interface is vlan or not 2010-05-12 15:08:27 +00:00
Vadim Kurland 8f9b516e9b using different xml element to control when "advanced interface settings" button is enabled; generating different commands to bind acls to vlan or regular inetrfaces on ProCurve 2010-05-11 17:01:08 +00:00
Vadim Kurland b002797fce see #1442 experimental support for HP ProCurve, using configlet to generate "safety net" config for IOS and ProCurve 2010-05-11 02:59:53 +00:00
Vadim Kurland 388f69537c * CompilerDriver_ipt_policy.cpp (CompilerDriver_ipt::processPolicyRuleSet):
fixes #1432 "automatic rule with --restore-mark is missing if
rules using action Tag are not in the default Policy rule set".
2010-05-01 22:23:01 +00:00
Vadim Kurland f78933dd91 * PolicyCompiler_ipt.cpp (PolicyCompiler_ipt::insertFailoverRule):
fixed #1411 outbound rule that permits VRRP should be added
outside the loop to avoid duplicate rules for clusters with 3 or
more members.
2010-05-01 16:44:45 +00:00
Vadim Kurland 034dd2bfea see #1432 : added test case for the ticket 2010-05-01 00:42:18 +00:00
Vadim Kurland 64bbe7fdb9 fixes #1425 iptables script generated for the empty rule set is broken 2010-04-28 00:38:52 +00:00
Vadim Kurland b1df2d8932 * SSHSession.cpp (SSHSession::terminate): see #1426, #1428 use
QProcess::waitForFinished() instead of just sleep() after we send
TERM signal to the background process. Also let Qt process events
to update the GUI while waiting.

* instDialog_installer.cpp (instDialog::stopInstall): fixed #1428
button "Stop" in the installer dialog does not stop installer
process
2010-04-27 23:10:46 +00:00
Vadim Kurland 3cfd19c79b * PolicyCompiler_ipt.cpp (PolicyCompiler_ipt::checkForShadowingPlatformSpecific):
see #1417 (SF bug 2992177) rule with greater limit module rate
value shadows rule with lower rate value. Comments in the code explain
why.
2010-04-27 16:58:05 +00:00
Vadim Kurland ef2d783888 added comment to explain the logic behind shadowing detection with iptables limit modules 2010-04-27 16:15:20 +00:00
Vadim Kurland 72307e1bfa see #1417 (SF bug 2992177): compiler should compare
limit rate value and other parameters set for modules limit, connlimit
and hashlimit while deciding if rules shadow each other.
2010-04-26 16:27:57 +00:00
Vadim Kurland b9cfc1f5b8 * PolicyCompiler_ipt.cpp (PolicyCompiler_ipt::checkForShadowingPlatformSpecific):
fixes #1417 rule shadowing detection should recognize different rule options.
Policy compiler for iptables takes into account rule options for modules
limit, connlimit and hashlimit when it considers rules for rule shadowing.
2010-04-25 03:00:05 +00:00
Vadim Kurland 5f58d6bcf2 * instDialog.cpp (instDialog::show): fixed #1419: clear progress
log display when instDialog is opened
2010-04-25 01:54:41 +00:00
Vadim Kurland 3360977c2d * MangleTableCompiler_ipt.cpp (keepMangleTableRules::processNext):
fixed #1415 "action branch that creates branch in mangle table
should branch in FORWARD chain". Rule with "any" in src and dst
and action Branch with option "branch in mangle table" will go
into FORWARD chain in addition to the PREROUTING and POSTROUTING
chains as before. Note that choice of PREROUTING or POSTROUTING
chains depends on direction.
2010-04-24 01:41:47 +00:00
Vadim Kurland 4c6518d5d3 * PolicyCompiler_PrintRule.cpp (PrintRule::_printTarget): fixes #1416
leading blank space in front of the custom action is missing.
SF bug 2991397.
2010-04-23 18:22:08 +00:00
Vadim Kurland fdb388659d * NATCompiler_pf_writers.cpp (PrintRule::processNext): fixes #1401
nat rules syntax has changed in OpenBSD 4.7. Nat and rdr rules in
4.7 should be implemented using action "match" and keywords
"nat-to" and "rdr-to"

* PolicyCompiler_pf_writers.cpp (PrintRule::_printAction):
fixes #1414: use "match" action for tagging. Policy rules
with action Tag should use pf action "match" instead of "pass"
if version is 4.6 or later.
2010-04-23 04:10:59 +00:00
Vadim Kurland 3df762b301 * RoutingCompiler.cpp (reachableAddressInRGtw::checkReachableIPAddress):
fixes #1410 "Problem with route for 4.0.0-b2809". Compiler did
not allow vlan subinterface as a gateway in a routing rule.
2010-04-20 18:07:05 +00:00
Vadim Kurland 92a8a0cf3e updated test case 2010-04-10 17:52:13 +00:00
Vadim Kurland f05f657700 * RoutingCompiler_ipt.cpp (RoutingCompiler_ipt::epilog): fixed #1404
call to function restore_script_output in the generated iptables
script is sometimes added without function definition
2010-04-09 21:29:29 +00:00
Vadim Kurland 4bbe1c2b12 * NATCompiler_ipt.cpp (AssignInterface::processNext): fixes #1403
refs #1150  "Using ip address of wrong interface" is broken in v4.0.
2010-04-09 19:50:03 +00:00
Vadim Kurland c1708d457a fixes #1394 using existing virtual functions that expand multiple addresses to expand cluster interfaces. Now it is possible to use interface of a cluster different from the one being compiled in rules 2010-04-09 02:29:27 +00:00
Vadim Kurland 65a0f408a7 * ProjectPanel_file_ops.cpp (ProjectPanel::exportLibraryTest):
fixed #1395 "routing rules are not reported properly while
exporting library"
2010-04-08 22:53:47 +00:00
Vadim Kurland 23a0cd7bc5 * RoutingCompiler_iosacl_writers.cpp (PrintRule::_printRItf):
fixed #1379 "Should be able to build routing rules with interface
as gateway for IOS". Routing rules for IOS now have column
"Interface". Rules can be built either with explicit address of
the gateway or interface.
2010-03-29 21:36:28 +00:00
Vadim Kurland 3cad647465 added test cases for #1377 and #1378; fixed #1378 see #1377 2010-03-29 20:38:31 +00:00
Vadim Kurland da08afa8c1 * PolicyCompiler_pf.cpp (PolicyCompiler_pf::compile): fixed #1375
Interface group is not expanded in "Interface" rule element by
compiler for PF
2010-03-29 20:01:10 +00:00