From eed9d645552c7dca8b2cf0237d67a6affdf025a7 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Fri, 4 May 2018 15:25:46 +0200 Subject: src/user-list.vala: Obtain PAM_X2GO prompts from public API in security/pam.x2go.h. --- configure.ac | 6 ++++++ debian/control | 1 + src/Makefile.am | 1 + src/pam_x2go.vapi | 9 +++++++++ src/user-list.vala | 8 ++++---- 5 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 src/pam_x2go.vapi diff --git a/configure.ac b/configure.ac index f8064f4..c5576d2 100644 --- a/configure.ac +++ b/configure.ac @@ -76,6 +76,12 @@ if test x$gtk_check_pass = xyes ; then AC_SUBST([AM_VALAFLAGS]) fi +dnl ########################################################################## +dnl Remote Logon Dependencies +dnl ########################################################################## + +AC_CHECK_HEADERS([security/pam-x2go.h]) + dnl ########################################################################### dnl Files to generate dnl ########################################################################### diff --git a/debian/control b/debian/control index f76e895..4cc96fc 100644 --- a/debian/control +++ b/debian/control @@ -16,6 +16,7 @@ Build-Depends: at-spi2-core, libgtk-3-dev, liblightdm-gobject-dev (>= 1.4.0) | liblightdm-gobject-1-dev (>= 1.4.0), lightdm-vala | liblightdm-gobject-1-dev, + libpam-x2go-dev, libpixman-1-dev, numix-gtk-theme, numix-icon-theme, diff --git a/src/Makefile.am b/src/Makefile.am index 9f16db6..4e9c567 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -7,6 +7,7 @@ arctica_greeter_SOURCES = \ config.vapi \ fixes.vapi \ indicator.vapi \ + pam_x2go.vapi \ xsync.vapi \ animate-timer.vala \ background.vala \ diff --git a/src/pam_x2go.vapi b/src/pam_x2go.vapi new file mode 100644 index 0000000..b5df15d --- /dev/null +++ b/src/pam_x2go.vapi @@ -0,0 +1,9 @@ +[CCode (cprefix = "PAM_X2GO_", cheader_filename = "security/pam-x2go.h")] +namespace pam_x2go +{ + public const string PROMPT_GUESTLOGIN; + public const string PROMPT_USER; + public const string PROMPT_HOST; + public const string PROMPT_COMMAND; + public const string PROMPT_PASSWORD; +} diff --git a/src/user-list.vala b/src/user-list.vala index 9b0f403..443dec8 100644 --- a/src/user-list.vala +++ b/src/user-list.vala @@ -1095,19 +1095,19 @@ public class UserList : GreeterList { if (selected_entry.id.has_prefix ("*remote_login")) { - if (text == "remote login:") + if ((text == pam_x2go.PROMPT_USER) || (text == "remote login:")) { Gtk.Entry field = current_remote_fields.get ("username") as Gtk.Entry; var answer = field != null ? field.text : ""; ArcticaGreeter.singleton.respond (answer); } - else if (text == "password:") + else if ((text == pam_x2go.PROMPT_PASSWORD) || (text == "password:")) { Gtk.Entry field = current_remote_fields.get ("password") as Gtk.Entry; var answer = field != null ? field.text : ""; ArcticaGreeter.singleton.respond (answer); } - else if (text == "remote host:") + else if ((text == pam_x2go.PROMPT_HOST) || (text == "remote host:")) { var answer = url_from_remote_loding_server_list_name (selected_entry.id); ArcticaGreeter.singleton.respond (answer); @@ -1118,7 +1118,7 @@ public class UserList : GreeterList var answer = field != null ? field.text : ""; ArcticaGreeter.singleton.respond (answer); } - else if (text == "remote command:") + else if (text == pam_x2go.PROMPT_COMMAND) { Gtk.Entry field = current_remote_fields.get ("command") as Gtk.Entry; var answer = field != null ? field.text : ""; -- cgit v1.2.3