1
0
mirror of https://github.com/fwbuilder/fwbuilder synced 2026-03-25 12:47:44 +01:00

see #1995 Crash when compiling a cluster with identical firewalls. Needed to call base class Firewall::init() to create Policy, NAT and Routing objects. The fact that member firewalls are identical as reported in the ticket is a red herring

This commit is contained in:
Vadim Kurland 2011-01-27 11:06:31 -08:00
parent 535b8e27eb
commit 4bba7533c8
3 changed files with 14 additions and 0 deletions

View File

@ -1,5 +1,10 @@
2011-01-27 vadim <vadim@netcitadel.com>
* Cluster.cpp (init): fixes #1995 "Crash when compiling a cluster
with identical firewalls". Method Cluster::init() must call base
class method Firewall::init() to get child Policy, NAT and Routing
objects created.
* CompilerDriver_pix_run.cpp (run): fixes #1994 "Crash when
compiling a firewall in an imported Library". Compilers should
reset any read-only flags in the copy of object tree they work

View File

@ -57,6 +57,7 @@ Cluster::Cluster()
void Cluster::init(FWObjectDatabase *root)
{
Firewall::init(root);
// create one conntrack member group
FWObject *state_sync_members = getFirstByType(StateSyncClusterGroup::TYPENAME);
if (state_sync_members == NULL)

View File

@ -216,7 +216,15 @@ void newClusterDialog::createNewCluster()
if (source == NULL)
{
if (fwbdebug)
qDebug() << "newClusterDialog::createNewCluster() checkpoint 5";
FWObject *first_policy = ncl->getFirstByType(Policy::TYPENAME);
if (fwbdebug)
qDebug() << "newClusterDialog::createNewCluster() checkpoint 6"
<< "first_policy=" << first_policy;
QCoreApplication::postEvent(
mw, new openRulesetEvent(filename, first_policy->getId()));
return;