[NetworkManager-openconnect/el5: 2/2] Backport to RHEL5
David Woodhouse
dwmw2 at fedoraproject.org
Thu Jun 21 15:35:05 UTC 2012
commit a40d9343bdd0efd8ef27345ae7364b721902a8bf
Author: David Woodhouse <David.Woodhouse at intel.com>
Date: Thu Jun 21 16:34:56 2012 +0100
Backport to RHEL5
...-Build-against-NetworkManager-0.8.1-again.patch | 33 +-
0002-Revert-to-glade.patch | 1595 ++++++++++++++++++++
...rt-trivial-fix-for-NM-0.8.1.999-0.8.2-rc1.patch | 28 +
...Revert-Use-GChecksum-for-sha1-not-OpenSSL.patch | 57 +
NetworkManager-openconnect.spec | 27 +-
5 files changed, 1725 insertions(+), 15 deletions(-)
---
diff --git a/build-against-081.patch b/0001-Build-against-NetworkManager-0.8.1-again.patch
similarity index 75%
rename from build-against-081.patch
rename to 0001-Build-against-NetworkManager-0.8.1-again.patch
index 8493948..8f71ffc 100644
--- a/build-against-081.patch
+++ b/0001-Build-against-NetworkManager-0.8.1-again.patch
@@ -1,3 +1,14 @@
+From 48e41afda062509aa2e07041fcd497882c12909b Mon Sep 17 00:00:00 2001
+From: David Woodhouse <David.Woodhouse at intel.com>
+Date: Thu, 21 Jun 2012 14:47:02 +0100
+Subject: [PATCH 1/4] Build against NetworkManager 0.8.1 again
+
+---
+ auth-dialog/main.c | 9 ++++++---
+ configure.ac | 10 +++++-----
+ src/nm-openconnect-service-openconnect-helper.c | 22 ++++------------------
+ 3 files changed, 15 insertions(+), 26 deletions(-)
+
diff --git a/auth-dialog/main.c b/auth-dialog/main.c
index ea728b6..1c244e5 100644
--- a/auth-dialog/main.c
@@ -33,9 +44,18 @@ index ea728b6..1c244e5 100644
ui_data->vpninfo = (void *)openconnect_vpninfo_new("OpenConnect VPN Agent (NetworkManager)",
validate_peer_cert, write_new_config,
diff --git a/configure.ac b/configure.ac
-index a7f864f..e8617eb 100644
+index a7f864f..8762b8d 100644
--- a/configure.ac
+++ b/configure.ac
+@@ -60,7 +60,7 @@ PKG_CHECK_MODULES(LIBXML, libxml-2.0)
+ AC_SUBST(LIBXML_CFLAGS)
+ AC_SUBST(LIBXML_LIBS)
+
+-PKG_CHECK_MODULES(DBUS, dbus-glib-1 >= 0.74)
++PKG_CHECK_MODULES(DBUS, dbus-glib-1 >= 0.73)
+ AC_SUBST(DBUS_CFLAGS)
+ AC_SUBST(DBUS_LIBS)
+
@@ -85,10 +85,10 @@ if test x"$with_gnome" != xno; then
fi
@@ -44,10 +64,10 @@ index a7f864f..e8617eb 100644
- libnm-util >= 0.8.6
- libnm-glib >= 0.8.6
- libnm-glib-vpn >= 0.8.6)
-+ NetworkManager >= 0.8.1
-+ libnm-util >= 0.8.1
-+ libnm-glib >= 0.8.1
-+ libnm-glib-vpn >= 0.8.1)
++ NetworkManager >= 0.7.0
++ libnm-util >= 0.7.0
++ libnm_glib >= 0.7.0
++ libnm_glib_vpn >= 0.7.0)
AC_SUBST(NETWORKMANAGER_CFLAGS)
AC_SUBST(NETWORKMANAGER_LIBS)
@@ -101,3 +121,6 @@ index c195d46..2df4e76 100644
/* Banner */
val = str_to_gvalue (getenv ("CISCO_BANNER"), TRUE);
if (val)
+--
+1.7.10.2
+
diff --git a/0002-Revert-to-glade.patch b/0002-Revert-to-glade.patch
new file mode 100644
index 0000000..9b94cd5
--- /dev/null
+++ b/0002-Revert-to-glade.patch
@@ -0,0 +1,1595 @@
+From 37347c3eed62d3174e0cea8de6b9eaae447c262c Mon Sep 17 00:00:00 2001
+From: David Woodhouse <David.Woodhouse at intel.com>
+Date: Thu, 21 Jun 2012 14:35:02 +0100
+Subject: [PATCH 2/4] Revert to glade
+
+---
+ configure.ac | 4 +
+ properties/Makefile.am | 14 +-
+ properties/auth-helpers.c | 27 +-
+ properties/auth-helpers.h | 10 +-
+ properties/nm-openconnect-dialog.glade | 604 ++++++++++++++++++++++++++++++++
+ properties/nm-openconnect-dialog.ui | 555 -----------------------------
+ properties/nm-openconnect.c | 61 ++--
+ 7 files changed, 662 insertions(+), 613 deletions(-)
+ create mode 100644 properties/nm-openconnect-dialog.glade
+ delete mode 100644 properties/nm-openconnect-dialog.ui
+
+diff --git a/configure.ac b/configure.ac
+index 8762b8d..aa40380 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -69,6 +69,10 @@ if test x"$with_gnome" != xno; then
+ AC_SUBST(GTK_CFLAGS)
+ AC_SUBST(GTK_LIBS)
+
++ PKG_CHECK_MODULES(GLADE, libglade-2.0)
++ AC_SUBST(GLADE_CFLAGS)
++ AC_SUBST(GLADE_LIBS)
++
+ PKG_CHECK_MODULES(GCONF, gconf-2.0)
+ AC_SUBST(GCONF_CFLAGS)
+ AC_SUBST(GCONF_LIBS)
+diff --git a/properties/Makefile.am b/properties/Makefile.am
+index 8ff17c6..8467686 100644
+--- a/properties/Makefile.am
++++ b/properties/Makefile.am
+@@ -7,21 +7,23 @@ libnm_openconnect_properties_la_SOURCES = \
+ nm-openconnect.c \
+ nm-openconnect.h
+
+-uidir = $(datadir)/gnome-vpn-properties/openconnect
+-ui_DATA = nm-openconnect-dialog.ui
++gladedir = $(datadir)/gnome-vpn-properties/openconnect
++glade_DATA = nm-openconnect-dialog.glade
+
+-libnm_openconnect_properties_la_CFLAGS = \
++libnm_openconnect_properties_la_CFLAGS = \
++ $(GLADE_CFLAGS) \
+ $(GTK_CFLAGS) \
+ $(GCONF_CFLAGS) \
+ $(NETWORKMANAGER_CFLAGS) \
+ -DICONDIR=\""$(datadir)/pixmaps"\" \
+- -DUIDIR=\""$(uidir)"\" \
++ -DGLADEDIR=\""$(gladedir)"\" \
+ -DG_DISABLE_DEPRECATED \
+ -DGNOME_DISABLE_DEPRECATED \
+ -DGNOMELOCALEDIR=\"$(datadir)/locale\" \
+ -DVERSION=\"$(VERSION)\"
+
+ libnm_openconnect_properties_la_LIBADD = \
++ $(GLADE_LIBS) \
+ $(GTK_LIBS) \
+ $(GCONF_LIBS) \
+ $(NETWORKMANAGER_LIBS)
+@@ -29,7 +31,7 @@ libnm_openconnect_properties_la_LIBADD = \
+ libnm_openconnect_properties_la_LDFLAGS = \
+ -avoid-version
+
+-CLEANFILES = *.bak *~
++CLEANFILES = *.bak *.gladep *~
+
+ EXTRA_DIST = \
+- $(ui_DATA)
++ $(glade_DATA)
+diff --git a/properties/auth-helpers.c b/properties/auth-helpers.c
+index 905c1fe..b7a8be2 100644
+--- a/properties/auth-helpers.c
++++ b/properties/auth-helpers.c
+@@ -2,7 +2,6 @@
+ /***************************************************************************
+ *
+ * Copyright (C) 2008 Dan Williams, <dcbw at redhat.com>
+- * Copyright (C) 2008 - 2011 Red Hat, Inc.
+ * Copyright (C) 2008 Tambet Ingo, <tambet at gmail.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+@@ -40,7 +39,7 @@
+ #include "../src/nm-openconnect-service.h"
+
+ void
+-tls_pw_init_auth_widget (GtkBuilder *builder,
++tls_pw_init_auth_widget (GladeXML *xml,
+ GtkSizeGroup *group,
+ NMSettingVPN *s_vpn,
+ ChangedCallback changed_cb,
+@@ -50,11 +49,11 @@ tls_pw_init_auth_widget (GtkBuilder *builder,
+ const char *value;
+ GtkFileFilter *filter;
+
+- g_return_if_fail (builder != NULL);
++ g_return_if_fail (xml != NULL);
+ g_return_if_fail (group != NULL);
+ g_return_if_fail (changed_cb != NULL);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (builder, "ca_cert_chooser"));
++ widget = glade_xml_get_widget (xml, "ca_cert_chooser");
+
+ gtk_size_group_add_widget (group, widget);
+ filter = tls_file_chooser_filter_new ();
+@@ -70,7 +69,7 @@ tls_pw_init_auth_widget (GtkBuilder *builder,
+ gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (widget), value);
+ }
+
+- widget = GTK_WIDGET (gtk_builder_get_object (builder, "cert_user_cert_chooser"));
++ widget = glade_xml_get_widget (xml, "cert_user_cert_chooser");
+
+ gtk_size_group_add_widget (group, widget);
+ filter = tls_file_chooser_filter_new ();
+@@ -86,7 +85,7 @@ tls_pw_init_auth_widget (GtkBuilder *builder,
+ gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (widget), value);
+ }
+
+- widget = GTK_WIDGET (gtk_builder_get_object (builder, "cert_private_key_chooser"));
++ widget = glade_xml_get_widget (xml, "cert_private_key_chooser");
+
+ gtk_size_group_add_widget (group, widget);
+ filter = tls_file_chooser_filter_new ();
+@@ -104,13 +103,13 @@ tls_pw_init_auth_widget (GtkBuilder *builder,
+ }
+
+ gboolean
+-auth_widget_check_validity (GtkBuilder *builder, GError **error)
++auth_widget_check_validity (GladeXML *xml, GError **error)
+ {
+ return TRUE;
+ }
+
+ static void
+-update_from_filechooser (GtkBuilder *builder,
++update_from_filechooser (GladeXML *xml,
+ const char *key,
+ const char *widget_name,
+ NMSettingVPN *s_vpn)
+@@ -119,12 +118,12 @@ update_from_filechooser (GtkBuilder *builder,
+ char *filename;
+ char *authtype;
+
+- g_return_if_fail (builder != NULL);
++ g_return_if_fail (xml != NULL);
+ g_return_if_fail (key != NULL);
+ g_return_if_fail (widget_name != NULL);
+ g_return_if_fail (s_vpn != NULL);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (builder, widget_name));
++ widget = glade_xml_get_widget (xml, widget_name);
+
+ filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget));
+ if (filename && strlen(filename)) {
+@@ -141,13 +140,13 @@ update_from_filechooser (GtkBuilder *builder,
+ }
+
+ gboolean
+-auth_widget_update_connection (GtkBuilder *builder,
++auth_widget_update_connection (GladeXML *xml,
+ const char *contype,
+ NMSettingVPN *s_vpn)
+ {
+- update_from_filechooser (builder, NM_OPENCONNECT_KEY_CACERT, "ca_cert_chooser", s_vpn);
+- update_from_filechooser (builder, NM_OPENCONNECT_KEY_USERCERT, "cert_user_cert_chooser", s_vpn);
+- update_from_filechooser (builder, NM_OPENCONNECT_KEY_PRIVKEY, "cert_private_key_chooser", s_vpn);
++ update_from_filechooser (xml, NM_OPENCONNECT_KEY_CACERT, "ca_cert_chooser", s_vpn);
++ update_from_filechooser (xml, NM_OPENCONNECT_KEY_USERCERT, "cert_user_cert_chooser", s_vpn);
++ update_from_filechooser (xml, NM_OPENCONNECT_KEY_PRIVKEY, "cert_private_key_chooser", s_vpn);
+ return TRUE;
+ }
+
+diff --git a/properties/auth-helpers.h b/properties/auth-helpers.h
+index c2efe5e..79e86f9 100644
+--- a/properties/auth-helpers.h
++++ b/properties/auth-helpers.h
+@@ -2,7 +2,6 @@
+ /***************************************************************************
+ *
+ * Copyright (C) 2008 Dan Williams, <dcbw at redhat.com>
+- * Copyright (C) 2008 - 2011 Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+@@ -26,27 +25,28 @@
+ #include <glib.h>
+ #include <gtk/gtk.h>
+ #include <gtk/gtkfilefilter.h>
++#include <glade/glade.h>
+
+ #include <nm-connection.h>
+ #include <nm-setting-vpn.h>
+
+ typedef void (*ChangedCallback) (GtkWidget *widget, gpointer user_data);
+
+-void tls_pw_init_auth_widget (GtkBuilder *builder,
++void tls_pw_init_auth_widget (GladeXML *xml,
+ GtkSizeGroup *group,
+ NMSettingVPN *s_vpn,
+ ChangedCallback changed_cb,
+ gpointer user_data);
+
+-void sk_init_auth_widget (GtkBuilder *builder,
++void sk_init_auth_widget (GladeXML *xml,
+ GtkSizeGroup *group,
+ NMSettingVPN *s_vpn,
+ ChangedCallback changed_cb,
+ gpointer user_data);
+
+-gboolean auth_widget_check_validity (GtkBuilder *builder, GError **error);
++gboolean auth_widget_check_validity (GladeXML *xml, GError **error);
+
+-gboolean auth_widget_update_connection (GtkBuilder *builder,
++gboolean auth_widget_update_connection (GladeXML *xml,
+ const char *contype,
+ NMSettingVPN *s_vpn);
+
+diff --git a/properties/nm-openconnect-dialog.glade b/properties/nm-openconnect-dialog.glade
+new file mode 100644
+index 0000000..696b570
+--- /dev/null
++++ b/properties/nm-openconnect-dialog.glade
+@@ -0,0 +1,604 @@
++<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
++<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
++
++<glade-interface>
++
++<widget class="GtkWindow" id="openconnect-widget">
++ <property name="title" translatable="yes">window1</property>
++ <property name="type">GTK_WINDOW_TOPLEVEL</property>
++ <property name="window_position">GTK_WIN_POS_NONE</property>
++ <property name="modal">False</property>
++ <property name="resizable">True</property>
++ <property name="destroy_with_parent">False</property>
++ <property name="decorated">True</property>
++ <property name="skip_taskbar_hint">False</property>
++ <property name="skip_pager_hint">False</property>
++ <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
++ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
++ <property name="focus_on_map">True</property>
++ <property name="urgency_hint">False</property>
++
++ <child>
++ <widget class="GtkVBox" id="openconnect-vbox">
++ <property name="border_width">12</property>
++ <property name="visible">True</property>
++ <property name="homogeneous">False</property>
++ <property name="spacing">16</property>
++
++ <child>
++ <widget class="GtkVBox" id="vbox8">
++ <property name="visible">True</property>
++ <property name="homogeneous">False</property>
++ <property name="spacing">6</property>
++
++ <child>
++ <widget class="GtkLabel" id="label22">
++ <property name="visible">True</property>
++ <property name="label" translatable="yes"><b>General</b></property>
++ <property name="use_underline">False</property>
++ <property name="use_markup">True</property>
++ <property name="justify">GTK_JUSTIFY_LEFT</property>
++ <property name="wrap">False</property>
++ <property name="selectable">False</property>
++ <property name="xalign">0</property>
++ <property name="yalign">0.5</property>
++ <property name="xpad">0</property>
++ <property name="ypad">0</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="padding">0</property>
++ <property name="expand">False</property>
++ <property name="fill">False</property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkAlignment" id="alignment8">
++ <property name="visible">True</property>
++ <property name="xalign">0.5</property>
++ <property name="yalign">0.5</property>
++ <property name="xscale">1</property>
++ <property name="yscale">1</property>
++ <property name="top_padding">0</property>
++ <property name="bottom_padding">0</property>
++ <property name="left_padding">12</property>
++ <property name="right_padding">0</property>
++
++ <child>
++ <widget class="GtkTable" id="table2">
++ <property name="visible">True</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">6</property>
++
++ <child>
++ <widget class="GtkAlignment" id="alignment2">
++ <property name="visible">True</property>
++ <property name="xalign">1</property>
++ <property name="yalign">0.5</property>
++ <property name="xscale">0</property>
++ <property name="yscale">1</property>
++ <property name="top_padding">0</property>
++ <property name="bottom_padding">0</property>
++ <property name="left_padding">0</property>
++ <property name="right_padding">0</property>
++
++ <child>
++ <widget class="GtkEntry" id="gateway_entry">
++ <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="invisible_char">•</property>
++ <property name="activates_default">False</property>
++ </widget>
++ </child>
++ </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="y_options"></property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkAlignment" id="alignment11">
++ <property name="visible">True</property>
++ <property name="xalign">1</property>
++ <property name="yalign">0.5</property>
++ <property name="xscale">0</property>
++ <property name="yscale">1</property>
++ <property name="top_padding">0</property>
++ <property name="bottom_padding">0</property>
++ <property name="left_padding">0</property>
++ <property name="right_padding">0</property>
++
++ <child>
++ <widget class="GtkEntry" id="proxy_entry">
++ <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="invisible_char">•</property>
++ <property name="activates_default">False</property>
++ </widget>
++ </child>
++ </widget>
++ <packing>
++ <property name="left_attach">1</property>
++ <property name="right_attach">2</property>
++ <property name="top_attach">2</property>
++ <property name="bottom_attach">3</property>
++ <property name="x_options">fill</property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkAlignment" id="alignment12">
++ <property name="visible">True</property>
++ <property name="xalign">1</property>
++ <property name="yalign">0.5</property>
++ <property name="xscale">0</property>
++ <property name="yscale">1</property>
++ <property name="top_padding">0</property>
++ <property name="bottom_padding">0</property>
++ <property name="left_padding">0</property>
++ <property name="right_padding">0</property>
++
++ <child>
++ <widget class="GtkFileChooserButton" id="ca_cert_chooser">
++ <property name="visible">True</property>
++ <property name="title" translatable="yes">Select A File</property>
++ <property name="action">GTK_FILE_CHOOSER_ACTION_OPEN</property>
++ <property name="local_only">True</property>
++ <property name="show_hidden">True</property>
++ <property name="do_overwrite_confirmation">False</property>
++ <property name="width_chars">-1</property>
++ </widget>
++ </child>
++ </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="y_options"></property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkLabel" id="label23">
++ <property name="visible">True</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>
++ <property name="wrap">False</property>
++ <property name="selectable">False</property>
++ <property name="xalign">0</property>
++ <property name="yalign">0.5</property>
++ <property name="xpad">0</property>
++ <property name="ypad">0</property>
++ <property name="mnemonic_widget">gateway_entry</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">0</property>
++ <property name="right_attach">1</property>
++ <property name="top_attach">0</property>
++ <property name="bottom_attach">1</property>
++ <property name="y_options"></property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkLabel" id="label28">
++ <property name="visible">True</property>
++ <property name="label" translatable="yes">_Proxy:</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">0</property>
++ <property name="yalign">0.5</property>
++ <property name="xpad">0</property>
++ <property name="ypad">0</property>
++ <property name="mnemonic_widget">proxy_entry</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">0</property>
++ <property name="right_attach">1</property>
++ <property name="top_attach">2</property>
++ <property name="bottom_attach">3</property>
++ <property name="y_options"></property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkLabel" id="label27">
++ <property name="visible">True</property>
++ <property name="label" translatable="yes">_CA Certificate:</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">0</property>
++ <property name="yalign">0.5</property>
++ <property name="xpad">0</property>
++ <property name="ypad">0</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">0</property>
++ <property name="right_attach">1</property>
++ <property name="top_attach">1</property>
++ <property name="bottom_attach">2</property>
++ <property name="y_options"></property>
++ </packing>
++ </child>
++ </widget>
++ </child>
++ </widget>
++ <packing>
++ <property name="padding">0</property>
++ <property name="expand">True</property>
++ <property name="fill">True</property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkCheckButton" id="csd_button">
++ <property name="border_width">2</property>
++ <property name="visible">True</property>
++ <property name="can_focus">True</property>
++ <property name="label" translatable="yes">Allow Cisco Secure Desktop _trojan</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">False</property>
++ <property name="fill">False</property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkAlignment" id="alignment14">
++ <property name="visible">True</property>
++ <property name="xalign">0.5</property>
++ <property name="yalign">0.5</property>
++ <property name="xscale">1</property>
++ <property name="yscale">1</property>
++ <property name="top_padding">0</property>
++ <property name="bottom_padding">0</property>
++ <property name="left_padding">12</property>
++ <property name="right_padding">0</property>
++
++ <child>
++ <widget class="GtkTable" id="table3">
++ <property name="visible">True</property>
++ <property name="n_rows">1</property>
++ <property name="n_columns">2</property>
++ <property name="homogeneous">False</property>
++ <property name="row_spacing">6</property>
++ <property name="column_spacing">6</property>
++
++ <child>
++ <widget class="GtkAlignment" id="alignment15">
++ <property name="visible">True</property>
++ <property name="xalign">1</property>
++ <property name="yalign">0.5</property>
++ <property name="xscale">0</property>
++ <property name="yscale">1</property>
++ <property name="top_padding">0</property>
++ <property name="bottom_padding">0</property>
++ <property name="left_padding">0</property>
++ <property name="right_padding">0</property>
++
++ <child>
++ <widget class="GtkEntry" id="csd_wrapper_entry">
++ <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="invisible_char">•</property>
++ <property name="activates_default">False</property>
++ </widget>
++ </child>
++ </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="y_options"></property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkLabel" id="label29">
++ <property name="visible">True</property>
++ <property name="label" translatable="yes">CSD _Wrapper Script:</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">0</property>
++ <property name="yalign">0.5</property>
++ <property name="xpad">0</property>
++ <property name="ypad">0</property>
++ <property name="mnemonic_widget">csd_wrapper_entry</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">0</property>
++ <property name="right_attach">1</property>
++ <property name="top_attach">0</property>
++ <property name="bottom_attach">1</property>
++ <property name="y_options"></property>
++ </packing>
++ </child>
++ </widget>
++ </child>
++ </widget>
++ </child>
++ </widget>
++ <packing>
++ <property name="padding">0</property>
++ <property name="expand">False</property>
++ <property name="fill">True</property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkVBox" id="vbox11">
++ <property name="visible">True</property>
++ <property name="homogeneous">False</property>
++ <property name="spacing">6</property>
++
++ <child>
++ <widget class="GtkLabel" id="label25">
++ <property name="visible">True</property>
++ <property name="label" translatable="yes"><b>Certificate Authentication</b></property>
++ <property name="use_underline">False</property>
++ <property name="use_markup">True</property>
++ <property name="justify">GTK_JUSTIFY_LEFT</property>
++ <property name="wrap">False</property>
++ <property name="selectable">False</property>
++ <property name="xalign">0</property>
++ <property name="yalign">0.5</property>
++ <property name="xpad">0</property>
++ <property name="ypad">0</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="padding">0</property>
++ <property name="expand">False</property>
++ <property name="fill">False</property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkAlignment" id="alignment13">
++ <property name="visible">True</property>
++ <property name="xalign">0.5</property>
++ <property name="yalign">0.5</property>
++ <property name="xscale">1</property>
++ <property name="yscale">1</property>
++ <property name="top_padding">0</property>
++ <property name="bottom_padding">0</property>
++ <property name="left_padding">12</property>
++ <property name="right_padding">0</property>
++
++ <child>
++ <widget class="GtkTable" id="table1">
++ <property name="visible">True</property>
++ <property name="n_rows">2</property>
++ <property name="n_columns">2</property>
++ <property name="homogeneous">False</property>
++ <property name="row_spacing">6</property>
++ <property name="column_spacing">6</property>
++
++ <child>
++ <widget class="GtkAlignment" id="alignment5">
++ <property name="visible">True</property>
++ <property name="xalign">1</property>
++ <property name="yalign">0.5</property>
++ <property name="xscale">0</property>
++ <property name="yscale">1</property>
++ <property name="top_padding">0</property>
++ <property name="bottom_padding">0</property>
++ <property name="left_padding">0</property>
++ <property name="right_padding">0</property>
++
++ <child>
++ <widget class="GtkFileChooserButton" id="cert_user_cert_chooser">
++ <property name="visible">True</property>
++ <property name="title" translatable="yes">Select A File</property>
++ <property name="action">GTK_FILE_CHOOSER_ACTION_OPEN</property>
++ <property name="local_only">True</property>
++ <property name="show_hidden">False</property>
++ <property name="do_overwrite_confirmation">False</property>
++ <property name="width_chars">-1</property>
++ </widget>
++ </child>
++ </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="y_options"></property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkLabel" id="label3">
++ <property name="visible">True</property>
++ <property name="label" translatable="yes">_User Certificate:</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">0</property>
++ <property name="yalign">0.5</property>
++ <property name="xpad">0</property>
++ <property name="ypad">0</property>
++ <property name="mnemonic_widget">cert_user_cert_chooser</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">0</property>
++ <property name="right_attach">1</property>
++ <property name="top_attach">0</property>
++ <property name="bottom_attach">1</property>
++ <property name="y_options"></property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkAlignment" id="alignment6">
++ <property name="visible">True</property>
++ <property name="xalign">1</property>
++ <property name="yalign">0.5</property>
++ <property name="xscale">0.019999999553</property>
++ <property name="yscale">1</property>
++ <property name="top_padding">0</property>
++ <property name="bottom_padding">0</property>
++ <property name="left_padding">0</property>
++ <property name="right_padding">0</property>
++
++ <child>
++ <widget class="GtkFileChooserButton" id="cert_private_key_chooser">
++ <property name="visible">True</property>
++ <property name="title" translatable="yes">Select A File</property>
++ <property name="action">GTK_FILE_CHOOSER_ACTION_OPEN</property>
++ <property name="local_only">True</property>
++ <property name="show_hidden">False</property>
++ <property name="do_overwrite_confirmation">False</property>
++ <property name="width_chars">-1</property>
++ </widget>
++ </child>
++ </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>
++ <property name="y_options">fill</property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkLabel" id="label4">
++ <property name="visible">True</property>
++ <property name="label" translatable="yes">Private _Key:</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">0</property>
++ <property name="yalign">0.5</property>
++ <property name="xpad">0</property>
++ <property name="ypad">0</property>
++ <property name="mnemonic_widget">cert_private_key_chooser</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">0</property>
++ <property name="right_attach">1</property>
++ <property name="top_attach">1</property>
++ <property name="bottom_attach">2</property>
++ <property name="y_options"></property>
++ </packing>
++ </child>
++ </widget>
++ </child>
++ </widget>
++ <packing>
++ <property name="padding">0</property>
++ <property name="expand">False</property>
++ <property name="fill">False</property>
++ </packing>
++ </child>
++
++ <child>
++ <widget class="GtkCheckButton" id="fsid_button">
++ <property name="border_width">2</property>
++ <property name="visible">True</property>
++ <property name="can_focus">True</property>
++ <property name="label" translatable="yes">Use _FSID for key passphrase</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">False</property>
++ <property name="fill">False</property>
++ </packing>
++ </child>
++ </widget>
++ <packing>
++ <property name="padding">0</property>
++ <property name="expand">False</property>
++ <property name="fill">False</property>
++ </packing>
++ </child>
++ </widget>
++ </child>
++</widget>
++
++</glade-interface>
+diff --git a/properties/nm-openconnect-dialog.ui b/properties/nm-openconnect-dialog.ui
+deleted file mode 100644
+index fce77ba..0000000
+--- a/properties/nm-openconnect-dialog.ui
++++ /dev/null
+@@ -1,555 +0,0 @@
+-<?xml version="1.0"?>
+-<!--*- mode: xml -*-->
+-<interface>
+- <!-- interface-requires gtk+ 2.6 -->
+- <!-- interface-naming-policy toplevel-contextual -->
+- <object class="GtkVBox" id="openconnect-vbox">
+- <property name="border_width">12</property>
+- <property name="visible">True</property>
+- <property name="homogeneous">False</property>
+- <property name="spacing">16</property>
+- <child>
+- <object class="GtkVBox" id="vbox8">
+- <property name="visible">True</property>
+- <property name="homogeneous">False</property>
+- <property name="spacing">6</property>
+- <child>
+- <object class="GtkLabel" id="label22">
+- <property name="visible">True</property>
+- <property name="label" translatable="yes"><b>General</b></property>
+- <property name="use_underline">False</property>
+- <property name="use_markup">True</property>
+- <property name="justify">GTK_JUSTIFY_LEFT</property>
+- <property name="wrap">False</property>
+- <property name="selectable">False</property>
+- <property name="xalign">0</property>
+- <property name="yalign">0.5</property>
+- <property name="xpad">0</property>
+- <property name="ypad">0</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>
+- </object>
+- <packing>
+- <property name="padding">0</property>
+- <property name="expand">False</property>
+- <property name="fill">False</property>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkAlignment" id="alignment8">
+- <property name="visible">True</property>
+- <property name="xalign">0.5</property>
+- <property name="yalign">0.5</property>
+- <property name="xscale">1</property>
+- <property name="yscale">1</property>
+- <property name="top_padding">0</property>
+- <property name="bottom_padding">0</property>
+- <property name="left_padding">12</property>
+- <property name="right_padding">0</property>
+- <child>
+- <object class="GtkTable" id="table2">
+- <property name="visible">True</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">6</property>
+- <child>
+- <object class="GtkAlignment" id="alignment2">
+- <property name="visible">True</property>
+- <property name="xalign">1</property>
+- <property name="yalign">0.5</property>
+- <property name="xscale">0</property>
+- <property name="yscale">1</property>
+- <property name="top_padding">0</property>
+- <property name="bottom_padding">0</property>
+- <property name="left_padding">0</property>
+- <property name="right_padding">0</property>
+- <child>
+- <object class="GtkEntry" id="gateway_entry">
+- <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 name="has_frame">True</property>
+- <property name="invisible_char">•</property>
+- <property name="activates_default">False</property>
+- </object>
+- </child>
+- </object>
+- <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="y_options"/>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkAlignment" id="alignment11">
+- <property name="visible">True</property>
+- <property name="xalign">1</property>
+- <property name="yalign">0.5</property>
+- <property name="xscale">0</property>
+- <property name="yscale">1</property>
+- <property name="top_padding">0</property>
+- <property name="bottom_padding">0</property>
+- <property name="left_padding">0</property>
+- <property name="right_padding">0</property>
+- <child>
+- <object class="GtkEntry" id="proxy_entry">
+- <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 name="has_frame">True</property>
+- <property name="invisible_char">•</property>
+- <property name="activates_default">False</property>
+- </object>
+- </child>
+- </object>
+- <packing>
+- <property name="left_attach">1</property>
+- <property name="right_attach">2</property>
+- <property name="top_attach">2</property>
+- <property name="bottom_attach">3</property>
+- <property name="x_options">fill</property>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkAlignment" id="alignment12">
+- <property name="visible">True</property>
+- <property name="xalign">1</property>
+- <property name="yalign">0.5</property>
+- <property name="xscale">0</property>
+- <property name="yscale">1</property>
+- <property name="top_padding">0</property>
+- <property name="bottom_padding">0</property>
+- <property name="left_padding">0</property>
+- <property name="right_padding">0</property>
+- <child>
+- <object class="GtkFileChooserButton" id="ca_cert_chooser">
+- <property name="visible">True</property>
+- <property name="title" translatable="yes">Select A File</property>
+- <property name="action">GTK_FILE_CHOOSER_ACTION_OPEN</property>
+- <property name="local_only">True</property>
+- <property name="show_hidden">True</property>
+- <property name="do_overwrite_confirmation">False</property>
+- <property name="width_chars">-1</property>
+- </object>
+- </child>
+- </object>
+- <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="y_options"/>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkLabel" id="label23">
+- <property name="visible">True</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>
+- <property name="wrap">False</property>
+- <property name="selectable">False</property>
+- <property name="xalign">0</property>
+- <property name="yalign">0.5</property>
+- <property name="xpad">0</property>
+- <property name="ypad">0</property>
+- <property name="mnemonic_widget">gateway_entry</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>
+- </object>
+- <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="y_options"/>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkLabel" id="label28">
+- <property name="visible">True</property>
+- <property name="label" translatable="yes">_Proxy:</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">0</property>
+- <property name="yalign">0.5</property>
+- <property name="xpad">0</property>
+- <property name="ypad">0</property>
+- <property name="mnemonic_widget">proxy_entry</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>
+- </object>
+- <packing>
+- <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="y_options"/>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkLabel" id="label27">
+- <property name="visible">True</property>
+- <property name="label" translatable="yes">_CA Certificate:</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">0</property>
+- <property name="yalign">0.5</property>
+- <property name="xpad">0</property>
+- <property name="ypad">0</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>
+- </object>
+- <packing>
+- <property name="left_attach">0</property>
+- <property name="right_attach">1</property>
+- <property name="top_attach">1</property>
+- <property name="bottom_attach">2</property>
+- <property name="y_options"/>
+- </packing>
+- </child>
+- </object>
+- </child>
+- </object>
+- <packing>
+- <property name="padding">0</property>
+- <property name="expand">True</property>
+- <property name="fill">True</property>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkCheckButton" id="csd_button">
+- <property name="border_width">2</property>
+- <property name="visible">True</property>
+- <property name="can_focus">True</property>
+- <property name="label" translatable="yes">Allow Cisco Secure Desktop _trojan</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>
+- </object>
+- <packing>
+- <property name="padding">0</property>
+- <property name="expand">False</property>
+- <property name="fill">False</property>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkAlignment" id="alignment14">
+- <property name="visible">True</property>
+- <property name="xalign">0.5</property>
+- <property name="yalign">0.5</property>
+- <property name="xscale">1</property>
+- <property name="yscale">1</property>
+- <property name="top_padding">0</property>
+- <property name="bottom_padding">0</property>
+- <property name="left_padding">12</property>
+- <property name="right_padding">0</property>
+- <child>
+- <object class="GtkTable" id="table3">
+- <property name="visible">True</property>
+- <property name="n_rows">1</property>
+- <property name="n_columns">2</property>
+- <property name="homogeneous">False</property>
+- <property name="row_spacing">6</property>
+- <property name="column_spacing">6</property>
+- <child>
+- <object class="GtkAlignment" id="alignment15">
+- <property name="visible">True</property>
+- <property name="xalign">1</property>
+- <property name="yalign">0.5</property>
+- <property name="xscale">0</property>
+- <property name="yscale">1</property>
+- <property name="top_padding">0</property>
+- <property name="bottom_padding">0</property>
+- <property name="left_padding">0</property>
+- <property name="right_padding">0</property>
+- <child>
+- <object class="GtkEntry" id="csd_wrapper_entry">
+- <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 name="has_frame">True</property>
+- <property name="invisible_char">•</property>
+- <property name="activates_default">False</property>
+- </object>
+- </child>
+- </object>
+- <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="y_options"/>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkLabel" id="label29">
+- <property name="visible">True</property>
+- <property name="label" translatable="yes">CSD _Wrapper Script:</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">0</property>
+- <property name="yalign">0.5</property>
+- <property name="xpad">0</property>
+- <property name="ypad">0</property>
+- <property name="mnemonic_widget">csd_wrapper_entry</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>
+- </object>
+- <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="y_options"/>
+- </packing>
+- </child>
+- </object>
+- </child>
+- </object>
+- </child>
+- </object>
+- <packing>
+- <property name="padding">0</property>
+- <property name="expand">False</property>
+- <property name="fill">True</property>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkVBox" id="vbox11">
+- <property name="visible">True</property>
+- <property name="homogeneous">False</property>
+- <property name="spacing">6</property>
+- <child>
+- <object class="GtkLabel" id="label25">
+- <property name="visible">True</property>
+- <property name="label" translatable="yes"><b>Certificate Authentication</b></property>
+- <property name="use_underline">False</property>
+- <property name="use_markup">True</property>
+- <property name="justify">GTK_JUSTIFY_LEFT</property>
+- <property name="wrap">False</property>
+- <property name="selectable">False</property>
+- <property name="xalign">0</property>
+- <property name="yalign">0.5</property>
+- <property name="xpad">0</property>
+- <property name="ypad">0</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>
+- </object>
+- <packing>
+- <property name="padding">0</property>
+- <property name="expand">False</property>
+- <property name="fill">False</property>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkAlignment" id="alignment13">
+- <property name="visible">True</property>
+- <property name="xalign">0.5</property>
+- <property name="yalign">0.5</property>
+- <property name="xscale">1</property>
+- <property name="yscale">1</property>
+- <property name="top_padding">0</property>
+- <property name="bottom_padding">0</property>
+- <property name="left_padding">12</property>
+- <property name="right_padding">0</property>
+- <child>
+- <object class="GtkTable" id="table1">
+- <property name="visible">True</property>
+- <property name="n_rows">2</property>
+- <property name="n_columns">2</property>
+- <property name="homogeneous">False</property>
+- <property name="row_spacing">6</property>
+- <property name="column_spacing">6</property>
+- <child>
+- <object class="GtkAlignment" id="alignment5">
+- <property name="visible">True</property>
+- <property name="xalign">1</property>
+- <property name="yalign">0.5</property>
+- <property name="xscale">0</property>
+- <property name="yscale">1</property>
+- <property name="top_padding">0</property>
+- <property name="bottom_padding">0</property>
+- <property name="left_padding">0</property>
+- <property name="right_padding">0</property>
+- <child>
+- <object class="GtkFileChooserButton" id="cert_user_cert_chooser">
+- <property name="visible">True</property>
+- <property name="title" translatable="yes">Select A File</property>
+- <property name="action">GTK_FILE_CHOOSER_ACTION_OPEN</property>
+- <property name="local_only">True</property>
+- <property name="show_hidden">False</property>
+- <property name="do_overwrite_confirmation">False</property>
+- <property name="width_chars">-1</property>
+- </object>
+- </child>
+- </object>
+- <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="y_options"/>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkLabel" id="label3">
+- <property name="visible">True</property>
+- <property name="label" translatable="yes">_User Certificate:</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">0</property>
+- <property name="yalign">0.5</property>
+- <property name="xpad">0</property>
+- <property name="ypad">0</property>
+- <property name="mnemonic_widget">cert_user_cert_chooser</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>
+- </object>
+- <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="y_options"/>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkAlignment" id="alignment6">
+- <property name="visible">True</property>
+- <property name="xalign">1</property>
+- <property name="yalign">0.5</property>
+- <property name="xscale">0.019999999553</property>
+- <property name="yscale">1</property>
+- <property name="top_padding">0</property>
+- <property name="bottom_padding">0</property>
+- <property name="left_padding">0</property>
+- <property name="right_padding">0</property>
+- <child>
+- <object class="GtkFileChooserButton" id="cert_private_key_chooser">
+- <property name="visible">True</property>
+- <property name="title" translatable="yes">Select A File</property>
+- <property name="action">GTK_FILE_CHOOSER_ACTION_OPEN</property>
+- <property name="local_only">True</property>
+- <property name="show_hidden">False</property>
+- <property name="do_overwrite_confirmation">False</property>
+- <property name="width_chars">-1</property>
+- </object>
+- </child>
+- </object>
+- <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>
+- <property name="y_options">fill</property>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkLabel" id="label4">
+- <property name="visible">True</property>
+- <property name="label" translatable="yes">Private _Key:</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">0</property>
+- <property name="yalign">0.5</property>
+- <property name="xpad">0</property>
+- <property name="ypad">0</property>
+- <property name="mnemonic_widget">cert_private_key_chooser</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>
+- </object>
+- <packing>
+- <property name="left_attach">0</property>
+- <property name="right_attach">1</property>
+- <property name="top_attach">1</property>
+- <property name="bottom_attach">2</property>
+- <property name="y_options"/>
+- </packing>
+- </child>
+- </object>
+- </child>
+- </object>
+- <packing>
+- <property name="padding">0</property>
+- <property name="expand">False</property>
+- <property name="fill">False</property>
+- </packing>
+- </child>
+- <child>
+- <object class="GtkCheckButton" id="fsid_button">
+- <property name="border_width">2</property>
+- <property name="visible">True</property>
+- <property name="can_focus">True</property>
+- <property name="label" translatable="yes">Use _FSID for key passphrase</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>
+- </object>
+- <packing>
+- <property name="padding">0</property>
+- <property name="expand">False</property>
+- <property name="fill">False</property>
+- </packing>
+- </child>
+- </object>
+- <packing>
+- <property name="padding">0</property>
+- <property name="expand">False</property>
+- <property name="fill">False</property>
+- </packing>
+- </child>
+- </object>
+-</interface>
+diff --git a/properties/nm-openconnect.c b/properties/nm-openconnect.c
+index 90579ad..8b5b1bb 100644
+--- a/properties/nm-openconnect.c
++++ b/properties/nm-openconnect.c
+@@ -6,7 +6,6 @@
+ *
+ * Copyright (C) 2005 David Zeuthen, <davidz at redhat.com>
+ * Copyright (C) 2005 - 2008 Dan Williams, <dcbw at redhat.com>
+- * Copyright (C) 2005 - 2011 Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+@@ -35,6 +34,7 @@
+ #include <glib/gi18n-lib.h>
+ #include <string.h>
+ #include <gtk/gtk.h>
++#include <glade/glade.h>
+
+ #define NM_VPN_API_SUBJECT_TO_CHANGE
+
+@@ -71,7 +71,7 @@ G_DEFINE_TYPE_EXTENDED (OpenconnectPluginUiWidget, openconnect_plugin_ui_widget,
+ #define OPENCONNECT_PLUGIN_UI_WIDGET_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), OPENCONNECT_TYPE_PLUGIN_UI_WIDGET, OpenconnectPluginUiWidgetPrivate))
+
+ typedef struct {
+- GtkBuilder *builder;
++ GladeXML *xml;
+ GtkWidget *widget;
+ GtkSizeGroup *group;
+ GtkWindowGroup *window_group;
+@@ -305,7 +305,7 @@ check_validity (OpenconnectPluginUiWidget *self, GError **error)
+ GtkWidget *widget;
+ const char *str;
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "gateway_entry"));
++ widget = glade_xml_get_widget (priv->xml, "gateway_entry");
+ str = gtk_entry_get_text (GTK_ENTRY (widget));
+ if (!str || !strlen (str)) {
+ g_set_error (error,
+@@ -316,7 +316,7 @@ check_validity (OpenconnectPluginUiWidget *self, GError **error)
+ }
+
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "proxy_entry"));
++ widget = glade_xml_get_widget (priv->xml, "proxy_entry");
+ str = gtk_entry_get_text (GTK_ENTRY (widget));
+ if (str && str[0] &&
+ strncmp(str, "socks://", 8) && strncmp(str, "http://", 7)) {
+@@ -327,7 +327,7 @@ check_validity (OpenconnectPluginUiWidget *self, GError **error)
+ return FALSE;
+ }
+
+- if (!auth_widget_check_validity (priv->builder, error))
++ if (!auth_widget_check_validity (priv->xml, error))
+ return FALSE;
+
+ return TRUE;
+@@ -351,7 +351,7 @@ init_plugin_ui (OpenconnectPluginUiWidget *self, NMConnection *connection, GErro
+
+ priv->group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "gateway_entry"));
++ widget = glade_xml_get_widget (priv->xml, "gateway_entry");
+ if (!widget)
+ return FALSE;
+ gtk_size_group_add_widget (priv->group, widget);
+@@ -362,7 +362,7 @@ init_plugin_ui (OpenconnectPluginUiWidget *self, NMConnection *connection, GErro
+ }
+ g_signal_connect (G_OBJECT (widget), "changed", G_CALLBACK (stuff_changed_cb), self);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "proxy_entry"));
++ widget = glade_xml_get_widget (priv->xml, "proxy_entry");
+ if (!widget)
+ return FALSE;
+ gtk_size_group_add_widget (priv->group, widget);
+@@ -373,7 +373,7 @@ init_plugin_ui (OpenconnectPluginUiWidget *self, NMConnection *connection, GErro
+ }
+ g_signal_connect (G_OBJECT (widget), "changed", G_CALLBACK (stuff_changed_cb), self);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "fsid_button"));
++ widget = glade_xml_get_widget (priv->xml, "fsid_button");
+ if (!widget)
+ return FALSE;
+ if (s_vpn) {
+@@ -383,7 +383,7 @@ init_plugin_ui (OpenconnectPluginUiWidget *self, NMConnection *connection, GErro
+ }
+ g_signal_connect (G_OBJECT (widget), "toggled", G_CALLBACK (stuff_changed_cb), self);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "csd_button"));
++ widget = glade_xml_get_widget (priv->xml, "csd_button");
+ if (!widget)
+ return FALSE;
+ if (s_vpn) {
+@@ -393,7 +393,7 @@ init_plugin_ui (OpenconnectPluginUiWidget *self, NMConnection *connection, GErro
+ }
+ g_signal_connect (G_OBJECT (widget), "toggled", G_CALLBACK (stuff_changed_cb), self);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "csd_wrapper_entry"));
++ widget = glade_xml_get_widget (priv->xml, "csd_wrapper_entry");
+ if (!widget)
+ return FALSE;
+ if (s_vpn) {
+@@ -403,7 +403,8 @@ init_plugin_ui (OpenconnectPluginUiWidget *self, NMConnection *connection, GErro
+ }
+ g_signal_connect (G_OBJECT (widget), "changed", G_CALLBACK (stuff_changed_cb), self);
+
+- tls_pw_init_auth_widget (priv->builder, priv->group, s_vpn, stuff_changed_cb, self);
++ tls_pw_init_auth_widget (priv->xml, priv->group, s_vpn,
++ stuff_changed_cb, self);
+
+ return TRUE;
+ }
+@@ -435,30 +436,30 @@ update_connection (NMVpnPluginUiWidgetInterface *iface,
+ s_vpn = NM_SETTING_VPN (nm_setting_vpn_new ());
+ g_object_set (s_vpn, NM_SETTING_VPN_SERVICE_TYPE, NM_DBUS_SERVICE_OPENCONNECT, NULL);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "gateway_entry"));
++ widget = glade_xml_get_widget (priv->xml, "gateway_entry");
+ str = (char *) gtk_entry_get_text (GTK_ENTRY (widget));
+ if (str && strlen (str))
+ nm_setting_vpn_add_data_item (s_vpn, NM_OPENCONNECT_KEY_GATEWAY, str);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "proxy_entry"));
++ widget = glade_xml_get_widget (priv->xml, "proxy_entry");
+ str = (char *) gtk_entry_get_text (GTK_ENTRY (widget));
+ if (str && strlen (str))
+ nm_setting_vpn_add_data_item (s_vpn, NM_OPENCONNECT_KEY_PROXY, str);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "fsid_button"));
++ widget = glade_xml_get_widget (priv->xml, "fsid_button");
+ str = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON (widget))?"yes":"no";
+ nm_setting_vpn_add_data_item (s_vpn, NM_OPENCONNECT_KEY_PEM_PASSPHRASE_FSID, str);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "csd_button"));
++ widget = glade_xml_get_widget (priv->xml, "csd_button");
+ str = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON (widget))?"yes":"no";
+ nm_setting_vpn_add_data_item (s_vpn, NM_OPENCONNECT_KEY_CSD_ENABLE, str);
+
+- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "csd_wrapper_entry"));
++ widget = glade_xml_get_widget (priv->xml, "csd_wrapper_entry");
+ str = (char *) gtk_entry_get_text (GTK_ENTRY (widget));
+ if (str && strlen (str))
+ nm_setting_vpn_add_data_item (s_vpn, NM_OPENCONNECT_KEY_CSD_WRAPPER, str);
+
+- auth_widget_update_connection (priv->builder, auth_type, s_vpn);
++ auth_widget_update_connection (priv->xml, auth_type, s_vpn);
+
+ nm_connection_add_setting (connection, NM_SETTING (s_vpn));
+ return TRUE;
+@@ -478,7 +479,7 @@ nm_vpn_plugin_ui_widget_interface_new (NMConnection *connection, GError **error)
+ {
+ NMVpnPluginUiWidgetInterface *object;
+ OpenconnectPluginUiWidgetPrivate *priv;
+- char *ui_file;
++ char *glade_file;
+
+ if (error)
+ g_return_val_if_fail (*error == NULL, NULL);
+@@ -491,24 +492,18 @@ nm_vpn_plugin_ui_widget_interface_new (NMConnection *connection, GError **error)
+
+ priv = OPENCONNECT_PLUGIN_UI_WIDGET_GET_PRIVATE (object);
+
+- ui_file = g_strdup_printf ("%s/%s", UIDIR, "nm-openconnect-dialog.ui");
+- priv->builder = gtk_builder_new ();
+-
+- gtk_builder_set_translation_domain (priv->builder, GETTEXT_PACKAGE);
+-
+- if (!gtk_builder_add_from_file (priv->builder, ui_file, error)) {
+- g_warning ("Couldn't load builder file: %s",
+- error && *error ? (*error)->message : "(unknown)");
+- g_clear_error (error);
++ glade_file = g_strdup_printf ("%s/%s", GLADEDIR, "nm-openconnect-dialog.glade");
++ priv->xml = glade_xml_new (glade_file, "openconnect-vbox", GETTEXT_PACKAGE);
++ if (priv->xml == NULL) {
+ g_set_error (error, OPENCONNECT_PLUGIN_UI_ERROR, 0,
+- "could not load required resources at %s", ui_file);
+- g_free (ui_file);
++ "could not load required resources at %s", glade_file);
++ g_free (glade_file);
+ g_object_unref (object);
+ return NULL;
+ }
+- g_free (ui_file);
++ g_free (glade_file);
+
+- priv->widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "openconnect-vbox"));
++ priv->widget = glade_xml_get_widget (priv->xml, "openconnect-vbox");
+ if (!priv->widget) {
+ g_set_error (error, OPENCONNECT_PLUGIN_UI_ERROR, 0, "could not load UI widget");
+ g_object_unref (object);
+@@ -541,8 +536,8 @@ dispose (GObject *object)
+ if (priv->widget)
+ g_object_unref (priv->widget);
+
+- if (priv->builder)
+- g_object_unref (priv->builder);
++ if (priv->xml)
++ g_object_unref (priv->xml);
+
+ G_OBJECT_CLASS (openconnect_plugin_ui_widget_parent_class)->dispose (object);
+ }
+--
+1.7.10.2
+
diff --git a/0003-Revert-trivial-fix-for-NM-0.8.1.999-0.8.2-rc1.patch b/0003-Revert-trivial-fix-for-NM-0.8.1.999-0.8.2-rc1.patch
new file mode 100644
index 0000000..019e7e6
--- /dev/null
+++ b/0003-Revert-trivial-fix-for-NM-0.8.1.999-0.8.2-rc1.patch
@@ -0,0 +1,28 @@
+From 096eb4fcf1e8d2d5150c163446584c2aece9688c Mon Sep 17 00:00:00 2001
+From: David Woodhouse <David.Woodhouse at intel.com>
+Date: Thu, 21 Jun 2012 15:38:25 +0100
+Subject: [PATCH 3/4] Revert "trivial: fix for NM 0.8.1.999 (0.8.2-rc1)"
+
+This reverts commit 998017d4f10373560f397733f51ba991c10a3c6e.
+---
+ properties/nm-openconnect.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/properties/nm-openconnect.c b/properties/nm-openconnect.c
+index 8b5b1bb..01a5e65 100644
+--- a/properties/nm-openconnect.c
++++ b/properties/nm-openconnect.c
+@@ -637,8 +637,8 @@ openconnect_plugin_ui_interface_init (NMVpnPluginUiInterface *iface_class)
+ /* interface implementation */
+ iface_class->ui_factory = ui_factory;
+ iface_class->get_capabilities = get_capabilities;
+- iface_class->import_from_file = import;
+- iface_class->export_to_file = export;
++ iface_class->import = import;
++ iface_class->export = export;
+ iface_class->delete_connection = delete_connection;
+ }
+
+--
+1.7.10.2
+
diff --git a/0004-Revert-Use-GChecksum-for-sha1-not-OpenSSL.patch b/0004-Revert-Use-GChecksum-for-sha1-not-OpenSSL.patch
new file mode 100644
index 0000000..57bb014
--- /dev/null
+++ b/0004-Revert-Use-GChecksum-for-sha1-not-OpenSSL.patch
@@ -0,0 +1,57 @@
+From efbe85322d15937a9114a3ec3585e02a828b0d2a Mon Sep 17 00:00:00 2001
+From: David Woodhouse <David.Woodhouse at intel.com>
+Date: Thu, 21 Jun 2012 15:46:58 +0100
+Subject: [PATCH 4/4] Revert "Use GChecksum for sha1, not OpenSSL"
+
+This reverts commit 70690fdc95c5f95e17e82727bf208d97e0caa383.
+
+... and adds #include <openssl/ssl.h> too. We don't explicitly link against
+libcrypto; we rely on the fact that ancient systems like RHEL5 will let it
+transitively link via libopenconnect.
+---
+ auth-dialog/main.c | 19 ++++++++++++-------
+ 1 file changed, 12 insertions(+), 7 deletions(-)
+
+diff --git a/auth-dialog/main.c b/auth-dialog/main.c
+index 1c244e5..cc67527 100644
+--- a/auth-dialog/main.c
++++ b/auth-dialog/main.c
+@@ -39,6 +39,8 @@
+
+ #include <gconf/gconf-client.h>
+
++#include <openssl/ssl.h>
++
+ #include <gtk/gtk.h>
+ #include <glib/gi18n.h>
+
+@@ -1014,16 +1016,19 @@ if (0) {
+
+ xmlconfig = get_gconf_setting(gcl, config_path, NM_OPENCONNECT_KEY_XMLCONFIG);
+ if (xmlconfig) {
+- GChecksum *sha1;
+- const char *sha1_text;
++ unsigned char sha1[SHA_DIGEST_LENGTH];
++ char sha1_text[SHA_DIGEST_LENGTH * 2];
++ EVP_MD_CTX c;
++ int i;
+
+- sha1 = g_checksum_new (G_CHECKSUM_SHA1);
+- g_checksum_update (sha1, (gpointer) xmlconfig, strlen(xmlconfig));
+- sha1_text = g_checksum_get_string(sha1);
++ EVP_MD_CTX_init(&c);
++ EVP_Digest(xmlconfig, strlen(xmlconfig), sha1, NULL, EVP_sha1(), NULL);
++ EVP_MD_CTX_cleanup(&c);
+
+- openconnect_set_xmlsha1 (vpninfo, (char *)sha1_text, strlen(sha1_text) + 1);
+- g_checksum_free(sha1);
++ for (i = 0; i < SHA_DIGEST_LENGTH; i++)
++ sprintf(&sha1_text[i*2], "%02x", sha1[i]);
+
++ openconnect_set_xmlsha1(vpninfo, sha1_text, sizeof(sha1_text));
+ parse_xmlconfig(xmlconfig);
+ g_free(xmlconfig);
+ }
+--
+1.7.10.2
+
diff --git a/NetworkManager-openconnect.spec b/NetworkManager-openconnect.spec
index ec7af6a..c053a91 100644
--- a/NetworkManager-openconnect.spec
+++ b/NetworkManager-openconnect.spec
@@ -1,4 +1,4 @@
-%define nm_version 1:0.8.1
+%define nm_version 1:0.7.0
%define dbus_version 1.1
%define gtk2_version 2.10.0
%define openconnect_version 0.99
@@ -15,14 +15,19 @@ Group: System Environment/Base
URL: http://www.gnome.org/projects/NetworkManager/
Source: %{name}-%{realversion}%{snapshot}.tar.bz2
# Patches from upstream git NM_0_8 branch:
-Patch1: build-against-libopenconnect2.patch
-# Extra patches to make it build against NetworkManager 0.8.1:
-Patch2: build-against-081.patch
+Patch1: build-against-libopenconnect2.patch
+# Other patches to make it build in RHEL5:
+Patch2: 0001-Build-against-NetworkManager-0.8.1-again.patch
+Patch3: 0002-Revert-to-glade.patch
+Patch4: 0003-Revert-trivial-fix-for-NM-0.8.1.999-0.8.2-rc1.patch
+Patch5: 0004-Revert-Use-GChecksum-for-sha1-not-OpenSSL.patch
+# If only 'autoreconf' or even 'gnome-autogen.sh' worked...
+Patch6: update-autohate.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-root
BuildRequires: gtk2-devel >= %{gtk2_version}
BuildRequires: dbus-devel >= %{dbus_version}
-BuildRequires: dbus-glib-devel >= 0.74
+BuildRequires: dbus-glib-devel >= 0.73
BuildRequires: NetworkManager-devel >= %{nm_version}
BuildRequires: NetworkManager-glib-devel >= %{nm_version}
BuildRequires: pkgconfig(openconnect) >= 3.99
@@ -30,7 +35,7 @@ BuildRequires: GConf2-devel
BuildRequires: gnome-keyring-devel
BuildRequires: libglade2-devel
BuildRequires: intltool gettext
-BuildRequires: autoconf automake libtool
+BuildRequires: autoconf automake libtool openssl-devel
Requires: NetworkManager >= %{nm_version}
Requires: openconnect >= %{openconnect_version}
@@ -48,11 +53,13 @@ with NetworkManager and the GNOME desktop
%setup -q -n NetworkManager-openconnect-%{realversion}
%patch1 -p1
%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
%build
-autoreconf
%configure --enable-more-warnings=yes
- # end of configure args
make %{?_smp_mflags}
%install
@@ -102,11 +109,11 @@ fi
%{_libexecdir}/nm-openconnect-service-openconnect-helper
%{_libexecdir}/nm-openconnect-auth-dialog
%dir %{_datadir}/gnome-vpn-properties/openconnect
-%{_datadir}/gnome-vpn-properties/openconnect/nm-openconnect-dialog.ui
+%{_datadir}/gnome-vpn-properties/openconnect/nm-openconnect-dialog.glade
%changelog
* Wed Jun 20 2012 David Woodhouse <David.Woodhouse at intel.com> - 0.8.6.0-1
-- Update to 0.8.6.0 for EPEL6
+- Update to 0.8.6.0 and backport for EPEL5
* Tue Jul 27 2010 Dan Williams <dcbw at redhat.com> - 1:0.8.1-1
- Update to 0.8.1 release
More information about the scm-commits
mailing list