Hello community,

here is the log from the commit of package NetworkManager-vpnc for 
openSUSE:Factory checked in at 2015-09-08 17:37:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/NetworkManager-vpnc (Old)
 and      /work/SRC/openSUSE:Factory/.NetworkManager-vpnc.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "NetworkManager-vpnc"

Changes:
--------
--- /work/SRC/openSUSE:Factory/NetworkManager-vpnc/NetworkManager-vpnc.changes  
2015-07-05 17:59:35.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.NetworkManager-vpnc.new/NetworkManager-vpnc.changes 
    2015-09-08 17:38:11.000000000 +0200
@@ -1,0 +2,9 @@
+Tue Sep  1 10:39:40 UTC 2015 - si...@simotek.net
+
+- Update to version 1.0.6:
+  + Fix error checking for write() calls.
+  + Enhanced the GUI to support agent-owned and always-ask
+    passwords.
+  + Updated translations.
+
+-------------------------------------------------------------------

Old:
----
  NetworkManager-vpnc-1.0.2.tar.xz

New:
----
  NetworkManager-vpnc-1.0.6.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ NetworkManager-vpnc.spec ++++++
--- /var/tmp/diff_new_pack.yoCfBA/_old  2015-09-08 17:38:12.000000000 +0200
+++ /var/tmp/diff_new_pack.yoCfBA/_new  2015-09-08 17:38:12.000000000 +0200
@@ -20,7 +20,7 @@
 Summary:        NetworkManager VPN Support for vpnc
 License:        GPL-2.0+
 Group:          Productivity/Networking/System
-Version:        1.0.2
+Version:        1.0.6
 Release:        0
 # FIXME .desktop icon is currently disabled (on purpose) in the NM tarballs. 
They will re-appear later on (when nmce supports --import)
 # FIXME: --disable-more-warnings should be dropped from configure when 
possible. Added with 0.9.2.0 for Gtk+ 3.3 build.
@@ -36,7 +36,7 @@
 BuildRequires:  pkgconfig(gtk+-3.0)
 BuildRequires:  pkgconfig(libnm-glib) >= 0.9.10
 BuildRequires:  pkgconfig(libnm-glib-vpn) >= 0.9.10
-BuildRequires:  pkgconfig(libnm-gtk) >= 0.9.10
+BuildRequires:  pkgconfig(libnm-gtk) >= 1.0.5
 BuildRequires:  pkgconfig(libnm-util) >= 0.9.10
 BuildRequires:  pkgconfig(libsecret-unstable)
 Requires:       %{name}-frontend

++++++ NetworkManager-vpnc-1.0.2.tar.xz -> NetworkManager-vpnc-1.0.6.tar.xz 
++++++
++++ 1653 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/NetworkManager-vpnc-1.0.2/NEWS new/NetworkManager-vpnc-1.0.6/NEWS
--- old/NetworkManager-vpnc-1.0.2/NEWS  2015-05-05 14:11:32.000000000 +0200
+++ new/NetworkManager-vpnc-1.0.6/NEWS  2015-08-27 18:27:22.000000000 +0200
@@ -1,4 +1,16 @@
 =======================================================
+network-manager-vpnc-1.0.6
+Overview of changes since network-manager-vpnc-1.0.2
+=======================================================
+
+This is a new stable release of network-manager-vpnc.  Notable changes include:
+
+* Fix error checking for write() calls
+* Enhanced the GUI to support agent-owned and always-ask passwords
+* Updated Russian translation
+
+
+=======================================================
 network-manager-vpnc-1.0.2
 Overview of changes since network-manager-vpnc-1.0
 =======================================================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/NetworkManager-vpnc-1.0.2/configure.ac 
new/NetworkManager-vpnc-1.0.6/configure.ac
--- old/NetworkManager-vpnc-1.0.2/configure.ac  2015-05-05 14:11:32.000000000 
+0200
+++ new/NetworkManager-vpnc-1.0.6/configure.ac  2015-08-27 18:27:30.000000000 
+0200
@@ -1,6 +1,6 @@
 AC_PREREQ(2.52)
 
-AC_INIT(NetworkManager-vpnc, 1.0.2, d...@redhat.com, NetworkManager-vpnc)
+AC_INIT(NetworkManager-vpnc, 1.0.6, d...@redhat.com, NetworkManager-vpnc)
 AM_INIT_AUTOMAKE([subdir-objects no-dist-gzip dist-bzip2])
 AM_MAINTAINER_MODE
 
@@ -72,7 +72,7 @@
        AC_SUBST(GTK_LIBS)
        GTK_CFLAGS="$GTK_CFLAGS -DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_4"
 
-       PKG_CHECK_MODULES(NMGTK, libnm-gtk >= 0.9.10)
+       PKG_CHECK_MODULES(NMGTK, libnm-gtk >= 1.0.5)
        AC_SUBST(NMGTK_CFLAGS)
        AC_SUBST(NMGTK_LIBS)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/NetworkManager-vpnc-1.0.2/po/ru.po new/NetworkManager-vpnc-1.0.6/po/ru.po
--- old/NetworkManager-vpnc-1.0.2/po/ru.po      2015-05-05 14:10:45.000000000 
+0200
+++ new/NetworkManager-vpnc-1.0.6/po/ru.po      2015-08-27 17:54:39.000000000 
+0200
@@ -7,15 +7,15 @@
 # Leonid Kanter <l...@asplinux.ru>, 2007, 2008.
 # Артём Попов <art...@gmail.com>, 2009.
 # Yuri Kozlov <yu...@komyakino.ru>, 2010, 2011.
-# Stas Solovey <whats...@tut.by>, 2014.
+# Stas Solovey <whats...@tut.by>, 2014, 2015.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: ru\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?";
 "product=NetworkManager&keywords=I18N+L10N&component=VPN: vpnc\n"
-"POT-Creation-Date: 2014-07-11 12:19+0000\n"
-"PO-Revision-Date: 2014-10-07 18:09+0300\n"
+"POT-Creation-Date: 2015-07-09 10:59+0000\n"
+"PO-Revision-Date: 2015-07-27 23:41+0300\n"
 "Last-Translator: Stas Solovey <whats...@tut.by>\n"
 "Language-Team: Русский <gnome-...@gnome.org>\n"
 "Language: ru\n"
