In addition to bug fixes and minor enhancements, v 5.2 includes the following new features:
In the library tree viewer it is possible to search for objects by port number or ip address. To search by port number you prefix with keyword 'port:', and to search by ip address, 'ip:'. This will display all matching objects, including groups. Some examples:
Find single service port: 80 Find several services port: 110,995 Range based search port: 25-143 Search with limits port: <443 port: >5900 Composed search port: <24, 53, 80-110 Find a single IPv4 address, and networks it belongs to ip: 192.0.2.1 Search using netmask ip: 198.51.100.0/255.255.255.0 CIDR notation ip: 198.51.100.0/24 Find a single IPv6 address, and networks it belongs to ip: 2001:db8::1 Search using netmask ip: 2001:db8::/64 Composed search ip: 203.0.113.0/24,2001:db8::/32
A new graphical diff viewer will show all the changes done since loading of file. Selection of rules are synced in the side-by-side view and double clicking a rule will center the rule in both the original and curent view. The diff viewer is activated by a new button in the upper right corner of the rule set view.
The user may choose an external diff utility to compare generated firewall output with a previously stored version. Optionally Firewall Builder can compile all firewalls in a project when the file is loaded. When modifying and compiling the user may compare newly generated firewall output with output generated from when the file was loaded. This feature is added to the "Inspect generated files" window.
Firewall Builder now supports generating output for the Cisco NXOS platform. This is based on the Cisco IOS code with only minor adjustments and more testing is needed.
The dummy object-feature enables the user to choose if newly inserted rules are added with any as the default target for source, destination, service or interface; or now: dummy. A rule with a dummy target will let the firewall compile but will not be evaluated. The user is shown a warning when compiling a firewall that contains one or more dummy rules. The default target is set both when you create a rule and when you delete the last remaining target. A dummy target may be "converted" to an any target. This option becomes available when right clicking on a dummy target.
Firewall Builder may now be compiled with Qt4 or Qt5, with the same codebase. This is tested on Linux and on OSX. Note: macdeployqt 5.0 and 5.1 is broken on OSX, please see QTBUG-32379.
A new build script and instructions are added for OSX. See doc/README.osx in the source code.
Build instructions for Windows are added. See doc/README.windows in the source code.
Fixed bug in the undo stack system when adding a new rule, undoing and redoing. The rule is now placed back in the correct group, if any, and is not corrupting the undo stack.
There are now two valid return values for the compilers. In addition to the success return code, the compilers now return a fixed value when compiling a firewall with one or more dummy rules. This value signalizes the result "success with warning".
The libcommon static library, and all the compiler executables, are not using QApplication but QCoreApplication. This removes their dependency on QtGui and gives faster startup on some platforms.
Fixed compile warning on 64 bit arch and some compile errors.
Fixed libpng warnings: "iCCP: known incorrect sRGB profile".