1
0
mirror of https://github.com/fwbuilder/fwbuilder synced 2026-03-21 02:37:16 +01:00

1222 Commits

Author SHA1 Message Date
Vadim Kurland
55da233d22 * PIXImporterNat.cpp (buildSNATRule): see #2310 "Imported global /
nat rule has wrong interface defined". Importer mixed up inbound
and outbound interfaces in NAT commands created from combination
of "global" and "nat" PIX/ASA commands.
2011-04-05 19:06:35 -07:00
Vadim Kurland
e6e8455700 * pix.g (nat_new_top_level_command): since import of ASA8.3
"new" nat commands is not implemented yet, importer should issue
a warning when such command is encountered. See #2315
2011-04-05 18:55:53 -07:00
Vadim Kurland
327183c1f2 * FWObject.cpp (insert_before): see #2171 "Undoing delete of rule
ends up with rules being created with duplicate rule
numbers". Also see #2172 "Crash when deleting rule - related to
#2171". When user deleted the last rule in a rule set, then used
Undo to restore it, the program lost track of rules in the rule
set and became unstable.
2011-04-01 19:23:16 -07:00
Vadim Kurland
b21a9b24ab * FWObject.cpp (shallowDuplicate): see #2286 "Crash when closing
file". The GUI crashed if user imported iptables or pix
configuration, then deleted a rule and tried to close project
window.
2011-04-01 18:38:48 -07:00
Vadim Kurland
df7a58eb04 * PIXImporter.cpp (mirrorServiceObjectRecursively): see #2291 The
same service object-group that matches some tcp or udp ports can
be used to match both source and destination ports in an
access-list command. Importer should recognize when such group
is used to match source ports and create mirrored group with
potentially mirrored service objects. This should work when group
includes other groups.