@@ -24,9 +24,10 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
 "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
-"X-Generator: Gtranslator 2.91.6\n"
+"X-Generator: Gtranslator 2.91.7\n"
 
 #: ../auth-dialog/main.c:175
+#, c-format
 msgid "Authenticate VPN %s"
 msgstr "Аутентификация VPN %s"
 
@@ -67,11 +68,11 @@
 msgid "Add, Remove, and Edit VPN Connections"
 msgstr "Добавить, удалить или изменить подключения VPN"
 
-#: ../properties/nm-vpnc.c:53
+#: ../properties/nm-vpnc.c:54
 msgid "Cisco Compatible VPN (vpnc)"
 msgstr "Cisco-совместимая VPN (vpnc)"
 
-#: ../properties/nm-vpnc.c:54
+#: ../properties/nm-vpnc.c:55
 msgid ""
 "Compatible with various Cisco, Juniper, Netscreen, and Sonicwall IPsec-based "
 "VPN gateways."
@@ -79,91 +80,79 @@
 "Совместим с различными VPN-шлюзами Cisco, Juniper, Netscreen и Sonicwall на "
 "основе IPsec."
 
-#: ../properties/nm-vpnc.c:338
-msgid "Saved"
-msgstr "Сохранённый"
-
-#: ../properties/nm-vpnc.c:345
-msgid "Always Ask"
-msgstr "Всегда спрашивать"
-
-#: ../properties/nm-vpnc.c:352
-msgid "Not Required"
-msgstr "Не требуется"
-
-#: ../properties/nm-vpnc.c:501
+#: ../properties/nm-vpnc.c:431
 msgid "Secure (default)"
 msgstr "Строгое (по умолчанию)"
 
-#: ../properties/nm-vpnc.c:504
+#: ../properties/nm-vpnc.c:434
 msgid "Weak (use with caution)"
 msgstr "Слабое (использовать с осторожностью)"
 
-#: ../properties/nm-vpnc.c:512
+#: ../properties/nm-vpnc.c:442
 msgid "None (completely insecure)"
 msgstr "Нет (без шифрования)"
 
-#: ../properties/nm-vpnc.c:578
+#: ../properties/nm-vpnc.c:506
 msgid "Cisco (default)"
 msgstr "Cisco (по умолчанию)"
 
-#: ../properties/nm-vpnc.c:585
+#: ../properties/nm-vpnc.c:513
 msgid "Netscreen"
 msgstr "Netscreen"
 
-#: ../properties/nm-vpnc.c:616
+#: ../properties/nm-vpnc.c:554
 msgid "NAT-T when available (default)"
 msgstr "NAT-T, если доступен (по умолчанию)"
 
-#: ../properties/nm-vpnc.c:623
+#: ../properties/nm-vpnc.c:561
 msgid "NAT-T always"
 msgstr "NAT-T всегда"
 
-#: ../properties/nm-vpnc.c:630
+#: ../properties/nm-vpnc.c:568
 msgid "Cisco UDP"
 msgstr "Cisco UDP"
 
-#: ../properties/nm-vpnc.c:637
+#: ../properties/nm-vpnc.c:575
 msgid "Disabled"
 msgstr "Выключено"
 
-#: ../properties/nm-vpnc.c:657 ../properties/nm-vpnc.c:743
+#: ../properties/nm-vpnc.c:595 ../properties/nm-vpnc.c:681
 msgid "DH Group 1"
 msgstr "DH Group 1"
 
-#: ../properties/nm-vpnc.c:664
+#: ../properties/nm-vpnc.c:602
 msgid "DH Group 2 (default)"
 msgstr "DH Group 2 (по умолчанию)"
 
-#: ../properties/nm-vpnc.c:671 ../properties/nm-vpnc.c:757
+#: ../properties/nm-vpnc.c:609 ../properties/nm-vpnc.c:695
 msgid "DH Group 5"
 msgstr "DH Group 5"
 
-#: ../properties/nm-vpnc.c:729
+#: ../properties/nm-vpnc.c:667
 msgid "Server (default)"
 msgstr "Сервер (по умолчанию)"
 
-#: ../properties/nm-vpnc.c:736
+#: ../properties/nm-vpnc.c:674
 msgid "None"
 msgstr "Нет"
 
-#: ../properties/nm-vpnc.c:750"
+#: ../properties/nm-vpnc.c:688
 msgid "DH Group 2"
 msgstr "DH Group 2"
 
-#: ../properties/nm-vpnc.c:797
+#: ../properties/nm-vpnc.c:735
 msgid "Choose a Certificate Authority (CA) certificate..."
-msgstr ""
+msgstr "Выберите сертификат центра сертификации (CA)…"
 
-#: ../properties/nm-vpnc.c:801
+#: ../properties/nm-vpnc.c:739
 msgid "PEM certificates (*.pem, *.crt, *.cer)"
-msgstr ""
+msgstr "Сертификаты PEM (*.pem, *.crt, *.cer)"
 
-#: ../properties/nm-vpnc.c:1542
+#: ../properties/nm-vpnc.c:1500
 msgid "TCP tunneling not supported"
 msgstr "Туннелирование TCP не поддерживается"
 
-#: ../properties/nm-vpnc.c:1544
+#: ../properties/nm-vpnc.c:1502
 #, c-format
 msgid ""
 "The VPN settings file '%s' specifies that VPN traffic should be tunneled "
@@ -179,259 +168,313 @@
 "может работать не так, как ожидается."
 
 #: ../properties/nm-vpnc-dialog.ui.h:1
-msgid "Advanced Options"
-msgstr "Дополнительные настройки"
+msgid "General"
+msgstr "Основные"
 
 #: ../properties/nm-vpnc-dialog.ui.h:2
-msgid "Identification"
-msgstr "Идентификация"
+msgid "Sho_w passwords"
+msgstr "_Показывать пароли"
 
 #: ../properties/nm-vpnc-dialog.ui.h:3
-msgid "_Domain:"
-msgstr "_Домен:"
-
-#: ../properties/nm-vpnc-dialog.ui.h:4
 msgid ""
-"(NT-)Domain name for authentication\n"
-"config: Domain <domain>"
+"Group password\n"
+"config: IPSec secret <group_password>"
 msgstr ""
