NetworkManager r3305 - in branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc: . properties src
- From: dcbw svn gnome org
- To: svn-commits-list gnome org
- Subject: NetworkManager r3305 - in branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc: . properties src
- Date: Mon, 11 Feb 2008 23:57:52 +0000 (GMT)
Author: dcbw
Date: Mon Feb 11 23:57:52 2008
New Revision: 3305
URL: http://svn.gnome.org/viewvc/NetworkManager?rev=3305&view=rev
Log:
2008-02-11 Dan Williams <dcbw redhat com>
Patch from Cyril Jaquier <cyril jaquier jaqpot net>
* properties/nm-vpnc-dialog.glade
properties/nm-vpnc.c
src/nm-vpnc-service.c
- Add support for "Vendor", "Enable Single DES", and
"Disable NAT Traversal"
Modified:
branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/ChangeLog
branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/properties/nm-vpnc-dialog.glade
branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/properties/nm-vpnc.c
branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/src/nm-vpnc-service.c
Modified: branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/properties/nm-vpnc-dialog.glade
==============================================================================
--- branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/properties/nm-vpnc-dialog.glade (original)
+++ branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/properties/nm-vpnc-dialog.glade Mon Feb 11 23:57:52 2008
@@ -2,7 +2,6 @@
<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
<glade-interface>
-<requires lib="gnome"/>
<widget class="GtkWindow" id="nm-vpnc-widget-window">
<property name="title" translatable="yes"></property>
@@ -214,54 +213,60 @@
<child>
<widget class="GtkTable" id="table1">
<property name="visible">True</property>
- <property name="n_rows">2</property>
+ <property name="n_rows">3</property>
<property name="n_columns">2</property>
<property name="homogeneous">False</property>
<property name="row_spacing">6</property>
<property name="column_spacing">12</property>
<child>
- <widget class="GtkEntry" id="vpnc-gateway">
+ <widget class="GtkComboBox" id="vpnc-vendor">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="editable">True</property>
- <property name="visibility">True</property>
- <property name="max_length">0</property>
- <property name="text" translatable="yes"></property>
- <property name="has_frame">True</property>
- <property name="activates_default">False</property>
+ <property name="items">Cisco
+Netscreen</property>
+ <property name="add_tearoffs">False</property>
+ <property name="focus_on_click">True</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
</packing>
</child>
<child>
- <widget class="GtkEntry" id="vpnc-group-name">
+ <widget class="GtkLabel" id="label4">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="editable">True</property>
- <property name="visibility">True</property>
- <property name="max_length">0</property>
- <property name="text" translatable="yes"></property>
- <property name="has_frame">True</property>
- <property name="activates_default">False</property>
+ <property name="label" translatable="yes">_Vendor:</property>
+ <property name="use_underline">True</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">1</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ <property name="mnemonic_widget">vpnc-vendor</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+ <property name="width_chars">-1</property>
+ <property name="single_line_mode">False</property>
+ <property name="angle">0</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label7">
+ <widget class="GtkLabel" id="label8">
<property name="visible">True</property>
- <property name="label" translatable="yes">_Gateway:</property>
+ <property name="label" translatable="yes">G_roup Name:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
@@ -271,7 +276,7 @@
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
- <property name="mnemonic_widget">vpnc-gateway</property>
+ <property name="mnemonic_widget">vpnc-group-name</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
@@ -280,16 +285,16 @@
<packing>
<property name="left_attach">0</property>
<property name="right_attach">1</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options">fill</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label8">
+ <widget class="GtkLabel" id="label7">
<property name="visible">True</property>
- <property name="label" translatable="yes">G_roup Name:</property>
+ <property name="label" translatable="yes">_Gateway:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
@@ -299,7 +304,7 @@
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
- <property name="mnemonic_widget">vpnc-group-name</property>
+ <property name="mnemonic_widget">vpnc-gateway</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
@@ -308,9 +313,47 @@
<packing>
<property name="left_attach">0</property>
<property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options"></property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="vpnc-group-name">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
- <property name="x_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkEntry" id="vpnc-gateway">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">True</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="activates_default">False</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
</packing>
</child>
</widget>
@@ -560,6 +603,42 @@
<property name="fill">True</property>
</packing>
</child>
+
+ <child>
+ <widget class="GtkCheckButton" id="vpnc-disable-natt">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Disable NAT Traversal</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCheckButton" id="vpnc-enable-singledes">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Enable weak single DES encryption</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
</widget>
</child>
</widget>
Modified: branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/properties/nm-vpnc.c
==============================================================================
--- branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/properties/nm-vpnc.c (original)
+++ branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/properties/nm-vpnc.c Mon Feb 11 23:57:52 2008
@@ -55,9 +55,12 @@
GtkCheckButton *w_use_domain;
GtkEntry *w_domain;
GtkCheckButton *w_use_routes;
+ GtkCheckButton *w_disable_natt;
+ GtkCheckButton *w_enable_singledes;
GtkEntry *w_routes;
GtkExpander *w_opt_info_expander;
GtkButton *w_import_button;
+ GtkComboBox *w_vendor;
};
static void
@@ -68,6 +71,8 @@
gtk_entry_set_text (impl->w_group_name, "");
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_use_alternate_username), FALSE);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_use_routes), FALSE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_disable_natt), FALSE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_enable_singledes), FALSE);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_use_domain), FALSE);
gtk_entry_set_text (impl->w_username, "");
gtk_entry_set_text (impl->w_routes, "");
@@ -104,6 +109,9 @@
if (connection_name != NULL)
gtk_entry_set_text (impl->w_connection_name, connection_name);
+ /* Default vendor is Cisco */
+ gtk_combo_box_set_active (GTK_COMBO_BOX (impl->w_vendor), 0);
+
for (i = properties; i != NULL && g_slist_next (i) != NULL; i = g_slist_next (g_slist_next (i))) {
const char *key;
const char *value;
@@ -125,7 +133,16 @@
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_use_domain), TRUE);
gtk_widget_set_sensitive (GTK_WIDGET (impl->w_domain), TRUE);
should_expand = TRUE;
- }
+ } else if (strcmp (key, "Disable NAT Traversal") == 0) {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_disable_natt), TRUE);
+ } else if (strcmp (key, "Enable Single DES") == 0) {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_enable_singledes), TRUE);
+ } else if (strcmp (key, "Vendor") == 0) {
+ if (strcmp (value, "netscreen"))
+ gtk_combo_box_set_active (GTK_COMBO_BOX (impl->w_vendor), 1);
+ else /* Cisco as default */
+ gtk_combo_box_set_active (GTK_COMBO_BOX (impl->w_vendor), 0);
+ }
}
@@ -172,7 +189,10 @@
gboolean use_alternate_username;
const char *username;
gboolean use_domain;
+ gboolean disable_natt;
+ gboolean enable_singledes;
const char *domain;
+ gint vendor;
connectionname = gtk_entry_get_text (impl->w_connection_name);
gateway = gtk_entry_get_text (impl->w_gateway);
@@ -180,13 +200,25 @@
use_alternate_username = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_use_alternate_username));
username = gtk_entry_get_text (impl->w_username);
use_domain = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_use_domain));
+ disable_natt = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_disable_natt));
+ enable_singledes = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_enable_singledes));
domain = gtk_entry_get_text (impl->w_domain);
+ vendor = gtk_combo_box_get_active (impl->w_vendor);
data = NULL;
data = g_slist_append (data, g_strdup ("IPSec gateway"));
data = g_slist_append (data, g_strdup (gateway));
data = g_slist_append (data, g_strdup ("IPSec ID"));
data = g_slist_append (data, g_strdup (groupname));
+
+ if (vendor == 0) {
+ data = g_slist_append (data, g_strdup ("Vendor"));
+ data = g_slist_append (data, g_strdup ("cisco"));
+ } else {
+ data = g_slist_append (data, g_strdup ("Vendor"));
+ data = g_slist_append (data, g_strdup ("netscreen"));
+ }
+
if (use_alternate_username) {
data = g_slist_append (data, g_strdup ("Xauth username"));
data = g_slist_append (data, g_strdup (username));
@@ -195,6 +227,14 @@
data = g_slist_append (data, g_strdup ("Domain"));
data = g_slist_append (data, g_strdup (domain));
}
+ if (enable_singledes) {
+ data = g_slist_append (data, g_strdup ("Enable Single DES"));
+ data = g_slist_append (data, g_strdup (""));
+ }
+ if (disable_natt) {
+ data = g_slist_append (data, g_strdup ("Disable NAT Traversal"));
+ data = g_slist_append (data, g_strdup (""));
+ }
return data;
}
@@ -266,7 +306,10 @@
gboolean use_routes;
const char *routes_entry;
gboolean use_domain;
+ gboolean disable_natt;
+ gboolean enable_singledes;
const char *domain_entry;
+ gint vendor;
is_valid = FALSE;
@@ -276,9 +319,12 @@
use_alternate_username = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_use_alternate_username));
username = gtk_entry_get_text (impl->w_username);
use_routes = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_use_routes));
+ disable_natt = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_disable_natt));
+ enable_singledes = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_enable_singledes));
routes_entry = gtk_entry_get_text (impl->w_routes);
use_domain = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_use_domain));
domain_entry = gtk_entry_get_text (impl->w_domain);
+ vendor = gtk_combo_box_get_active (impl->w_vendor);
/* initial sanity checking */
if (strlen (connectionname) > 0 &&
@@ -296,6 +342,10 @@
is_valid = FALSE;
}
+ /* validate vendor */
+ if (is_valid && vendor == -1)
+ is_valid = FALSE;
+
/* validate groupname; can be anything */
/* validate user; can be anything */
@@ -429,9 +479,12 @@
gboolean use_alternate_username;
const char *username;
gboolean use_routes;
+ gboolean disable_natt;
+ gboolean enable_singledes;
const char *routes;
gboolean use_domain;
const char *domain;
+ gint vendor;
connectionname = gtk_entry_get_text (impl->w_connection_name);
gateway = gtk_entry_get_text (impl->w_gateway);
@@ -439,9 +492,12 @@
use_alternate_username = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_use_alternate_username));
username = gtk_entry_get_text (impl->w_username);
use_routes = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_use_routes));
+ disable_natt = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_disable_natt));
+ enable_singledes = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_enable_singledes));
routes = gtk_entry_get_text (impl->w_routes);
use_domain = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (impl->w_use_domain));
domain = gtk_entry_get_text (impl->w_domain);
+ vendor = gtk_combo_box_get_active (impl->w_vendor);
buf = g_string_sized_new (512);
@@ -449,6 +505,12 @@
g_string_append (buf, "\n\n\t");
g_string_append_printf (buf, _("Name: %s"), connectionname);
g_string_append (buf, "\n\n\t");
+
+ if (vendor == 0)
+ g_string_append_printf (buf, _("Vendor: cisco"));
+ else
+ g_string_append_printf (buf, _("Vendor: netscreen"));
+ g_string_append (buf, "\n\t");
g_string_append_printf (buf, _("Gateway: %s"), gateway);
g_string_append (buf, "\n\t");
@@ -468,6 +530,14 @@
g_string_append (buf, "\n\t");
g_string_append_printf (buf, _("Routes: %s"), routes);
}
+ if (enable_singledes) {
+ g_string_append (buf, "\n\t");
+ g_string_append_printf (buf, _("Enable Single DES"));
+ }
+ if (disable_natt) {
+ g_string_append (buf, "\n\t");
+ g_string_append_printf (buf, _("Disable NAT Traversal"));
+ }
g_string_append (buf, "\n\n");
g_string_append (buf, _("The connection details can be changed using the \"Edit\" button."));
@@ -530,6 +600,20 @@
gtk_expander_set_expanded (impl->w_opt_info_expander, expand);
+ if ((buf = pcf_file_lookup_value (pcf, "main", "SingleDES"))) {
+ if (strncmp (buf, "1", 1) == 0)
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_enable_singledes), TRUE);
+ else
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_enable_singledes), FALSE);
+ }
+
+ if ((buf = pcf_file_lookup_value (pcf, "main", "EnableNat"))) {
+ if (strncmp (buf, "0", 1) == 0)
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_disable_natt), TRUE);
+ else
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (impl->w_disable_natt), FALSE);
+ }
+
if ((buf = pcf_file_lookup_value (pcf, "main", "TunnelingMode"))) {
/* If applicable, put up warning that TCP tunneling will be disabled */
@@ -601,7 +685,7 @@
if (filename != NULL) {
import_from_file (impl, filename);
g_free (filename);
- }
+ }
}
static gboolean
@@ -625,6 +709,8 @@
FILE *f;
GSList *i;
const char *gateway = NULL;
+ const char *enablenat = "1";
+ const char *singledes = "0";
const char *groupname = NULL;
const char *username = NULL;
const char *domain = NULL;
@@ -648,6 +734,10 @@
username = value;
} else if (strcmp (key, "Domain") == 0) {
domain = value;
+ } else if (strcmp (key, "Disable NAT Traversal") == 0) {
+ enablenat = "0";
+ } else if (strcmp (key, "Enable Single DES") == 0) {
+ singledes = "1";
}
}
@@ -693,7 +783,7 @@
"SaveUserPassword=0\n"
"EnableBackup=0\n"
"BackupServer=\n"
- "EnableNat=1\n"
+ "EnableNat=%s\n"
"CertStore=0\n"
"CertName=\n"
"CertPath=\n"
@@ -714,13 +804,16 @@
"SendCertChain=0\n"
"VerifyCertDN=\n"
"EnableSplitDNS=1\n"
+ "SingleDES=%s\n"
"SPPhonebook=\n"
"%s",
/* Description */ connection_name,
/* Host */ gateway,
/* GroupName */ groupname,
/* Username */ username != NULL ? username : "",
+ /* EnableNat */ enablenat,
/* NTDomain */ domain != NULL ? domain : "",
+ /* SingleDES */ singledes,
/* X-NM-Routes */ routes_str != NULL ? routes_str : "");
fclose (f);
@@ -825,9 +918,12 @@
impl->w_use_alternate_username = GTK_CHECK_BUTTON (glade_xml_get_widget (impl->xml, "vpnc-use-alternate-username"));
impl->w_username = GTK_ENTRY (glade_xml_get_widget (impl->xml, "vpnc-username"));
impl->w_use_routes = GTK_CHECK_BUTTON (glade_xml_get_widget (impl->xml, "vpnc-use-routes"));
+ impl->w_disable_natt = GTK_CHECK_BUTTON (glade_xml_get_widget (impl->xml, "vpnc-disable-natt"));
+ impl->w_enable_singledes = GTK_CHECK_BUTTON (glade_xml_get_widget (impl->xml, "vpnc-enable-singledes"));
impl->w_routes = GTK_ENTRY (glade_xml_get_widget (impl->xml, "vpnc-routes"));
impl->w_use_domain = GTK_CHECK_BUTTON (glade_xml_get_widget (impl->xml, "vpnc-use-domain"));
impl->w_domain = GTK_ENTRY (glade_xml_get_widget (impl->xml, "vpnc-domain"));
+ impl->w_vendor = GTK_COMBO_BOX (glade_xml_get_widget (impl->xml, "vpnc-vendor"));
impl->w_opt_info_expander = GTK_EXPANDER (glade_xml_get_widget (impl->xml,
"vpnc-optional-information-expander"));
impl->w_import_button = GTK_BUTTON (glade_xml_get_widget (impl->xml,
@@ -855,6 +951,8 @@
"changed", GTK_SIGNAL_FUNC (editable_changed), impl);
gtk_signal_connect (GTK_OBJECT (impl->w_domain),
"changed", GTK_SIGNAL_FUNC (editable_changed), impl);
+ gtk_signal_connect (GTK_OBJECT (impl->w_vendor),
+ "changed", GTK_SIGNAL_FUNC (editable_changed), impl);
gtk_signal_connect (GTK_OBJECT (impl->w_import_button),
"clicked", GTK_SIGNAL_FUNC (import_button_clicked), impl);
Modified: branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/src/nm-vpnc-service.c
==============================================================================
--- branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/src/nm-vpnc-service.c (original)
+++ branches/NETWORKMANAGER_0_6_0_RELEASE/vpn-daemons/vpnc/src/nm-vpnc-service.c Mon Feb 11 23:57:52 2008
@@ -505,6 +505,9 @@
{ "Application Version", OPT_TYPE_ASCII },
{ "Rekeying interval", OPT_TYPE_ASCII },
{ "NAT-Keepalive packet interval", OPT_TYPE_ASCII },
+ { "Vendor", OPT_TYPE_ASCII },
+ { "Enable Single DES", OPT_TYPE_ASCII },
+ { "Disable NAT Traversal", OPT_TYPE_ASCII },
{ NULL, OPT_TYPE_UNKNOWN }
};
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]