[fwbuilder-commits] [SCM] Firewall Builder GUI and Policy Compilers Open Source Code branch, multip
Brought to you by:
mikehorn
From: <gi...@ir...> - 2011-05-02 21:45:54
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Firewall Builder GUI and Policy Compilers Open Source Code". The branch, multiple_actions has been updated via 3c276bc40b4eedb9c995968afddbf643f4157121 (commit) via 7feb2f4731fb98d13f32a81ec7f3f66e9d0317a9 (commit) via 4e6b10cbc9fe5ebde1f2834e650592ff02337704 (commit) from dc5ebd940bdd14b8e5fc0e02cf2d1e7fdb61d18b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3c276bc40b4eedb9c995968afddbf643f4157121 Author: Vadim Kurland <va...@ne...> Date: Mon May 2 14:34:34 2011 -0700 see #2367 using QComboBox to choose between "none", "queue" and "pipe" for ipfw classification diff --git a/src/libgui/RuleOptionsDialog.cpp b/src/libgui/RuleOptionsDialog.cpp index 9833e26..8b30564 100644 --- a/src/libgui/RuleOptionsDialog.cpp +++ b/src/libgui/RuleOptionsDialog.cpp @@ -103,6 +103,7 @@ void RuleOptionsDialog::loadFWObject(FWObject *o) // build a map for combobox so visible combobox items can be localized QStringList route_options = getRouteOptions_pf_ipf(platform); QStringList route_load_options = getRouteLoadOptions_pf(platform); + QStringList classify_options_ipfw = getClassifyOptions_ipfw(platform); Rule *rule = dynamic_cast<Rule*>(o); FWOptions *ropt = rule->getOptionsObject(); @@ -241,9 +242,10 @@ void RuleOptionsDialog::loadFWObject(FWObject *o) data.registerOption(m_dialog->ipf_keep_frags, ropt, "ipf_keep_frags"); // Route - data.registerOption(m_dialog->ipf_route_option, ropt, "ipf_route_option", - route_options); - data.registerOption(m_dialog->ipf_route_opt_if, ropt, "ipf_route_opt_if"); + data.registerOption(m_dialog->ipf_route_option, ropt, + "ipf_route_option", route_options); + data.registerOption(m_dialog->ipf_route_opt_if, ropt, + "ipf_route_opt_if"); data.registerOption(m_dialog->ipf_route_opt_addr, ropt, "ipf_route_opt_addr"); } @@ -292,6 +294,12 @@ void RuleOptionsDialog::loadFWObject(FWObject *o) data.registerOption(m_dialog->pf_synproxy, ropt, "pf_synproxy"); + // Tag + FWObject *o = policy_rule->getTagObject(); + m_dialog->pfTagDropArea->setObject(o); + m_dialog->pfTagDropArea->update(); + + // Classify data.registerOption(m_dialog->pf_classify_str, ropt, "pf_classify_str"); // Route @@ -302,27 +310,17 @@ void RuleOptionsDialog::loadFWObject(FWObject *o) route_options); data.registerOption(m_dialog->pf_route_opt_if, ropt, "pf_route_opt_if"); data.registerOption(m_dialog->pf_route_opt_addr, ropt, "pf_route_opt_addr"); - - FWObject *o = policy_rule->getTagObject(); - m_dialog->pfTagDropArea->setObject(o); - m_dialog->pfTagDropArea->update(); } if (platform=="ipfw") { - data.registerOption(m_dialog->ipfw_stateless, ropt,"stateless"); - data.registerOption(m_dialog->usePortNum, ropt, "ipfw_pipe_queue_num"); + data.registerOption(m_dialog->ipfw_stateless, ropt, "stateless"); /* #2367 */ - - data.registerOption(m_dialog->ipfw_classify, ropt, "classification"); - - if (ropt->getInt("ipfw_classify_method") == DUMMYNETPIPE) - { - m_dialog->useDummyNetPipe->setChecked(1); - } else { - m_dialog->useDummyNetQueue->setChecked(1); - } + // Classify + data.registerOption(m_dialog->ipfw_classify_method, ropt, + "ipfw_classify_method", classify_options_ipfw); + data.registerOption(m_dialog->usePortNum, ropt, "ipfw_pipe_queue_num"); } if (platform=="iosacl" || platform=="procurve_acl") @@ -446,29 +444,24 @@ void RuleOptionsDialog::applyChanges() policy_rule->setTagObject(tag_object); policy_rule->setClassification( - ! ropt->getStr("pf_classify_str").empty()); + ! new_rule_options->getStr("pf_classify_str").empty()); policy_rule->setRouting( - ! ropt->getStr("pf_route_option").empty() && - ropt->getStr("pf_route_option") != "none"); + ! new_rule_options->getStr("pf_route_option").empty() && + new_rule_options->getStr("pf_route_option") != "none"); } if (platform=="ipf") { policy_rule->setRouting( - ! ropt->getStr("ipf_route_option").empty() && - ropt->getStr("ipf_route_option") != "none"); + ! new_rule_options->getStr("ipf_route_option").empty() && + new_rule_options->getStr("ipf_route_option") != "none"); } if (platform=="ipfw") { - // rule option "classification" is set via checkbox and was - // set by the call to data.saveAll() above - - if (m_dialog->useDummyNetPipe->isChecked()) - new_rule_options->setInt("ipfw_classify_method", DUMMYNETPIPE); - else - new_rule_options->setInt("ipfw_classify_method", DUMMYNETQUEUE); + policy_rule->setClassification( + new_rule_options->getInt("ipfw_classify_method") > -1); } } diff --git a/src/libgui/platforms.cpp b/src/libgui/platforms.cpp index 3a75795..2fc0209 100644 --- a/src/libgui/platforms.cpp +++ b/src/libgui/platforms.cpp @@ -63,6 +63,7 @@ QStringList actionsOnReject; QStringList routeOptions_pf_ipf; QStringList routeLoadOptions_pf; QStringList limitSuffixes; +QStringList classifyOptions_ipfw; void init_platforms() { @@ -166,6 +167,13 @@ void init_platforms() routeLoadOptions_pf.push_back(QObject::tr("Round Robin")); routeLoadOptions_pf.push_back("round_robin"); + classifyOptions_ipfw.push_back(QObject::tr("None")); + classifyOptions_ipfw.push_back("-1"); + classifyOptions_ipfw.push_back(QObject::tr("dummynet(4) 'pipe'")); + classifyOptions_ipfw.push_back("1"); + classifyOptions_ipfw.push_back(QObject::tr("dummynet(4) 'queue'")); + classifyOptions_ipfw.push_back("2"); + limitSuffixes.push_back(""); limitSuffixes.push_back(""); limitSuffixes.push_back(QObject::tr("/day")); @@ -673,6 +681,11 @@ const QStringList& getRouteLoadOptions_pf(const QString&) return routeLoadOptions_pf; } +const QStringList& getClassifyOptions_ipfw(const QString&) +{ + return classifyOptions_ipfw; +} + const QStringList& getLimitSuffixes(const QString&) { return limitSuffixes; diff --git a/src/libgui/platforms.h b/src/libgui/platforms.h index 9444b8d..6f0b987 100644 --- a/src/libgui/platforms.h +++ b/src/libgui/platforms.h @@ -139,6 +139,8 @@ const QStringList& getRouteOptions_pf_ipf(const QString &platform); const QStringList& getRouteLoadOptions_pf(const QString &platform); +const QStringList& getClassifyOptions_ipfw(const QString &platform); + /** * returns a list of Limit Suffixes (mapping list) */ diff --git a/src/libgui/ruleoptionsdialog_q.ui b/src/libgui/ruleoptionsdialog_q.ui index 1c2609b..979b073 100644 --- a/src/libgui/ruleoptionsdialog_q.ui +++ b/src/libgui/ruleoptionsdialog_q.ui @@ -6,8 +6,8 @@ <rect> <x>0</x> <y>0</y> - <width>1412</width> - <height>332</height> + <width>1580</width> + <height>357</height> </rect> </property> <property name="windowTitle"> @@ -41,7 +41,7 @@ <number>0</number> </property> <property name="currentIndex"> - <number>2</number> + <number>3</number> </property> <widget class="QWidget" name="ipt"> <layout class="QGridLayout"> @@ -1635,7 +1635,7 @@ <enum>QTabWidget::Triangular</enum> </property> <property name="currentIndex"> - <number>0</number> + <number>6</number> </property> <widget class="QWidget" name="tab12"> <attribute name="title"> @@ -2480,7 +2480,7 @@ <enum>QTabWidget::Triangular</enum> </property> <property name="currentIndex"> - <number>0</number> + <number>1</number> </property> <widget class="QWidget" name="tab_7"> <attribute name="title"> @@ -2556,13 +2556,6 @@ </attribute> <layout class="QGridLayout" name="gridLayout_19"> <item row="0" column="0"> - <widget class="QCheckBox" name="ipfw_classify"> - <property name="text"> - <string>Classify packets</string> - </property> - </widget> - </item> - <item row="1" column="0" colspan="2"> <widget class="QLabel" name="textLabel1_9"> <property name="text"> <string>Packet classification can be implemented in different ways:</string> @@ -2575,27 +2568,32 @@ </property> </widget> </item> - <item row="2" column="0" colspan="2"> + <item row="1" column="0"> <widget class="QGroupBox" name="buttonGroup1"> <property name="title"> <string/> </property> <property name="flat"> - <bool>false</bool> + <bool>true</bool> </property> <layout class="QGridLayout" name="gridLayout_17"> - <item row="0" column="0" colspan="2"> - <widget class="QRadioButton" name="useDummyNetPipe"> - <property name="text"> - <string>use dummynet(4) 'pipe'</string> - </property> - </widget> - </item> - <item row="0" column="2" colspan="2"> - <widget class="QRadioButton" name="useDummyNetQueue"> - <property name="text"> - <string>use dummynet(4) 'queue'</string> - </property> + <item row="0" column="0"> + <widget class="QComboBox" name="ipfw_classify_method"> + <item> + <property name="text"> + <string>None</string> + </property> + </item> + <item> + <property name="text"> + <string>dummynet(4) 'pipe'</string> + </property> + </item> + <item> + <property name="text"> + <string>dummynet(4) 'queue'</string> + </property> + </item> </widget> </item> <item row="1" column="0"> @@ -2608,7 +2606,7 @@ </property> </widget> </item> - <item row="1" column="1" colspan="2"> + <item row="1" column="1"> <widget class="QSpinBox" name="usePortNum"> <property name="minimumSize"> <size> @@ -2621,7 +2619,7 @@ </property> </widget> </item> - <item row="1" column="3"> + <item row="1" column="2"> <spacer name="horizontalSpacer_15"> <property name="orientation"> <enum>Qt::Horizontal</enum> @@ -2637,7 +2635,7 @@ </layout> </widget> </item> - <item row="2" column="2"> + <item row="1" column="1"> <spacer name="horizontalSpacer_11"> <property name="orientation"> <enum>Qt::Horizontal</enum> @@ -2650,7 +2648,7 @@ </property> </spacer> </item> - <item row="3" column="1"> + <item row="2" column="0"> <spacer name="spacer_11"> <property name="orientation"> <enum>Qt::Vertical</enum> @@ -3013,9 +3011,6 @@ <tabstop>pf_fastroute</tabstop> <tabstop>pf_route_load_option</tabstop> <tabstop>ipfw_stateless</tabstop> - <tabstop>ipfw_classify</tabstop> - <tabstop>useDummyNetPipe</tabstop> - <tabstop>useDummyNetQueue</tabstop> <tabstop>usePortNum</tabstop> <tabstop>pix_disable_rule_log</tabstop> <tabstop>pix_logLevel</tabstop> commit 7feb2f4731fb98d13f32a81ec7f3f66e9d0317a9 Author: Vadim Kurland <va...@ne...> Date: Mon May 2 13:39:14 2011 -0700 show tag service object name in the Options column diff --git a/src/libgui/RuleSetModel.cpp b/src/libgui/RuleSetModel.cpp index 72e88f4..5df0615 100644 --- a/src/libgui/RuleSetModel.cpp +++ b/src/libgui/RuleSetModel.cpp @@ -1457,9 +1457,9 @@ QStringList PolicyModel::getRuleOptions(Rule* r) const if (policyRule->getTagging()) { + FWObject *tobj = PolicyRule::cast(policyRule)->getTagObject(); res << tr("Tag %1").arg( - QString::fromUtf8( - PolicyRule::cast(policyRule)->getTagValue().c_str())); + QString::fromUtf8(tobj->getName().c_str())); } if (policyRule->getClassification()) commit 4e6b10cbc9fe5ebde1f2834e650592ff02337704 Author: Vadim Kurland <va...@ne...> Date: Mon May 2 13:36:15 2011 -0700 draw text line aligned with the icon in action and direction columns diff --git a/src/libgui/RuleSetViewDelegate.cpp b/src/libgui/RuleSetViewDelegate.cpp index 9ba847d..3f9cf84 100644 --- a/src/libgui/RuleSetViewDelegate.cpp +++ b/src/libgui/RuleSetViewDelegate.cpp @@ -153,7 +153,11 @@ void RuleSetViewDelegate::drawIconAndText(QPainter *painter, if (!text.isEmpty()) { - painter->drawText( x, y , rect.width() - iconWidth - ICON_TEXT_GAP, rect.height(), Qt::AlignLeft|Qt::AlignVCenter, text ); + painter->drawText(x, y, + rect.width() - iconWidth - ICON_TEXT_GAP, + rect.height(), + Qt::AlignLeft|Qt::AlignVCenter, + text ); } } @@ -228,7 +232,8 @@ void RuleSetViewDelegate::paintDirection( QString dir = v.value<QString>(); drawSelectedFocus(painter, option, ctx.objectRect); QString text = (st->getShowDirectionText())?dir:""; - drawIconAndText(painter, ctx.drawRect, dir,text); + ctx = initContext(option.rect, false); // useEnireSpace=false + drawIconAndText(painter, ctx.drawRect, dir, text); } void RuleSetViewDelegate::paintAction( @@ -239,6 +244,7 @@ void RuleSetViewDelegate::paintAction( ActionDesc actionDesc = v.value<ActionDesc>(); drawSelectedFocus(painter, option, ctx.objectRect); QString text = constructActionText(actionDesc); + ctx = initContext(option.rect, false); // useEnireSpace=false drawIconAndText(painter, ctx.drawRect, actionDesc.name, text); } @@ -297,6 +303,7 @@ void RuleSetViewDelegate::paintMetric( DrawingContext ctx = initContext(option.rect, true); QString metric = v.value<QString>(); drawSelectedFocus(painter, option, ctx.objectRect); + ctx = initContext(option.rect, false); // useEnireSpace=false drawIconAndText(painter, ctx.drawRect, QString(), metric); } ----------------------------------------------------------------------- Summary of changes: src/libgui/RuleOptionsDialog.cpp | 53 +++++++++++++----------------- src/libgui/RuleSetModel.cpp | 4 +- src/libgui/RuleSetViewDelegate.cpp | 11 +++++- src/libgui/platforms.cpp | 13 ++++++++ src/libgui/platforms.h | 2 + src/libgui/ruleoptionsdialog_q.ui | 61 ++++++++++++++++------------------- 6 files changed, 77 insertions(+), 67 deletions(-) hooks/post-receive -- Firewall Builder GUI and Policy Compilers Open Source Code |