+"Пароль группы\n"
+"config: тайный ключ IPSec <group_password>"
+
+#: ../properties/nm-vpnc-dialog.ui.h:5
+msgid "Gro_up password:"
+msgstr "Пароль гр_уппы:"
 
 #: ../properties/nm-vpnc-dialog.ui.h:6
-msgid "_Vendor:"
-msgstr "_Производитель"
+msgid "_Gateway:"
+msgstr "_Шлюз:"
 
 #: ../properties/nm-vpnc-dialog.ui.h:7
+msgid "G_roup name:"
+msgstr "Имя г_руппы:"
+
+#: ../properties/nm-vpnc-dialog.ui.h:8
 msgid ""
-"Vendor of your IPsec gateway\n"
-"config: Vendor <cisco/netscreen>"
+"IP/hostname of IPsec gateway\n"
+"config: IPSec gateway <gateway>"
 msgstr ""
 
-#: ../properties/nm-vpnc-dialog.ui.h:9
-msgid "Ve_rsion:"
-msgstr "_Версия:"
-
 #: ../properties/nm-vpnc-dialog.ui.h:10
 msgid ""
-"Application version to report. \n"
-"config: Application version <ASCII string>"
+"Group name\n"
+"config: IPSec ID <group_name>"
 msgstr ""
 
 #: ../properties/nm-vpnc-dialog.ui.h:12
-msgid "Transport and Security"
-msgstr ""
+msgid "User _password:"
+msgstr "Пароль _пользователя:"
 
 #: ../properties/nm-vpnc-dialog.ui.h:13
 msgid ""
-"Encryption method\n"
-"config: nothing for Secure, 'Enable Single DES' for Weak, 'Enable no "
-"encryption' for None"
+"User password for the connection\n"
+"config: Xauth password <password>"
 msgstr ""
 
 #: ../properties/nm-vpnc-dialog.ui.h:15
-msgid "_Encryption method:"
-msgstr "_Метод шифрования:"
-
-#: ../properties/nm-vpnc-dialog.ui.h:16
-msgid "_NAT traversal:"
-msgstr "_Обход NAT:"
-
-#: ../properties/nm-vpnc-dialog.ui.h:17
 msgid ""
-"NAT traversal method to use\n"
-"config: NAT Traversal Mode <natt/none/force-natt/cisco-udp>"
+"User name for the connection\n"
+"config: Xauth username <user_name>"
 msgstr ""
 
-#: ../properties/nm-vpnc-dialog.ui.h:19
-msgid "_IKE DH Group:"
-msgstr "_Группа IKE DH:"
+#: ../properties/nm-vpnc-dialog.ui.h:17
+msgid "User na_me:"
+msgstr "_Имя пользователя:"
 
-#: ../properties/nm-vpnc-dialog.ui.h:20
+#: ../properties/nm-vpnc-dialog.ui.h:18
+msgid "Use _hybrid authentication"
+msgstr "Использовать гибридную аутентификацию"
+
+#: ../properties/nm-vpnc-dialog.ui.h:19
 msgid ""
-"Name of the IKE DH group\n"
-"config: IKE DH Group <dh1/dh2/dh5>"
+"Enable hybrid authentication, i.e. use certificate in addition to password.\n"
+"config: IKE Authmode hybrid"
 msgstr ""
 
-#: ../properties/nm-vpnc-dialog.ui.h:22
-msgid "Perfect _Forward Secrecy:"
-msgstr ""
+#: ../properties/nm-vpnc-dialog.ui.h:21
+msgid "CA _File:"
+msgstr "Файл CA:"
 
-#: ../properties/nm-vpnc-dialog.ui.h:23
+#: ../properties/nm-vpnc-dialog.ui.h:22
 msgid ""
-"Diffie-Hellman group to use for PFS\n"
-"config: Perfect Forward Secrecy <nopfs/dh1/dh2/dh5/server>"
+"CA certificate in PEM format\n"
+"config: CA-File"
 msgstr ""
 
+#: ../properties/nm-vpnc-dialog.ui.h:24
+msgid "Advance_d..."
+msgstr "Дополнительно…"
+
 #: ../properties/nm-vpnc-dialog.ui.h:25
-msgid "_Local port:"
-msgstr ""
+msgid "Advanced Options"
+msgstr "Дополнительные настройки"
 
 #: ../properties/nm-vpnc-dialog.ui.h:26
-msgid ""
-"Local ISAKMP port to use (0 means random port; 500 is vpnc's default)\n"
-"config: Local Port <0-65535>"
-msgstr ""
+msgid "Identification"
+msgstr "Идентификация"
 
-#: ../properties/nm-vpnc-dialog.ui.h:28
-msgid "Disable Dead _Peer Detection"
-msgstr "_Отключить Dead Peer Detection"
+#: ../properties/nm-vpnc-dialog.ui.h:27
+msgid "_Domain:"
+msgstr "_Домен:"
 
-#: ../properties/nm-vpnc-dialog.ui.h:29
+#: ../properties/nm-vpnc-dialog.ui.h:28
 msgid ""
-"Disable sending DPD packets (sets timeout to 0)\n"
-"config: DPD idle timeout (our side) 0"
+"(NT-)Domain name for authentication\n"
+"config: Domain <domain>"
 msgstr ""
+"Имя (NT-)домена для аутентификации\n"
+"config: Домен <domain>"
 
-#: ../properties/nm-vpnc-dialog.ui.h:31
-msgid "General"
-msgstr "Основные"
+#: ../properties/nm-vpnc-dialog.ui.h:30
+msgid ""
+"Vendor of your IPsec gateway\n"
+"config: Vendor <cisco/netscreen>"
+msgstr ""
 
 #: ../properties/nm-vpnc-dialog.ui.h:32
-msgid "Sho_w passwords"
-msgstr "_Показывать пароли"
+msgid "_Vendor:"
+msgstr "_Производитель"
 
 #: ../properties/nm-vpnc-dialog.ui.h:33
+msgid "Ve_rsion:"
+msgstr "_Версия:"
+
+#: ../properties/nm-vpnc-dialog.ui.h:34
 msgid ""
-"Group password\n"
-"config: IPSec secret <group_password>"
+"Application version to report. \n"
+"config: Application version <ASCII string>"
 msgstr ""
 
