From 7d962bb1ced125e52dd8c262876dc842943811b0 Mon Sep 17 00:00:00 2001 From: Vadim Kurland Date: Sat, 5 Mar 2011 15:55:46 -0800 Subject: [PATCH] see #2176 autodetect pf.conf format in importer --- .../IC_PlatformWarningPage.cpp | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/libgui/importFirewallConfigurationWizard/IC_PlatformWarningPage.cpp b/src/libgui/importFirewallConfigurationWizard/IC_PlatformWarningPage.cpp index 3d06bf122..0c6a744f6 100644 --- a/src/libgui/importFirewallConfigurationWizard/IC_PlatformWarningPage.cpp +++ b/src/libgui/importFirewallConfigurationWizard/IC_PlatformWarningPage.cpp @@ -86,6 +86,11 @@ void IC_PlatformWarningPage::initializePage() << QRegExp("^\\[\\d+:\\d+\\] -A OUTPUT ") << QRegExp("^\\[\\d+:\\d+\\] -A FORWARD "); + QList pf_conf_re; + pf_conf_re << QRegExp("^scrub\\s+\\S+") + << QRegExp("^set\\s+timeout\\s+\\S+") + << QRegExp(""); + m_dialog->configFileBrowser->clear(); m_dialog->platform->setText(tr("Unknown")); @@ -143,6 +148,15 @@ void IC_PlatformWarningPage::initializePage() break; } } + + foreach (QRegExp re, pf_conf_re) + { + if (re.indexIn(line) > -1) + { + detectedPlatform = "pf"; + break; + } + } } if (detectedPlatform == "iptables") @@ -250,6 +264,14 @@ void IC_PlatformWarningPage::initializePage() platformOk = false; } + if (detectedPlatform == "pf") + { + m_dialog->platform->setText(tr("iptables")); + m_dialog->platformSpecificWarning->setText( + tr("Import of PF rules is not supported")); + platformOk = false; + } + dynamic_cast(wizard())-> setPlatform(detectedPlatform);