test cases in asa8.3-acl.test
2011-04-01 16:24:33 -07:00
Vadim Kurland
8a7ef98a4a fixes #2307 "GUI switches
to another file after editor panel is closed"
2011-04-01 11:28:30 -07:00
Vadim Kurland
f04dc03fc6 see #2164 added import of http commands, import should not abort on "service" commands 2011-03-31 17:58:59 -07:00
Vadim Kurland
6808fb5693 see #2302 logging errors instead of aborting 2011-03-31 15:05:17 -07:00
Vadim Kurland
05c24a4719 * PIXImporterNat.cpp (buildSNATRule): import of PIX/ASA "global"
and "nat" commands works.
2011-03-31 12:09:35 -07:00
Vadim Kurland
2e7377bbf6 * PIXImporterNat.cpp (buildDNATRule): import of PIX/ASA "static"
commands works for the most part. Needs more testing.
2011-03-30 19:30:52 -07:00
Vadim Kurland
568e9c9912 * ObjectManipulator.cpp (getDeleteMenuState): see #2226 fixed GUI
crash that happened when user tried to delete or cut an object
from locked library.
2011-03-28 17:47:13 -07:00
Vadim Kurland
e4b711d178 * RuleOptionsDialog.cpp (loadFWObject): see #2230 the GUI should
allow limit-burst values of up to 10000
2011-03-28 17:39:35 -07:00
Vadim Kurland
3f8323a755 * import/PIXImporter.cpp (addLogging): see #2279 Support for import
of ASA access-list lines with log levels and intervals
2011-03-27 19:10:34 -07:00
Vadim Kurland
1e0958384a * parsers/pix.g (tcp_udp_port_spec): see #2284 fixed import of
tcp/udp port ranges using mix of port numbers and port names
2011-03-27 18:03:43 -07:00
Vadim Kurland
99c845d0a8 * getServByName.cpp (getPortByName): see #2268 Making sure all tcp
and udp port names are recognized on import; also since PIX/ASA
converts udp port numbersin "show run" output to the same names
as if they were tcp, using the same name mapping table.
2011-03-27 17:44:57 -07:00
Vadim Kurland
efb6398190 * Importer.cpp (pushRule): fixes #2280 Rules created from PIX
config import showed an icon that indicated non-default
combination of rule options, yet all rule options looked normal
when opened in the editor.
2011-03-25 23:29:27 -07:00
Vadim Kurland
60d0c4e308 * parsers/pix.g (icmp_top_level_command): see #2164 Implemented
import of "ssh", "telnet" and "icmp" PIX/ASA commands. These
commands are imported as regular rules in the main Policy ruleset.
2011-03-25 19:31:06 -07:00
Vadim Kurland
5bfcc226cb * PIXImporter.cpp (finalize): see #2277 "Create policy objects for
ASA access-lists that are not applied in an access-group". Policy
rule set will be created and populated with rules found in the
corresponding access-list even if this access-list is not applied
to an interface with access-group command.
2011-03-25 16:02:15 -07:00
Vadim Kurland
b89afcc87a * parsers/pix.g (tcp_udp_rule_extended): see #2273 Improvements in
the parser for PIX/ASA configs to make it recognize object-group
and named object names used to define source port, destination
address or destination port in "access-list ... tcp|udp" rules,
including ambiguous situation when an object-group appears after
source address specification because this group can define either
source port or destination address.
2011-03-25 15:34:29 -07:00
Vadim Kurland
f2864f061c see #2263 do not generate object-group service statements with references to named objects 2011-03-24 18:03:13 -07:00
Vadim Kurland
3f0f6a2aa4 * IOSImporter.cpp (createTCPUDPServicePair): see #2267 added
support for import of object-group and service-object statements
of type "tcp-udp" (these get imported as service group object with
two tcp and udp service objects).
2011-03-24 17:04:16 -07:00
Vadim Kurland
c533b74e8e * getServByName.cpp (getPortByName): see #2268 updated list of
named tcp and udp ports recognized by the importer for Cisco ASA.
It is still unclear what port does the name "cifs" correspond to.
2011-03-24 12:48:04 -07:00
Vadim Kurland
72370646a6 checking in updated unit tests after changes in handling port ranges for IOS and changes for better deduplication of networks and address ranges in importer 2011-03-23 23:54:55 -07:00
Vadim Kurland
ee35e66818 fixed SF bug 3238026: build
failure on systems without net-snmp development libraries.
2011-03-23 16:33:54 -07:00
Vadim Kurland
48179df4d4 first attempt at access-list import for pix/asa. not done yet 2011-03-22 20:31:16 -07:00
Vadim Kurland
2ebad6b511 * parsers/pix.g (port_object): see #2234 added support for import
of "obejct-group service name tcp|udp" constructs in ASA 8.3 with
subsequent "port-object" statements.
2011-03-22 17:41:42 -07:00
Vadim Kurland
0e3bf10cb9 see #2252 compilers for iosacl and pix automatically increment/decrement port range boundaries to make tcp/udp port ranges defined in tcp/udp service objects inclusive 2011-03-21 12:56:37 -07:00
Vadim Kurland
da2deee052 * ImportFirewallConfigurationWizard.cpp (accept): see #2253
"importer should not creates objects while still in the middle of
the wizard". Importer wizard creates new objects in the object
tree only when user clicks Finish and abandons results if they
click Cancel.
2011-03-20 13:11:26 -07:00
Vadim Kurland
8fee475805 * IOSImporter.cpp (createTCPUDPNeqObject): see #2248 implemented
import of Cisco IOS and PIX/ASA service configurations using port
operation "neq". Since object model in fwbuilder does not provide
direct support for "port not equal to" expression, this
configuration is conveted into two tcp or udp service objects with
port range extending below and above specified port and these two
service objects are then placed in a group.
2011-03-19 20:54:08 -07:00
Vadim Kurland
b158752a99 see #2240 changelog record 2011-03-19 18:26:59 -07:00
Vadim Kurland
ff2b5eee62 * IPTImporter.cpp (pushPolicyRule): change in the importer
behavior: configuration import is aborted with an appropriate
error message in the log when program enounters protocol or
service name that it does not recognize and can not convert to
protocol or port number. We used to replace port number with some
placeholder (usually 0) and mark rule as "bad" by coloring it red
and adding comment.
2011-03-19 18:23:36 -07:00
Vadim Kurland
f3f08d170d see #2239 added var firewall_name to installer configlets that define commands installer runs on the machine to activate policy 2011-03-17 12:36:52 -07:00
Vadim Kurland
0e71443165 updated changelog record 2011-03-16 17:09:35 -07:00
Vadim Kurland
027b629b42 updated changelog record 2011-03-16 17:07:06 -07:00
Vadim Kurland
6a56bcb794 updated changelog record 2011-03-16 17:04:43 -07:00
Vadim Kurland
26f9f171d0 see #1548 "Object
de-duplication during import process". Also SourceForge bug
2980566 "Import from hostsfile may cause duplicate Objects" and
3030072 "remove duplicates during any import". Now the program can
optionally re-use existing objects from both Standard Objects and
user-defined libraries when it imports existing firewall
configuration. This works for any firewall platform for which we
support policy import.
2011-03-16 16:59:29 -07:00
Vadim Kurland
b7d1170d70 see #2223 support for import of PIX/ASA named objects 2011-03-14 19:43:18 -07:00
Vadim Kurland
0aa3eac4d4 * Compiler.cpp (expandGroupsInRuleElement): sorting objects in the
rule element by name after group is expanded, this helps ensure
stable ordering of objects in generated configuration.