-#: ../properties/nm-vpnc-dialog.ui.h:35
-msgid "Gro_up password:"
-msgstr "Пароль гр_уппы:"
-
 #: ../properties/nm-vpnc-dialog.ui.h:36
-msgid "_Gateway:"
-msgstr "_Шлюз:"
+msgid "Transport and Security"
+msgstr ""
 
 #: ../properties/nm-vpnc-dialog.ui.h:37
-msgid "G_roup name:"
-msgstr "Имя г_руппы:"
+msgid "Disable Dead _Peer Detection"
+msgstr "_Отключить Dead Peer Detection"
 
 #: ../properties/nm-vpnc-dialog.ui.h:38
 msgid ""
-"IP/hostname of IPsec gateway\n"
-"config: IPSec gateway <gateway>"
+"Disable sending DPD packets (sets timeout to 0)\n"
+"config: DPD idle timeout (our side) 0"
 msgstr ""
 
 #: ../properties/nm-vpnc-dialog.ui.h:40
-msgid ""
-"Group name\n"
-"config: IPSec ID <group_name>"
+msgid "_Local port:"
+msgstr "_Локальный порт:"
+
+#: ../properties/nm-vpnc-dialog.ui.h:41
+msgid "Perfect _Forward Secrecy:"
 msgstr ""
 
 #: ../properties/nm-vpnc-dialog.ui.h:42
-msgid "User _password:"
-msgstr "Пароль _пользователя:"
+msgid "_IKE DH Group:"
+msgstr "_Группа IKE DH:"
 
 #: ../properties/nm-vpnc-dialog.ui.h:43
-msgid ""
-"User password for the connection\n"
-"config: Xauth password <password>"
-msgstr ""
+msgid "_NAT traversal:"
+msgstr "_Обход NAT:"
 
-#: ../properties/nm-vpnc-dialog.ui.h:45
+#: ../properties/nm-vpnc-dialog.ui.h:44
 msgid ""
-"User name for the connection\n"
-"config: Xauth username <user_name>"
+"Local ISAKMP port to use (0 means random port; 500 is vpnc's default)\n"
+"config: Local Port <0-65535>"
 msgstr ""
 
-#: ../properties/nm-vpnc-dialog.ui.h:47
-msgid "User na_me:"
-msgstr "_Имя пользователя:"
+#: ../properties/nm-vpnc-dialog.ui.h:46
+msgid "0"
+msgstr "0"
 
-#: ../properties/nm-vpnc-dialog.ui.h:48
-#| msgid "Request VPN authentication"
-msgid "Use _hybrid authentication"
+#: ../properties/nm-vpnc-dialog.ui.h:47
+msgid ""
+"Diffie-Hellman group to use for PFS\n"
+"config: Perfect Forward Secrecy <nopfs/dh1/dh2/dh5/server>"
 msgstr ""
 
 #: ../properties/nm-vpnc-dialog.ui.h:49
 msgid ""
-"Enable hybrid authentication, i.e. use certificate in addition to password.\n"
-"config: IKE Authmode hybrid"
+"Name of the IKE DH group\n"
+"config: IKE DH Group <dh1/dh2/dh5>"
 msgstr ""
 
 #: ../properties/nm-vpnc-dialog.ui.h:51
-msgid "CA _File:"
+msgid ""
+"NAT traversal method to use\n"
+"config: NAT Traversal Mode <natt/none/force-natt/cisco-udp>"
 msgstr ""
 
-#: ../properties/nm-vpnc-dialog.ui.h:52
+#: ../properties/nm-vpnc-dialog.ui.h:53
 msgid ""
-"CA certificate in PEM format\n"
-"config: CA-File"
+"Encryption method\n"
+"config: nothing for Secure, 'Enable Single DES' for Weak, 'Enable no "
+"encryption' for None"
 msgstr ""
 
-#: ../properties/nm-vpnc-dialog.ui.h:54
-msgid "Advance_d..."
-msgstr "Дополнительно…"
+#: ../properties/nm-vpnc-dialog.ui.h:55
+msgid ""
+"Tunnel interface name to use\n"
+"config: Interface name <name>"
+msgstr ""
+
+#: ../properties/nm-vpnc-dialog.ui.h:57
+msgid "_Encryption method:"
+msgstr "_Метод шифрования:"
 
-#: ../src/nm-vpnc-service.c:155
+#: ../properties/nm-vpnc-dialog.ui.h:58
+msgid "Tunnel _interface name:"
+msgstr ""
+
+#: ../src/nm-vpnc-service.c:173
 #, c-format
 msgid "property '%s' invalid or not supported"
 msgstr "свойство «%s» некорректно или не поддерживается"
 
-#: ../src/nm-vpnc-service.c:174
+#: ../src/nm-vpnc-service.c:192
 #, c-format
 msgid "property '%s' file path '%s' is not absolute or does not exist"
 msgstr ""
 
-#: ../src/nm-vpnc-service.c:187
+#: ../src/nm-vpnc-service.c:205
 #, c-format
 msgid "invalid integer property '%s' or out of range [%d -> %d]"
 msgstr "некорректное целочисленное свойство «%s» или вне диапазона [%d —> %d]"
 
-#: ../src/nm-vpnc-service.c:197
+#: ../src/nm-vpnc-service.c:215
 #, c-format
 msgid "invalid boolean property '%s' (not yes or no)"
 msgstr ""
 "некорректное логическое свойство «%s» (отсутствует значение «да»/«нет»)"
 
-#: ../src/nm-vpnc-service.c:204
+#: ../src/nm-vpnc-service.c:222
 #, c-format
-#| msgid "unhandled property '%s' type %s"
 msgid "unhandled property '%s' type %d"
 msgstr "необработанное свойство «%s» типа %d"
 
-#: ../src/nm-vpnc-service.c:221
+#: ../src/nm-vpnc-service.c:239
 msgid "No VPN configuration options."
 msgstr "Нет параметров настройки VPN."
 
-#: ../src/nm-vpnc-service.c:239
+#: ../src/nm-vpnc-service.c:265
 msgid "No VPN secrets!"
 msgstr "Нет VPN-ключей!"
 
