do not hardcode the path/name to g++

This commit is contained in:
Vadim Kurland
2010-01-26 23:58:20 +00:00
parent d2d50b5d1f
commit 8a9d04373e
4 changed files with 118 additions and 112 deletions
+1 -1
View File
@@ -1 +1 @@
#define BUILD_NUM 2441
#define BUILD_NUM 2444
+1 -1
View File
@@ -26,7 +26,7 @@ unix {
FWBPARSER_LIB = ../parsers/libfwbparser.a
FWTRANSFER_LIB = ../fwtransfer/libfwtransfer.a
QMAKE_CXX = @CCACHE@ @DISTCC@ g++
QMAKE_CXX = @CCACHE@ @DISTCC@ $$QMAKE_CXX
!macx {
+111 -110
View File
@@ -1,7 +1,8 @@
<ui version="4.0" >
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>NATRuleOptionsDialog_q</class>
<widget class="QWidget" name="NATRuleOptionsDialog_q" >
<property name="geometry" >
<widget class="QWidget" name="NATRuleOptionsDialog_q">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
@@ -9,63 +10,63 @@
<height>333</height>
</rect>
</property>
<property name="windowTitle" >
<property name="windowTitle">
<string>NAT Rule Options</string>
</property>
<layout class="QGridLayout" name="gridLayout" >
<item row="0" column="0" >
<widget class="QStackedWidget" name="widgetStack" >
<property name="frameShape" >
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QStackedWidget" name="widgetStack">
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<property name="frameShadow" >
<property name="frameShadow">
<enum>QFrame::Sunken</enum>
</property>
<property name="currentIndex" >
<property name="currentIndex">
<number>1</number>
</property>
<widget class="QWidget" name="WStackPage" >
<layout class="QVBoxLayout" >
<property name="spacing" >
<widget class="QWidget" name="WStackPage">
<layout class="QVBoxLayout">
<property name="spacing">
<number>12</number>
</property>
<property name="margin" >
<property name="margin">
<number>12</number>
</property>
<item>
<widget class="QFrame" name="frame1" >
<property name="frameShape" >
<widget class="QFrame" name="frame1">
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow" >
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QGridLayout" >
<property name="margin" >
<layout class="QGridLayout">
<property name="margin">
<number>2</number>
</property>
<property name="spacing" >
<property name="spacing">
<number>2</number>
</property>
<item row="2" column="0" colspan="3" >
<widget class="QLabel" name="hint_no_go" >
<property name="text" >
<item row="2" column="0" colspan="3">
<widget class="QLabel" name="hint_no_go">
<property name="text">
<string>No options are available for this firewall platform</string>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="5" column="0" >
<item row="5" column="0">
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<property name="sizeType">
<enum>QSizePolicy::MinimumExpanding</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>0</height>
@@ -78,41 +79,41 @@
</item>
</layout>
</widget>
<widget class="QWidget" name="iptNATRuleOptions" >
<layout class="QGridLayout" name="gridLayout_2" >
<property name="spacing" >
<widget class="QWidget" name="iptNATRuleOptions">
<layout class="QGridLayout" name="gridLayout_2">
<property name="spacing">
<number>12</number>
</property>
<item row="0" column="0" >
<widget class="QLabel" name="label" >
<property name="text" >
<string>Normally, if object used to define translated source address is an interface marked as "dynamic", fwbuilder generates NAT rule with target MASQUERADE. However masquerading has problems with policy routing. This option makes fwbuilder use SNAT target instead.</string>
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Normally, if object used to define translated source address is an interface marked as &quot;dynamic&quot;, fwbuilder generates NAT rule with target MASQUERADE. However masquerading has problems with policy routing. This option makes fwbuilder use SNAT target instead.</string>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0" >
<widget class="QCheckBox" name="ipt_use_snat_instead_of_masq" >
<property name="text" >
<item row="1" column="0">
<widget class="QCheckBox" name="ipt_use_snat_instead_of_masq">
<property name="text">
<string>Use SNAT target instead of MASQUERADING for NAT rules with dynamic interfaces</string>
</property>
</widget>
</item>
<item row="2" column="0" >
<widget class="QCheckBox" name="ipt_snat_random" >
<property name="text" >
<string>Randomize source port mapping in SNAT rules</string>
<item row="2" column="0">
<widget class="QCheckBox" name="ipt_snat_random">
<property name="text">
<string>Randomize source port mapping in SNAT and MASQUERADE rules</string>
</property>
</widget>
</item>
<item row="3" column="0" >
<spacer name="verticalSpacer" >
<property name="orientation" >
<item row="3" column="0">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>81</height>
@@ -122,23 +123,23 @@
</item>
</layout>
</widget>
<widget class="QWidget" name="pfNATRuleOptions" >
<layout class="QGridLayout" >
<property name="margin" >
<widget class="QWidget" name="pfNATRuleOptions">
<layout class="QGridLayout">
<property name="margin">
<number>12</number>
</property>
<property name="spacing" >
<property name="spacing">
<number>12</number>
</property>
<item row="3" column="0" >
<item row="3" column="0">
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
@@ -146,58 +147,58 @@
</property>
</spacer>
</item>
<item rowspan="3" row="0" column="0" >
<widget class="QGroupBox" name="buttonGroup1" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Minimum" hsizetype="Preferred" >
<item row="0" column="0" rowspan="3">
<widget class="QGroupBox" name="buttonGroup1">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="title" >
<property name="title">
<string>Pool type</string>
</property>
<layout class="QGridLayout" >
<property name="margin" >
<layout class="QGridLayout">
<property name="margin">
<number>12</number>
</property>
<property name="spacing" >
<property name="spacing">
<number>12</number>
</property>
<item row="0" column="0" >
<widget class="QRadioButton" name="pf_pool_type_none" >
<property name="text" >
<item row="0" column="0">
<widget class="QRadioButton" name="pf_pool_type_none">
<property name="text">
<string>default</string>
</property>
<property name="checked" >
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0" >
<widget class="QRadioButton" name="pf_bitmask" >
<property name="text" >
<item row="1" column="0">
<widget class="QRadioButton" name="pf_bitmask">
<property name="text">
<string>bitmask</string>
</property>
</widget>
</item>
<item row="2" column="0" >
<widget class="QRadioButton" name="pf_random" >
<property name="text" >
<item row="2" column="0">
<widget class="QRadioButton" name="pf_random">
<property name="text">
<string>random</string>
</property>
</widget>
</item>
<item row="3" column="0" >
<widget class="QRadioButton" name="pf_source_hash" >
<property name="text" >
<item row="3" column="0">
<widget class="QRadioButton" name="pf_source_hash">
<property name="text">
<string>source-hash</string>
</property>
</widget>
</item>
<item row="4" column="0" >
<widget class="QRadioButton" name="pf_round_robin" >
<property name="text" >
<item row="4" column="0">
<widget class="QRadioButton" name="pf_round_robin">
<property name="text">
<string>round-robin</string>
</property>
</widget>
@@ -205,15 +206,15 @@
</layout>
</widget>
</item>
<item row="2" column="2" >
<item row="2" column="2">
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType" >
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>81</width>
<height>20</height>
@@ -221,15 +222,15 @@
</property>
</spacer>
</item>
<item rowspan="2" row="2" column="1" >
<item row="2" column="1" rowspan="2">
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>130</height>
@@ -237,22 +238,22 @@
</property>
</spacer>
</item>
<item row="1" column="1" colspan="2" >
<widget class="QCheckBox" name="pf_static_port" >
<property name="text" >
<item row="1" column="1" colspan="2">
<widget class="QCheckBox" name="pf_static_port">
<property name="text">
<string>static-port</string>
</property>
</widget>
</item>
<item row="0" column="1" >
<item row="0" column="1">
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
@@ -274,11 +275,11 @@
<receiver>NATRuleOptionsDialog_q</receiver>
<slot>changed()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
@@ -290,11 +291,11 @@
<receiver>NATRuleOptionsDialog_q</receiver>
<slot>changed()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
@@ -306,11 +307,11 @@
<receiver>NATRuleOptionsDialog_q</receiver>
<slot>changed()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
@@ -322,11 +323,11 @@
<receiver>NATRuleOptionsDialog_q</receiver>
<slot>changed()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
@@ -338,11 +339,11 @@
<receiver>NATRuleOptionsDialog_q</receiver>
<slot>changed()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
@@ -354,11 +355,11 @@
<receiver>NATRuleOptionsDialog_q</receiver>
<slot>changed()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
@@ -370,11 +371,11 @@
<receiver>NATRuleOptionsDialog_q</receiver>
<slot>changed()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>307</x>
<y>108</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>304</x>
<y>116</y>
</hint>
@@ -386,11 +387,11 @@
<receiver>NATRuleOptionsDialog_q</receiver>
<slot>changed()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>366</x>
<y>123</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>362</x>
<y>166</y>
</hint>
+5
View File
@@ -686,6 +686,11 @@ bool NATCompiler_ipt::PrintRule::processNext()
switch (rule->getRuleType())
{
case NATRule::Masq:
if (ropt->getBool("ipt_snat_random"))
cmdout << " --random";
break;
case NATRule::SNAT:
if (rule->getStr("ipt_target")=="SNAT")
{