* Compiler.cpp (replaceClusterInterfaceInItfRE::processNext):
sorting objects in rule element after cluster interfaces have been
replaced, this helps ensure stable ordering of objects in generated
configuration.

* FWObject.h (FWObjectNameCmpPredicate): moved this class from
gui-specific module to libfwbuilder as it is universally useful.
It can compare FWObject objects by name and can optionally can
follow references; it can be used with std::sort() to sort lists
of FWObject pointers or directly sort rule elements.
2011-03-12 19:50:24 -08:00
Vadim Kurland
5893edb768 see #2212 changelog record 2011-03-12 16:41:11 -08:00
Vadim Kurland
c9f8e8bf3e see #2209 changelog record 2011-03-11 12:30:29 -08:00
Vadim Kurland
7ebdc6c238 see #2207, #2209, fixes #2213 all objects created by compilers are placed in persistent_objects library; CompilerDriver creates and manages persistent_objects lib; changes in libfwbuilder - an object can be a child of only one parent in the tree, method FWObject::add() enforces this and FWObject::findDuplicateLinks() can be used to find objects with multiple parents 2011-03-11 10:11:42 -08:00
Vadim Kurland
8d8cf4c9f2 * CustomServiceDialog.cpp (loadFWObject): fixes #2201 "Some fields
of locked object are editable". Some input fields of the Custom
Service object dialog were editable even when object was locked
read-only.
2011-03-08 19:12:37 -08:00
Vadim Kurland
3f10891723 * GroupObjectDialog.cpp (loadFWObject): fixes #2203 "Crash when
attempting to add an object to a locked group".
2011-03-08 19:07:28 -08:00
Vadim Kurland
a1111b83bd * PolicyCompiler.cpp (checkForShadowing): see #2204 "Shadowing
detected for rule with action Continue". Policy rules with action
"Continue" should not shadow other rules and can not be shadowed.
2011-03-08 19:02:19 -08:00
Vadim Kurland
de8921b32e * Importer.cpp (addStandardRuleComment): see #2189 Program adds
the file name and the line number to comments of policy and nat
rules it creates during import.
2011-03-08 18:15:57 -08:00
Vadim Kurland
f5e058fdd7 * IPTImporter.cpp (pushPolicyRule): see #2202 importer for
iptables creates Custom Service object to match combination of
states it does not recognize. This includes "NEW,ESTABLISHED".
2011-03-08 17:38:28 -08:00
Vadim Kurland
9632d9b141 see #2197 "iptables nat rules in
chain OUTPUT not imported correctly"
2011-03-07 18:49:22 -08:00
Vadim Kurland
304fa20d24 * iptables.g (nat_addr_range): see #2194 "iptables import problem
with SNAT rule translating to an address range". NAT rules
translating into address range did not import correctly
2011-03-07 18:44:57 -08:00
Vadim Kurland
610448d440 * IPTImporter.cpp (pushNATRule): fixes #2195 "incorrect iptables
import of nat rule with NETMAP target"
2011-03-07 18:26:58 -08:00
Vadim Kurland
a268a91f7b * IPTImporter.cpp (pushNATRule): see #2196 "iptables nat rules
with target REDIRECT not imported". Iptables NAT rules with target
REDIRECT where not imported correctly.

* IPTImporter.cpp (pushNATRule): see #2190 "support for import of
branches in NAT rules for iptables". Implemented import of NAT
rules in user-defined chains for iptables, these translate into
branching NAT rules in fwbuilder.
2011-03-07 18:21:04 -08:00