-#: ../src/nm-vpnc-service.c:323
+#: ../src/nm-vpnc-service.c:613
 msgid "Could not find vpnc binary."
 msgstr "Не удалось найти исполняемый файл vpnc."
 
-#: ../src/nm-vpnc-service.c:417
+#: ../src/nm-vpnc-service.c:714
 #, c-format
 msgid "Config option '%s' invalid or unknown."
 msgstr "Неизвестный или некорректный параметр настройки «%s»."
 
-#: ../src/nm-vpnc-service.c:450
+#: ../src/nm-vpnc-service.c:747
 #, c-format
 msgid "Config option '%s' not an integer."
 msgstr "Параметр настройки «%s» не целое число."
 
-#: ../src/nm-vpnc-service.c:630
+#: ../src/nm-vpnc-service.c:921
+msgid "vpnc does not support interactive requests"
+msgstr "vpnc не поддерживает интерактивные запросы"
+
+#: ../src/nm-vpnc-service.c:945
+msgid "Could not use new secrets as interactive mode is disabled."
+msgstr ""
+
+#: ../src/nm-vpnc-service.c:954 ../src/nm-vpnc-service.c:1029
 msgid ""
 "Could not process the request because the VPN connection settings were "
 "invalid."
 msgstr ""
 "Не удалось обработать запрос, так как настройки подключения VPN некорректны."
 
-#: ../src/nm-vpnc-service.c:745
+#: ../src/nm-vpnc-service.c:962
+#, fuzzy
+#| msgid ""
+#| "Could not process the request because the VPN connection settings were "
+#| "invalid."
+msgid ""
+"Could not process the request because no pending authentication is required."
+msgstr ""
+"Не удалось обработать запрос, так как настройки подключения VPN некорректны."
+
+#: ../src/nm-vpnc-service.c:974
+#, fuzzy, c-format
+#| msgid ""
+#| "Could not process the request because the VPN connection settings were "
+#| "invalid."
+msgid ""
+"Could not process the request because the requested info '%s' was not "
+"provided."
+msgstr ""
+"Не удалось обработать запрос, так как настройки подключения VPN некорректны."
+
+#: ../src/nm-vpnc-service.c:1159
 msgid "Don't quit when VPN connection terminates"
 msgstr "Не завершать работу при отключении VPN"
 
-#: ../src/nm-vpnc-service.c:746
+#: ../src/nm-vpnc-service.c:1160
 msgid "Enable verbose debug logging (may expose passwords)"
 msgstr "Включить подробный режим отладки (могут отображаться пароли)"
 
-#: ../src/nm-vpnc-service.c:769
+#: ../src/nm-vpnc-service.c:1183
 msgid ""
 "nm-vpnc-service provides integrated Cisco Legacy IPsec VPN capability to "
 "NetworkManager."
 msgstr ""
 "nm-vpnc-service позволяет использовать Cisco Legacy IPsec VPN в "
 "NetworkManager."
+
+#~ msgid "Saved"
+#~ msgstr "Сохранённый"
+
+#~ msgid "Always Ask"
+#~ msgstr "Всегда спрашивать"
+
+#~ msgid "Not Required"
+#~ msgstr "Не требуется"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/NetworkManager-vpnc-1.0.2/properties/Makefile.am 
new/NetworkManager-vpnc-1.0.6/properties/Makefile.am
--- old/NetworkManager-vpnc-1.0.2/properties/Makefile.am        2015-05-05 
14:11:07.000000000 +0200
+++ new/NetworkManager-vpnc-1.0.6/properties/Makefile.am        2015-08-27 
17:54:34.000000000 +0200
@@ -19,6 +19,7 @@
        $(GTK_CFLAGS) \
        $(GNOMEKEYRING_CFLAGS) \
        $(NM_CFLAGS) \
+       $(NMGTK_CFLAGS) \
        -DICONDIR=\""$(datadir)/pixmaps"\" \
        -DUIDIR=\""$(uidir)"\" \
        -DG_DISABLE_DEPRECATED \
@@ -28,6 +29,7 @@
 libnm_vpnc_properties_la_LIBADD = \
        $(GTK_LIBS) \
        $(NM_LIBS) \
+       $(NMGTK_LIBS) \
        $(GNOMEKEYRING_LIBS)
 
 libnm_vpnc_properties_la_LDFLAGS = \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/NetworkManager-vpnc-1.0.2/properties/nm-vpnc-dialog.ui 
new/NetworkManager-vpnc-1.0.6/properties/nm-vpnc-dialog.ui
--- old/NetworkManager-vpnc-1.0.2/properties/nm-vpnc-dialog.ui  2015-05-05 
14:10:45.000000000 +0200
+++ new/NetworkManager-vpnc-1.0.6/properties/nm-vpnc-dialog.ui  2015-08-19 
11:30:20.000000000 +0200
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.16.1 -->
+<!-- Generated with glade 3.18.3 -->
 <interface>
   <requires lib="gtk+" version="3.4"/>
   <object class="GtkAdjustment" id="adjustment1">
@@ -12,28 +12,6 @@
     <property name="can_focus">False</property>
     <property name="stock">gtk-preferences</property>
   </object>
-  <object class="GtkListStore" id="model1">
-    <columns>
-      <!-- column-name gchararray -->
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0"> </col>
-      </row>
-    </data>
-  </object>
-  <object class="GtkListStore" id="model2">
-    <columns>
-      <!-- column-name gchararray -->
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0"> </col>
-      </row>
-    </data>
-  </object>
   <object class="GtkBox" id="vpnc-vbox">
     <property name="visible">True</property>
     <property name="can_focus">False</property>
@@ -74,44 +52,6 @@
                 <property name="row_spacing">6</property>
                 <property name="column_spacing">6</property>
                 <child>
-                  <object class="GtkComboBox" id="group_pass_type_combo">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="model">model1</property>
-                    <child>
-                      <object class="GtkCellRendererText" id="renderer1"/>
-                      <attributes>
-                        <attribute name="text">0</attribute>
-                      </attributes>
-                    </child>
-                  </object>
-                  <packing>
-                    <property name="left_attach">2</property>
-                    <property name="top_attach">4</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkComboBox" id="user_pass_type_combo">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="model">model2</property>
-                    <child>
-                      <object class="GtkCellRendererText" id="renderer2"/>
-                      <attributes>
-                        <attribute name="text">0</attribute>
-                      </attributes>
-                    </child>
-                  </object>
-                  <packing>
-                    <property name="left_attach">2</property>
-                    <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
-                  </packing>
-                </child>
-                <child>
                   <object class="GtkCheckButton" 
