File fix_vpnc_properties.patch of Package NetworkManager-kde
Index: knetworkmanager/vpn-plugins/vpnc/src/vpncprop.ui
===================================================================
--- knetworkmanager/vpn-plugins/vpnc/src/vpncprop.ui (Revision 897081)
+++ knetworkmanager/vpn-plugins/vpnc/src/vpncprop.ui (Revision 897092)
@@ -1,4 +1,4 @@
-<!DOCTYPE UI><UI version="3.2" stdsetdef="1">
+<!DOCTYPE UI><UI version="3.3" stdsetdef="1">
<class>VPNCConfigWidget</class>
<widget class="QWidget">
<property name="name">
@@ -9,9 +9,12 @@
<x>0</x>
<y>0</y>
<width>667</width>
- <height>368</height>
+ <height>435</height>
</rect>
</property>
+ <property name="caption">
+ <string>VPNCConfigWidget</string>
+ </property>
<grid>
<property name="name">
<cstring>unnamed</cstring>
@@ -96,55 +99,6 @@
<property name="name">
<cstring>unnamed</cstring>
</property>
- <widget class="QCheckBox" row="8" column="0" rowspan="1" colspan="2">
- <property name="name">
- <cstring>chkIPAdresses</cstring>
- </property>
- <property name="text">
- <string>Only use VPN Connection for these Adresses (for example: 172.16.0.0/16 10.11.12.0/24)</string>
- </property>
- </widget>
- <spacer row="10" column="1">
- <property name="name">
- <cstring>spacer10</cstring>
- </property>
- <property name="orientation">
- <enum>Vertical</enum>
- </property>
- <property name="sizeType">
- <enum>Expanding</enum>
- </property>
- <property name="sizeHint">
- <size>
- <width>20</width>
- <height>16</height>
- </size>
- </property>
- </spacer>
- <widget class="QCheckBox" row="6" column="0" rowspan="1" colspan="2">
- <property name="name">
- <cstring>chkDisableNatTraversal</cstring>
- </property>
- <property name="text">
- <string>Disable NAT traversal</string>
- </property>
- </widget>
- <widget class="QCheckBox" row="7" column="0" rowspan="1" colspan="2">
- <property name="name">
- <cstring>chkSingleDES</cstring>
- </property>
- <property name="text">
- <string>Enable weak single DES encryption</string>
- </property>
- </widget>
- <widget class="KLineEdit" row="9" column="0" rowspan="1" colspan="2">
- <property name="name">
- <cstring>routes</cstring>
- </property>
- <property name="enabled">
- <bool>false</bool>
- </property>
- </widget>
<widget class="QCheckBox" row="4" column="0" rowspan="1" colspan="2">
<property name="name">
<cstring>chkUseKeepAlive</cstring>
@@ -169,14 +123,6 @@
<string>Override user name</string>
</property>
</widget>
- <widget class="KLineEdit" row="1" column="1">
- <property name="name">
- <cstring>Xauth_username</cstring>
- </property>
- <property name="enabled">
- <bool>false</bool>
- </property>
- </widget>
<widget class="QLabel" row="1" column="0">
<property name="name">
<cstring>lblUsername</cstring>
@@ -188,14 +134,6 @@
<string>Username</string>
</property>
</widget>
- <widget class="KLineEdit" row="3" column="1">
- <property name="name">
- <cstring>Domain</cstring>
- </property>
- <property name="enabled">
- <bool>false</bool>
- </property>
- </widget>
<widget class="QLabel" row="3" column="0">
<property name="name">
<cstring>lblDomain</cstring>
@@ -234,13 +172,81 @@
</sizepolicy>
</property>
</widget>
+ <widget class="KLineEdit" row="3" column="1">
+ <property name="name">
+ <cstring>Domain</cstring>
+ </property>
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ </widget>
+ <widget class="KLineEdit" row="1" column="1">
+ <property name="name">
+ <cstring>Xauth_username</cstring>
+ </property>
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ </widget>
+ <widget class="QLabel" row="6" column="0">
+ <property name="name">
+ <cstring>textLabel1</cstring>
+ </property>
+ <property name="text">
+ <string>NAT traversal</string>
+ </property>
+ </widget>
+ <widget class="QComboBox" row="6" column="1">
+ <property name="name">
+ <cstring>cboNAT</cstring>
+ </property>
+ </widget>
+ <widget class="QCheckBox" row="7" column="0" rowspan="1" colspan="2">
+ <property name="name">
+ <cstring>chkSingleDES</cstring>
+ </property>
+ <property name="text">
+ <string>Enable weak single DES encryption</string>
+ </property>
+ </widget>
+ <widget class="QCheckBox" row="8" column="0" rowspan="1" colspan="2">
+ <property name="name">
+ <cstring>chkIPAdresses</cstring>
+ </property>
+ <property name="text">
+ <string>Only use VPN Connection for these Adresses (for example: 172.16.0.0/16 10.11.12.0/24)</string>
+ </property>
+ </widget>
+ <spacer row="10" column="1">
+ <property name="name">
+ <cstring>spacer10</cstring>
+ </property>
+ <property name="orientation">
+ <enum>Vertical</enum>
+ </property>
+ <property name="sizeType">
+ <enum>Expanding</enum>
+ </property>
+ <property name="sizeHint">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ <widget class="KLineEdit" row="9" column="0" rowspan="1" colspan="2">
+ <property name="name">
+ <cstring>routes</cstring>
+ </property>
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ </widget>
</grid>
</widget>
</widget>
</grid>
</widget>
-<customwidgets>
-</customwidgets>
<layoutdefaults spacing="6" margin="11"/>
<includehints>
</includehints>
Index: knetworkmanager/vpn-plugins/vpnc/src/knetworkmanager-vpnc.cpp
===================================================================
--- knetworkmanager/vpn-plugins/vpnc/src/knetworkmanager-vpnc.cpp (Revision 897081)
+++ knetworkmanager/vpn-plugins/vpnc/src/knetworkmanager-vpnc.cpp (Revision 897092)
@@ -40,7 +40,11 @@
typedef KGenericFactory<VPNCPlugin> VPNCPluginFactory;
K_EXPORT_COMPONENT_FACTORY( knetworkmanager_vpnc, VPNCPluginFactory("knetworkmanager_vpnc"));
+#define NAT_MODE_CISCO 0
+#define NAT_MODE_NATT 1
+#define NAT_MODE_DISABLED 2
+
VPNCPlugin::VPNCPlugin(QObject* parent, const char* name, const QStringList& args)
: VPNPlugin(parent, name, args)
{
@@ -82,6 +86,10 @@
connect(_vpncWidget->chkUseKeepAlive, SIGNAL(toggled(bool)), _vpncWidget->nat_keep_alive_interval, SLOT(setEnabled(bool)));
connect(_vpncWidget->chkUseKeepAlive, SIGNAL(toggled(bool)), _vpncWidget->lblKeepAliveInterval, SLOT(setEnabled(bool)));
+ _vpncWidget->cboNAT->insertItem(i18n("Cisco UDP (default)"), NAT_MODE_CISCO);
+ _vpncWidget->cboNAT->insertItem(i18n("NAT-T"), NAT_MODE_NATT);
+ _vpncWidget->cboNAT->insertItem(i18n("Disabled"), NAT_MODE_DISABLED);
+
this->languageChange();
}
@@ -126,13 +134,27 @@
_vpncWidget->nat_keep_alive_interval->setText(value);
_vpncWidget->chkUseKeepAlive->setChecked(true);
}
+ // backwards compatibility
else if (entry == "Disable NAT Traversal")
{
- _vpncWidget->chkDisableNatTraversal->setChecked(value == "true");
+ _vpncWidget->cboNAT->setCurrentItem(NAT_MODE_DISABLED);
}
+ else if (entry == "NAT Traversal Mode")
+ {
+ if (value == "natt")
+ _vpncWidget->cboNAT->setCurrentItem(NAT_MODE_NATT);
+ else if (value == "cisco-udp")
+ _vpncWidget->cboNAT->setCurrentItem(NAT_MODE_CISCO);
+ else if (value == "none")
+ _vpncWidget->cboNAT->setCurrentItem(NAT_MODE_DISABLED);
+ else
+ {
+ // FIXME: unknown NAT mode
+ }
+ }
else if (entry == "Enable Single DES")
{
- _vpncWidget->chkSingleDES->setChecked(value == "true");
+ _vpncWidget->chkSingleDES->setChecked(value == "yes" || value == "true");
}
}
@@ -160,9 +182,25 @@
if (_vpncWidget->chkUseKeepAlive->isChecked())
strlist.insert("NAT-Keepalive packet interval", QString(_vpncWidget->nat_keep_alive_interval->text()));
- strlist.insert("Disable NAT Traversal", QString::number(_vpncWidget->chkDisableNatTraversal->isChecked()));
- strlist.insert("Enable Single DES", QString::number(_vpncWidget->chkSingleDES->isChecked()));
+ switch (_vpncWidget->cboNAT->currentItem())
+ {
+ case NAT_MODE_CISCO:
+ strlist.insert("NAT Traversal Mode", "cisco-udp");
+ break;
+ case NAT_MODE_NATT:
+ strlist.insert("NAT Traversal Mode", "natt");
+ break;
+ case NAT_MODE_DISABLED:
+ default:
+ strlist.insert("NAT Traversal Mode", "none");
+ break;
+ }
+ if (_vpncWidget->chkSingleDES->isChecked())
+ strlist.insert("Enable Single DES", "yes");
+ else
+ strlist.insert("Enable Single DES", "no");
+
return strlist;
}