Commit Graph
100 Commits
Author SHA1 Message Date
Vadim Kurland 4f811091f5 split unit tests to keep all nat tests separate; first crack and pix grammar to import nat 2011-03-29 23:07:50 -07:00
Vadim Kurland 141e80f7c1 see #87 added unit tests for PIX import 2011-03-29 19:53:52 -07:00
Vadim Kurland b4e4678c81 testing import with large real ASA config 2011-03-28 18:46:31 -07:00
Vadim Kurland 86e06e9071 pix grammar fixes to minimize nondeterminism warnings 2011-03-28 18:23:30 -07:00
Vadim Kurland 760400254c see #2225 never show deleted objects lib when user starts the GUI 2011-03-28 17:55:48 -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 a29ce3f54d see #2281 fixed import of log with or without log level, with or wiithout interval 2011-03-28 17:35:36 -07:00
Vadim Kurland 9da3ca447a see #2164 fixes import of ssh and telnet commands (source address or network should be recreated) 2011-03-27 23:17:00 -07:00
Vadim Kurland 6c7cb5ff00 updated unit test file, build number 3513 2011-03-27 22:06:17 -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 f61cc9d8bf see #2283 fixes GUI crash when importer could not create firewall object 2011-03-27 18:17:14 -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 59aaf53fbf see #2276 avoid resotring state when project panel gets visibilityChanged signal 2011-03-27 12:42:24 -07:00
Vadim Kurland 78f52e8689 see #2268 cifs port number is apparently 3020 2011-03-25 23:32:22 -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 8023a23dfb * parsers/pix.g (icmp_top_level_command): see #2164 policy rules created from import of ssh, telnet and icmp commands should be on top; build 3510 2011-03-25 19:41:01 -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 704be1f951 clean-up in pix grammar for fewer nondeterminism warnings 2011-03-24 21:07:58 -07:00
Vadim Kurland 1673e3f213 pix parser recognizes "interface <label>" in access lists 2011-03-24 20:11:12 -07:00
Vadim Kurland 410b895796 parsing access-list "extended" and "standard" 2011-03-24 19:19:58 -07:00
Vadim Kurland e3fa57054a import of acl works, but there could be some missing parts 2011-03-24 19:07:41 -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 1612ad88cd adding test file with some acl tests 2011-03-22 20:31:43 -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 90f6689886 fixes pix compiler crash when dynamic interface is used in ODst of a nat rule 2011-03-22 16:03:31 -07:00
Vadim Kurland da317dd151 fixes #2261 Crash when expanding Standard Library 2011-03-22 15:36:49 -07:00
Vadim Kurland 5a83ec15ff overloaded t error reporting functions in all grammars to make errors appear in the importer log 2011-03-21 19:56:34 -07:00
Vadim Kurland d4b79a1d35 see #2260 tested neq 2011-03-21 14:21:51 -07:00
Vadim Kurland a6b873a313 see #2252 #2258 fixed crash #2258; imported port ranges are adjusted to make tcp/udp service objects port-range-inclusive 2011-03-21 14:04:03 -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 63391fefda see #2257 added comment in the grammar 2011-03-21 12:16:54 -07:00
Vadim Kurland 5b4456a28c see #2257 in case of a "service" statement with unknown service name, create a placeholder object and add a note to its comment 2011-03-21 12:15:18 -07:00
Vadim Kurland 3f4dfd7ebc see #2257 parser should detect "service " statements that use service name it does not recognize and issue a warning 2011-03-21 12:00:33 -07:00
Vadim Kurland f3ce898d6c see #2257 fixed parsing of emty interface definitions and "no" commands inside interface context 2011-03-20 16:11:47 -07:00
Vadim Kurland 57ba766183 see #2257 fixed parsing of "name <ipv6> name" line; build 3505 2011-03-20 16:00:16 -07:00
Vadim Kurland d35e9f201f a fix to fix windows build 2011-03-20 13:15:53 -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 eca0a93cc7 see #2255 menu item and shortcut icon for firewall import should be disabled when current library is "Deleted objects" or is read-only 2011-03-20 12:40:06 -07:00
Vadim Kurland 1577bca547 see #2248 fixed handling of named service objects with port op "neq" 2011-03-20 12:24:49 -07:00
Vadim Kurland ccab39bcbd see #2242 making sure button Next disappears and Finish appears when import fails 2011-03-19 21:28:12 -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 07fb9a3bfc see #2242 fix crash when ASA import was attempted into locked library 2011-03-19 19:15:39 -07:00
Vadim Kurland 33bfd16c82 see #2250 "Object group some protocol-objects are not imported properly" 2011-03-19 19:06:16 -07:00
Vadim Kurland 57063f96b9 see #2251 implemented import of "object-group icmp-object" staements (pre-ASA 8.3) 2011-03-19 18:54:45 -07:00
Vadim Kurland aeb652b0be see #2251 additional icmp type names for ASA, asa 8.0 test cases for object-group icmp-object 2011-03-19 18:42:50 -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 1af552cfa3 Merge branch 'development' of ssh://git@vc.netcitadel.com:2222/var/git/fwbuilder into development 2011-03-18 17:30:10 -07:00
Vadim Kurland b3181f18ec see #2249 better grammar to parse tcp/udp specs for pix < 8.3 where keyword "destination" does not appear in "show run" output 2011-03-18 17:29:28 -07:00
Vadim Kurland e0354bc330 see #2247 better grammar to parse tcp/udp specs for pix < 8.3 where keyword "destination" does not appear in "show run" output 2011-03-18 17:29:04 -07:00
Vadim Kurland d9e5fd7c0a see #2247 better grammar to parse ipv6 addresses. Looks like I was able to build lexer rules to tokenize ipv6 addresses, yay! 2011-03-18 17:20:17 -07:00
Vadim Kurland bc669bf21e see #2234 import of "object-group icmp-type" works 2011-03-17 18:58:23 -07:00
Vadim Kurland c35a322ba8 see #2234 import of "object-group protocol" works 2011-03-17 18:47:04 -07:00
Vadim Kurland d624d1f82b see #2234 import of "object-group service" works 2011-03-17 18:24:37 -07:00
Vadim Kurland 7d9455d0ab see #2234 import of "object-group service" works 2011-03-17 18:05:31 -07:00
Vadim Kurland 147deacfbe see #2244 clicking Back in import wizard to select different file did not change the file 2011-03-17 16:29:41 -07:00
Vadim Kurland 77cb905d64 see #2243 added test cases for empy named objects 2011-03-17 16:19:04 -07:00
Vadim Kurland f7ad6f2f63 see #2240 named objects should not be deduplicated 2011-03-17 16:04:38 -07:00
Vadim Kurland 8fffbc119c see #2242 fail gracefully when a library or any folder inside are locked 2011-03-17 15:00:48 -07:00
Vadim Kurland 8faa985158 see #2241 skip Deleted Objects library while building object registry for deduplication 2011-03-17 14:42:04 -07:00
Vadim Kurland aaa2d1f318 fixes #2238 redundant call to commitObject() 2011-03-17 14:34:26 -07:00
Vadim Kurland c21b5714d2 build 3502
;
2011-03-17 12:41:57 -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 88ad545d1d see #2234 import of object-group network works 2011-03-17 11:18:10 -07:00
Vadim Kurland 25dda91418 removed ambiguity warnings in pix grammar 2011-03-16 22:32:26 -07:00
Vadim Kurland 86b8b5b733 see #2223 improvements in the grammar to parse interface parameters better. Some ambiguity warnigns remain. 2011-03-16 19:51:16 -07:00
Vadim Kurland 0433111877 fixes for named objects descriptions and interface addresses import for pix/asa 2011-03-16 18:27:08 -07:00
Vadim Kurland 35e227fb14 see #2223 fixed support for descriptions of named objects 2011-03-16 18:21:03 -07:00
Vadim Kurland e003b6b40e see #2175 updated warning formatting 2011-03-16 17:13:47 -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 7cd22e0137 adding comment to address range objects 2011-03-16 15:51:49 -07:00
Vadim Kurland 9585288e9c refactoring in the importer: all code that creates new objects moved to new classes. This provides good structure to add object deduplication 2011-03-16 13:20:59 -07:00
Vadim Kurland f51442b4d5 removed comment / internal note from the user-visible message 2011-03-15 17:58:02 -07:00
Vadim Kurland 8485797e41 see #2222 refactored importer into separate module/lib 2011-03-15 17:38:41 -07:00
Vadim Kurland 3339e882ee updated test file 2011-03-15 15:58:50 -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 bc2a25a901 added test files for pix 6, 7 and 8 import; build 3500 2011-03-13 12:42:51 -07:00
Vadim Kurland e748c72a1f see #2167 parsing "names" section 2011-03-13 12:26:45 -07:00
Vadim Kurland f46bd98736 updated unit test file 2011-03-13 00:06:35 -08:00
Vadim Kurland 3341844604 unit test fix 2011-03-12 23:36:39 -08:00
Vadim Kurland fcafb30ade see #2209 fixing another place where rule object was added to the second parent 2011-03-12 21:14:31 -08:00
Vadim Kurland b7a018b2d7 see #2209 fixing another place where rule object was added to the second parent 2011-03-12 20:49:29 -08:00
Vadim Kurland 5dc59d33df see #2209 do not add the same object to two different parents 2011-03-12 20:23:26 -08: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 424708006b see #2176 changed warning text and button label 2011-03-12 18:28:39 -08:00
Vadim Kurland 33070886db fixes #2219 when object is double clicked in rules to select it in the tree, the tree scrolls so that this object is at the top 2011-03-12 18:24:53 -08:00
Vadim Kurland 6b7d1f5806 fixes #2216 regression: system groups appear with user group icons and are editable 2011-03-12 18:20:23 -08:00
Vadim Kurland 821454988c fixed uninitialized variable 2011-03-12 18:07:40 -08:00
Vadim Kurland 4178c4e762 fixed dangerous memory access: the code used to delete object references instead of using removeRef() 2011-03-12 17:57:45 -08:00