id="show_passwords_checkbutton">
                     <property name="label" translatable="yes">Sho_w 
passwords</property>
                     <property name="use_action_appearance">False</property>
@@ -125,8 +65,6 @@
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">5</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -140,8 +78,6 @@
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">4</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -156,8 +92,6 @@
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">4</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -172,8 +106,6 @@
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">0</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -188,8 +120,6 @@
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">3</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -202,8 +132,6 @@
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">0</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -216,8 +144,6 @@
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">3</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -232,8 +158,6 @@
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -247,8 +171,6 @@
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -261,8 +183,6 @@
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">1</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -277,8 +197,6 @@
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">1</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -297,8 +215,7 @@
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">6</property>
-                    <property name="width">3</property>
-                    <property name="height">1</property>
+                    <property name="width">2</property>
                   </packing>
                 </child>
                 <child>
@@ -320,8 +237,6 @@
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">7</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
@@ -334,28 +249,11 @@
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">7</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <placeholder/>
                 </child>
-                <child>
-                  <placeholder/>
-                </child>
-                <child>
-                  <placeholder/>
-                </child>
-                <child>
-                  <placeholder/>
-                </child>
-                <child>
-                  <placeholder/>
-                </child>
-                <child>
-                  <placeholder/>
-                </child>
               </object>
             </child>
           </object>
@@ -398,6 +296,28 @@
       </packing>
     </child>
   </object>
+  <object class="GtkListStore" id="model1">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0"> </col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model2">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0"> </col>
+      </row>
+    </data>
+  </object>
   <object class="GtkListStore" id="model3">
     <columns>
       <!-- column-name gchararray -->
@@ -442,6 +362,17 @@
       </row>
     </data>
   </object>
+  <object class="GtkListStore" id="model7">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0"> </col>
+      </row>
+    </data>
+  </object>
   <object class="GtkDialog" id="vpnc-advanced-dialog">
     <property name="can_focus">False</property>
     <property name="border_width">5</property>
@@ -531,8 +462,6 @@
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -545,8 +474,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -566,8 +493,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">2</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -582,8 +507,6 @@
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">2</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -597,8 +520,6 @@
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">3</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -611,8 +532,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">3</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -686,8 +605,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">6</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -701,8 +618,6 @@
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">5</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -717,8 +632,6 @@
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">4</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -732,8 +645,6 @@
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">3</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -747,8 +658,6 @@
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">2</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -766,8 +675,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">5</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -787,8 +694,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">4</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -808,8 +713,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">3</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -829,8 +732,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">2</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -850,8 +751,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -865,8 +764,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -880,8 +777,6 @@
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -895,8 +790,6 @@
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -924,15 +817,4 @@
       <action-widget response="0">apply_button</action-widget>
     </action-widgets>
   </object>
-  <object class="GtkListStore" id="model7">
-    <columns>
-      <!-- column-name gchararray -->
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0"> </col>
-      </row>
-    </data>
-  </object>
 </interface>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/NetworkManager-vpnc-1.0.2/properties/nm-vpnc.c 
new/NetworkManager-vpnc-1.0.6/properties/nm-vpnc.c
--- old/NetworkManager-vpnc-1.0.2/properties/nm-vpnc.c  2015-05-05 
14:11:07.000000000 +0200
+++ new/NetworkManager-vpnc-1.0.6/properties/nm-vpnc.c  2015-08-27 
17:54:34.000000000 +0200
@@ -45,6 +45,7 @@
 #include <nm-setting-vpn.h>
 #include <nm-setting-connection.h>
 #include <nm-setting-ip4-config.h>
+#include <nm-ui-utils.h>
 
 #include "src/nm-vpnc-service.h"
 #include "nm-vpnc-helper.h"
@@ -58,10 +59,6 @@
 #define ENC_TYPE_WEAK   1
 #define ENC_TYPE_NONE   2
 
-#define PW_TYPE_SAVE   0
-#define PW_TYPE_ASK       1
-#define PW_TYPE_UNUSED 2
-
 #define NM_VPNC_LOCAL_PORT_DEFAULT 500
 
 /************** plugin class **************/
@@ -202,13 +199,9 @@
                        gboolean new_connection)
 {
        VpncPluginUiWidgetPrivate *priv = VPNC_PLUGIN_UI_WIDGET_GET_PRIVATE 
(self);
-       NMSettingSecretFlags secret_flags = NM_SETTING_SECRET_FLAG_NONE;
        GtkWidget *widget;
        const char *value;
 
-       if (new_connection)
-               secret_flags = NM_SETTING_SECRET_FLAG_AGENT_OWNED;
-
        widget = (GtkWidget *) gtk_builder_get_object (priv->builder, 
entry_name);
        g_assert (widget);
        gtk_size_group_add_widget (priv->group, widget);
@@ -216,10 +209,7 @@
        if (s_vpn) {
                value = nm_setting_vpn_get_secret (s_vpn, secret_name);
                gtk_entry_set_text (GTK_ENTRY (widget), value ? value : "");
-               nm_setting_get_secret_flags (NM_SETTING (s_vpn), secret_name, 
&secret_flags, NULL);
        }
-       secret_flags &= ~(NM_SETTING_SECRET_FLAG_NOT_SAVED | 
NM_SETTING_SECRET_FLAG_NOT_REQUIRED);
-       g_object_set_data (G_OBJECT (widget), "flags", GUINT_TO_POINTER 
(secret_flags));
 
        g_signal_connect (widget, "changed", G_CALLBACK (stuff_changed_cb), 
self);
 }
@@ -243,48 +233,13 @@
 }
 
 static void
-pw_type_changed_helper (VpncPluginUiWidget *self, GtkWidget *combo)
-{
-       VpncPluginUiWidgetPrivate *priv = VPNC_PLUGIN_UI_WIDGET_GET_PRIVATE 
(self);
-       const char *entry = NULL;
-       GtkWidget *widget;
-
-       /* If the user chose "Not required", desensitize and clear the correct
-        * password entry.
-        */
-       widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, 
"user_pass_type_combo"));
-       if (combo == widget)
-               entry = "user_password_entry";
-       else {
-               widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, 
"group_pass_type_combo"));
-               if (combo == widget)
-                       entry = "group_password_entry";
-       }
-       if (!entry)
-               return;
-
-       widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, entry));
-       g_assert (widget);
-
-       switch (gtk_combo_box_get_active (GTK_COMBO_BOX (combo))) {
-       case PW_TYPE_ASK:
-       case PW_TYPE_UNUSED:
-               gtk_entry_set_text (GTK_ENTRY (widget), "");
-               gtk_widget_set_sensitive (widget, FALSE);
-               break;
-       default:
-               gtk_widget_set_sensitive (widget, TRUE);
-               break;
-       }
-}
-
-static void
-pw_type_combo_changed_cb (GtkWidget *combo, gpointer user_data)
+password_storage_changed_cb (GObject *entry,
+                             GParamSpec *pspec,
+                             gpointer user_data)
 {
        VpncPluginUiWidget *self = VPNC_PLUGIN_UI_WIDGET (user_data);
 
-       pw_type_changed_helper (self, combo);
-       stuff_changed_cb (combo, self);
+       stuff_changed_cb (NULL, self);
 }
 
 static const char *
@@ -303,66 +258,38 @@
 }
 
 static void
-init_one_pw_combo (VpncPluginUiWidget *self,
-                   NMSettingVPN *s_vpn,
-                   const char *combo_name,
-                   const char *secret_key,
-                   const char *type_key,
-                   const char *entry_name)
+init_password_icon (VpncPluginUiWidget *self,
+                    NMSettingVPN *s_vpn,
+                    const char *secret_key,
+                    const char *type_key,
+                    const char *entry_name)
 {
        VpncPluginUiWidgetPrivate *priv = VPNC_PLUGIN_UI_WIDGET_GET_PRIVATE 
(self);
-       int active = -1;
-       GtkWidget *widget;
-       GtkListStore *store;
-       GtkTreeIter iter;
-       const char *value = NULL;
-       guint32 default_idx = 1;
-
-       /* If there's already a password and the password type can't be found in
-        * the VPN settings, default to saving it.  Otherwise, always ask for 
it.
-        */
-       widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, 
entry_name));
-       g_assert (widget);
-       value = gtk_entry_get_text (GTK_ENTRY (widget));
-       if (value && strlen (value))
-               default_idx = 0;
-
-       store = gtk_list_store_new (1, G_TYPE_STRING);
-       if (s_vpn) {
-               value = secret_flags_to_pw_type (s_vpn, secret_key);
-               if (!value)
-                       value = nm_setting_vpn_get_data_item (s_vpn, type_key);
-       }
-
-       gtk_list_store_append (store, &iter);
-       gtk_list_store_set (store, &iter, 0, _("Saved"), -1);
-       if ((active < 0) && value) {
-               if (!strcmp (value, NM_VPNC_PW_TYPE_SAVE))
-                       active = 0;
-       }
+       GtkWidget *entry;
+       const char *value;
+       const char *flags = NULL;
 
-       gtk_list_store_append (store, &iter);
-       gtk_list_store_set (store, &iter, 0, _("Always Ask"), -1);
-       if ((active < 0) && value) {
-               if (!strcmp (value, NM_VPNC_PW_TYPE_ASK))
-                       active = 1;
-       }
+       entry = GTK_WIDGET (gtk_builder_get_object (priv->builder, entry_name));
+       g_assert (entry);
 
-       gtk_list_store_append (store, &iter);
-       gtk_list_store_set (store, &iter, 0, _("Not Required"), -1);
-       if ((active < 0) && value) {
-               if (!strcmp (value, NM_VPNC_PW_TYPE_UNUSED))
-                       active = 2;
-       }
+       nma_utils_setup_password_storage (entry, 0, (NMSetting *) s_vpn, 
secret_key,
+                                         TRUE, FALSE);
 
-       widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, 
combo_name));
-       g_assert (widget);
-       gtk_combo_box_set_model (GTK_COMBO_BOX (widget), GTK_TREE_MODEL 
(store));
-       g_object_unref (store);
-       gtk_combo_box_set_active (GTK_COMBO_BOX (widget), active < 0 ? 
default_idx : active);
-       pw_type_changed_helper (self, widget);
+       /* If there's no password and no flags in the setting,
+        * initialize flags as "always-ask".
+        */
+       if (s_vpn) {
+               flags = secret_flags_to_pw_type (s_vpn, secret_key);
+               if (!flags || !strcmp (flags, NM_VPNC_PW_TYPE_SAVE))
+                       flags = nm_setting_vpn_get_data_item (s_vpn, type_key);
+       }
+       value = gtk_entry_get_text (GTK_ENTRY (entry));
+       if ((!value || !*value) && !flags)
+               nma_utils_update_password_storage (entry, 
NM_SETTING_SECRET_FLAG_NOT_SAVED,
+                                                  (NMSetting *) s_vpn, 
secret_key);
 
-       g_signal_connect (G_OBJECT (widget), "changed", G_CALLBACK 
(pw_type_combo_changed_cb), self);
+       g_signal_connect (entry, "notify::secondary-icon-name",
+                         G_CALLBACK (password_storage_changed_cb), self);
 }
 
 static void
@@ -538,18 +465,16 @@
                               NM_VPNC_KEY_SECRET,
                               new_connection);
 
-       init_one_pw_combo (self,
-                          s_vpn,
-                          "user_pass_type_combo",
-                          NM_VPNC_KEY_XAUTH_PASSWORD,
-                          NM_VPNC_KEY_XAUTH_PASSWORD_TYPE,
-                          "user_password_entry");
-       init_one_pw_combo (self,
-                          s_vpn,
-                          "group_pass_type_combo",
-                          NM_VPNC_KEY_SECRET,
-                          NM_VPNC_KEY_SECRET_TYPE,
-                          "group_password_entry");
+       init_password_icon (self,
+                           s_vpn,
+                           NM_VPNC_KEY_XAUTH_PASSWORD,
+                           NM_VPNC_KEY_XAUTH_PASSWORD_TYPE,
+                           "user_password_entry");
+       init_password_icon (self,
+                           s_vpn,
+                           NM_VPNC_KEY_SECRET,
+                           NM_VPNC_KEY_SECRET_TYPE,
+                           "group_password_entry");
 
        widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, 
"user_entry"));
        g_return_val_if_fail (widget != NULL, FALSE);
@@ -860,36 +785,32 @@
 save_one_password (NMSettingVPN *s_vpn,
                    GtkBuilder *builder,
                    const char *entry_name,
-                   const char *combo_name,
                    const char *secret_key,
                    const char *type_key)
 {
-       NMSettingSecretFlags flags = NM_SETTING_SECRET_FLAG_NONE;
+       NMSettingSecretFlags flags;
        const char *data_val = NULL, *password;
        GtkWidget *entry;
-       GtkWidget *combo;
 
-       /* Grab original password flags */
+       /* Get secret flags */
        entry = GTK_WIDGET (gtk_builder_get_object (builder, entry_name));
-       flags = GPOINTER_TO_UINT (g_object_get_data (G_OBJECT (entry), 
"flags"));
+       flags = nma_utils_menu_to_secret_flags (entry);
 
-       /* And set new ones based on the type combo */
-       combo = GTK_WIDGET (gtk_builder_get_object (builder, combo_name));
-       switch (gtk_combo_box_get_active (GTK_COMBO_BOX (combo))) {
-       case PW_TYPE_SAVE:
+       /* Save password and convert flags to legacy data items */
+       switch (flags) {
+       case NM_SETTING_SECRET_FLAG_NONE:
+       case NM_SETTING_SECRET_FLAG_AGENT_OWNED:
                password = gtk_entry_get_text (GTK_ENTRY (entry));
                if (password && strlen (password))
                        nm_setting_vpn_add_secret (s_vpn, secret_key, password);
                data_val = NM_VPNC_PW_TYPE_SAVE;
                break;
-       case PW_TYPE_UNUSED:
+       case NM_SETTING_SECRET_FLAG_NOT_REQUIRED:
                data_val = NM_VPNC_PW_TYPE_UNUSED;
-               flags |= NM_SETTING_SECRET_FLAG_NOT_REQUIRED;
                break;
-       case PW_TYPE_ASK:
+       case NM_SETTING_SECRET_FLAG_NOT_SAVED:
        default:
                data_val = NM_VPNC_PW_TYPE_ASK;
-               flags |= NM_SETTING_SECRET_FLAG_NOT_SAVED;
                break;
        }
 
@@ -1032,7 +953,6 @@
        save_one_password (s_vpn,
                           priv->builder,
                           "user_password_entry",
-                          "user_pass_type_combo",
                           NM_VPNC_KEY_XAUTH_PASSWORD,
                           NM_VPNC_KEY_XAUTH_PASSWORD_TYPE);
 
@@ -1040,7 +960,6 @@
        save_one_password (s_vpn,
                           priv->builder,
                           "group_password_entry",
-                          "group_pass_type_combo",
                           NM_VPNC_KEY_SECRET,
                           NM_VPNC_KEY_SECRET_TYPE);
 
@@ -1129,6 +1048,16 @@
 {
        VpncPluginUiWidget *plugin = VPNC_PLUGIN_UI_WIDGET (object);
        VpncPluginUiWidgetPrivate *priv = VPNC_PLUGIN_UI_WIDGET_GET_PRIVATE 
(plugin);
+       GtkWidget *widget;
+
+       widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, 
"user_password_entry"));
+       g_signal_handlers_disconnect_by_func (G_OBJECT (widget),
+                                             (GCallback) 
password_storage_changed_cb,
+                                             plugin);
+       widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, 
"group_password_entry"));
+       g_signal_handlers_disconnect_by_func (G_OBJECT (widget),
+                                             (GCallback) 
password_storage_changed_cb,
+                                             plugin);
 
        if (priv->group)
                g_object_unref (priv->group);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/NetworkManager-vpnc-1.0.2/properties/tests/Makefile.am 
new/NetworkManager-vpnc-1.0.6/properties/tests/Makefile.am
--- old/NetworkManager-vpnc-1.0.2/properties/tests/Makefile.am  2015-05-05 
14:11:07.000000000 +0200
+++ new/NetworkManager-vpnc-1.0.6/properties/tests/Makefile.am  2015-08-27 
17:54:34.000000000 +0200
@@ -12,6 +12,7 @@
        $(GTK_CFLAGS) \
        $(GNOMEKEYRING_CFLAGS) \
        $(NM_CFLAGS) \
+       $(NMGTK_CFLAGS) \
        $(DBUS_CFLAGS)
 
 test_import_export_LDADD = \
@@ -20,6 +21,7 @@
        $(GNOMEKEYRING_LIBS) \
        $(DBUS_LIBS) \
        $(NM_LIBS) \
+       $(NMGTK_LIBS) \
        $(top_builddir)/properties/libnm-vpnc-properties.la
 
 if WITH_TESTS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/NetworkManager-vpnc-1.0.2/src/nm-vpnc-service.c 
new/NetworkManager-vpnc-1.0.6/src/nm-vpnc-service.c
--- old/NetworkManager-vpnc-1.0.2/src/nm-vpnc-service.c 2015-05-05 
14:11:07.000000000 +0200
+++ new/NetworkManager-vpnc-1.0.6/src/nm-vpnc-service.c 2015-08-27 
17:54:34.000000000 +0200
@@ -658,6 +658,8 @@
        va_start (args, format);
        string = g_strdup_vprintf (format, args);
        x = write (fd, string, strlen (string));
+       if (x < 0)
+               g_warning ("Unexpected error in write(): %d", errno);
 
        if (debug)
                g_print ("Config: %s", string);
@@ -883,9 +885,10 @@
        if (!nm_vpnc_config_write (priv->infd, s_con, s_vpn, error))
                goto out;
 
-       if (interactive)
-               write (priv->infd, &end, sizeof (end));
-       else {
+       if (interactive) {
+               if (write (priv->infd, &end, sizeof (end)) < 0)
+                       g_warning ("Unexpected error in write(): %d", errno);
+       } else {
                close (priv->infd);
                priv->infd = -1;
        }



Reply via email to