diff options
-rw-r--r-- | .build.yml | 11 | ||||
-rw-r--r-- | README.md | 4 | ||||
-rw-r--r-- | configure.ac | 53 | ||||
-rw-r--r-- | debian/changelog | 7 | ||||
-rw-r--r-- | debian/compat | 1 | ||||
-rw-r--r-- | debian/control | 32 | ||||
-rw-r--r-- | debian/copyright | 24 | ||||
-rw-r--r-- | debian/libpam-freerdp-dev.install (renamed from debian/libpam-freerdp2-dev.install) | 0 | ||||
-rw-r--r-- | debian/libpam-freerdp-dev.lintian-overrides (renamed from debian/libpam-freerdp2-dev.lintian-overrides) | 0 | ||||
-rw-r--r-- | debian/libpam-freerdp.install | 2 | ||||
-rw-r--r-- | debian/libpam-freerdp2.install | 2 | ||||
-rwxr-xr-x | debian/rules | 31 | ||||
-rw-r--r-- | include/pam-freerdp.h (renamed from include/pam-freerdp2.h) | 16 | ||||
-rw-r--r-- | src/Makefile.am | 56 | ||||
-rw-r--r-- | src/freerdp-auth-check.c (renamed from src/freerdp2-auth-check.c) | 23 | ||||
-rw-r--r-- | src/pam-freerdp-children.c (renamed from src/pam-freerdp2-children.c) | 4 | ||||
-rw-r--r-- | src/pam-freerdp-children.h (renamed from src/pam-freerdp2-children.h) | 6 | ||||
-rw-r--r-- | src/pam-freerdp-private.h (renamed from src/pam-freerdp2-private.h) | 6 | ||||
-rw-r--r-- | src/pam-freerdp.c (renamed from src/pam-freerdp2.c) | 16 | ||||
-rw-r--r-- | tests/Makefile.am | 36 | ||||
-rw-r--r-- | tests/mock_guest.c | 2 | ||||
-rw-r--r-- | tests/mock_pam.c | 22 | ||||
-rw-r--r-- | tests/test-freerdp-auth.c (renamed from tests/test-freerdp2-auth.c) | 0 | ||||
-rw-r--r-- | tests/test-freerdp-wrapper.cc (renamed from tests/test-freerdp2-wrapper.cc) | 6 |
24 files changed, 217 insertions, 143 deletions
@@ -3,7 +3,7 @@ ########################################################## requires: archlinux: - # Useful URL: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=libpam-freerdp2 + # Useful URL: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=libpam-freerdp - clang - gcc - git @@ -13,7 +13,7 @@ requires: # FIXME: add missing build-dependencies debian: - # Useful URL: https://salsa.debian.org/debian-remote-team/libpam-freerdp2 + # Useful URL: https://salsa.debian.org/debian-remote-team/libpam-freerdp - autopoint - clang - clang-tools @@ -22,10 +22,13 @@ requires: - git - make - libtool - - freerdp2-dev - libgtest-dev - libpam0g-dev - pkg-config + testing: + - freerdp3-dev + stable: + - freerdp2-dev ubuntu: - autopoint @@ -35,7 +38,7 @@ requires: - git - make - libtool - - freerdp2-dev + - freerdp3-dev - libgtest-dev - libpam0g-dev - pkg-config @@ -1,5 +1,5 @@ -# PAM FreeRDP2 +# PAM FreeRDP -A small PAM module to check an RDP Server (using FreeRDP2) for credentials. +A small PAM module to check an RDP Server (using FreeRDPv2/FreeRDPv3) for credentials. This PAM module is needed for Arctica Greeter's Remote Logon feature. diff --git a/configure.ac b/configure.ac index 68a6cec..5a2a567 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([libpam-freerdp2], [2.0.0]) +AC_INIT([libpam-freerdp], [2.0.0]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIRS([m4]) @@ -26,8 +26,55 @@ fi # FreeRDP ########################### -PKG_CHECK_MODULES(FREERDP2, freerdp2) -PKG_CHECK_MODULES(WINPR2, winpr2) +# FreeRDPv3 +PKG_CHECK_MODULES([FREERDP3], + [freerdp3], + [freerdp3_modules=yes], + [freerdp3_modules=no]) +AC_SUBST([FREERDP3_CFLAGS]) +AC_SUBST([FREERDP3_LIBS]) +AC_SUBST([FREERDP3_LDFLAGS]) +PKG_CHECK_MODULES([WINPR3], + [winpr3], + [], + []) +AC_SUBST([WINPR3_CFLAGS]) +AC_SUBST([WINPR3_LIBS]) +AC_SUBST([WINPR3_LDFLAGS]) +AC_MSG_CHECKING([for FreeRDPv3 libraries]) +AC_MSG_RESULT([$freerdp3_modules]) + +# FreeRDPv2 +PKG_CHECK_MODULES([FREERDP2], + [freerdp2], + [freerdp2_modules=yes], + [freerdp2_modules=no]) +AC_SUBST([FREERDP2_CFLAGS]) +AC_SUBST([FREERDP2_LIBS]) +AC_SUBST([FREERDP2_LDFLAGS]) +PKG_CHECK_MODULES([WINPR2], + [winpr2], + [], + []) +AC_SUBST([WINPR2_CFLAGS]) +AC_SUBST([WINPR2_LIBS]) +AC_SUBST([WINPR2_LDFLAGS]) +AC_MSG_CHECKING([for FreeRDPv2 libraries]) +AC_MSG_RESULT([$freerdp2_modules]) + +dnl FreeRDP detection version selection. +AC_MSG_CHECKING([Whether to build against old FreeRDPv2]) +AC_ARG_WITH([freerdp2], + [AS_HELP_STRING([--with-freerdp2], + [Build against old FreeRDPv2])]) + +AS_IF([test "x$with_freerdp2" = 'xyes'], + [AC_MSG_RESULT(yes) + AS_IF([test "x$freerdp2_modules" = 'xno'], + [AC_MSG_ERROR([requested FreeRDPv2, but not found])])], + [AC_MSG_RESULT([not requested explicitly])]) + +AM_CONDITIONAL([HAVE_FREERDP3], [test "x$freerdp3_modules" = 'xyes' && test "x$with_freerdp2" != 'xyes']) ########################### # PAM Module dir diff --git a/debian/changelog b/debian/changelog index 0b4fbd5..9653459 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +libpam-freerdp (3.0.0-0) UNRELEASED; urgency=medium + + * Rename libpam-freerdp2 back to libpam-freerdp and make things + work and build against freerdp3-dev. + + -- Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Thu, 07 Dec 2017 10:41:09 +0100 + libpam-freerdp2 (2.0.0-0) unstable; urgency=medium * Continue libpam-freerdp under a slightly new name and make things diff --git a/debian/compat b/debian/compat deleted file mode 100644 index ec63514..0000000 --- a/debian/compat +++ /dev/null @@ -1 +0,0 @@ -9 diff --git a/debian/control b/debian/control index a54ed40..acdd996 100644 --- a/debian/control +++ b/debian/control @@ -1,45 +1,43 @@ -Source: libpam-freerdp2 +Source: libpam-freerdp Section: admin Priority: optional Maintainer: Artica Project <devs@lists.arctica-project.org> Uploaders: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> -Build-Depends: cdbs (>= 0.4.93~), - debhelper (>= 9), - dh-autoreconf, +Build-Depends: debhelper-compat (= 12), dpkg-dev (>= 1.16.1.1~), mate-common, - freerdp2-dev (>= 2~), + freerdp3-dev (>= 3~) | freerdp2-dev (>= 2~), libgtest-dev, libpam0g-dev, pkg-config, -Standards-Version: 4.1.4 -Homepage: https://github.com/ArcticaProject/libpam-freerdp2 -Vcs-Git: https://github.com/ArcticaProject/libpam-freerdp2/ -Vcs-Browser: https://github.com/ArcticaProject/libpam-freerdp2/ +Standards-Version: 4.7.0 +Homepage: https://github.com/ArcticaProject/libpam-freerdp +Vcs-Git: https://github.com/ArcticaProject/libpam-freerdp/ +Vcs-Browser: https://github.com/ArcticaProject/libpam-freerdp/ -Package: libpam-freerdp2 +Package: libpam-freerdp Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, - freerdp2-x11, -Description: PAM Module to auth against an RDP server using FreeRDPv2 - Auth and session PAM module that uses FreeRDPv2 to authenticate against + freerdp3-x11 | freerdp2-x11, +Description: PAM Module to auth against an RDP server using FreeRDP + Auth and session PAM module that uses FreeRDP to authenticate against an RDP server as the remote host and user. Local account required. . This PAM module is intended for facilitating Remote Logon into RDP servers using LightDM's Arctica Greeter. -Package: libpam-freerdp2-dev +Package: libpam-freerdp-dev Section: libdevel Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, -Description: PAM Module to auth against an RDP server using FreeRDPv2 (development files) - Auth and session PAM module that uses FreeRDPv2 to authenticate against +Description: PAM Module to auth against an RDP server using FreeRDP (development files) + Auth and session PAM module that uses FreeRDP to authenticate against an RDP server as the remote host and user. Local account required. . This PAM module is intended for facilitating Remote Logon into RDP servers using LightDM's Arctica Greeter. . - This package contains the pam_freerdp2.so header files. + This package contains the pam_freerdp.so header files. diff --git a/debian/copyright b/debian/copyright index 8eb8d0b..322f28b 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,7 +1,7 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: libpam-freerdp2 +Upstream-Name: libpam-freerdp Upstream-Contact: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> -Source: https://github.com/ArcticaProject/libpam-freerdp2/ +Source: https://github.com/ArcticaProject/libpam-freerdp/ Files: ChangeLog Makefile.am @@ -12,8 +12,8 @@ Files: ChangeLog debian/changelog debian/compat debian/control - debian/libpam-freerdp2-dev.install - debian/libpam-freerdp2.install + debian/libpam-freerdp-dev.install + debian/libpam-freerdp.install debian/patches/README debian/rules debian/source/format @@ -34,18 +34,18 @@ Comment: Assuming copyright holdership from the majority of other code files. -Files: src/freerdp2-auth-check.c - src/pam-freerdp2-children.c - src/pam-freerdp2-children.h - src/pam-freerdp2.c - tests/test-freerdp2-auth.c +Files: src/freerdp-auth-check.c + src/pam-freerdp-children.c + src/pam-freerdp-children.h + src/pam-freerdp.c + tests/test-freerdp-auth.c Copyright: 2012, Canonical Ltd. License: GPL-3 Files: tests/mock_guest.c tests/mock_guest.h tests/mock_pam.c - tests/test-freerdp2-wrapper.cc + tests/test-freerdp-wrapper.cc Copyright: 2012, Canonical Ltd. License: GPL-3 Comment: @@ -60,12 +60,12 @@ Comment: Assuming copyright holdership from the majority of other code files. -Files: include/pam-freerdp2.h +Files: include/pam-freerdp.h Copyright: 2012, Canonical Ltd. 2012-2013, Mike Gabriel <mike.gabriel@das-netzwerkteam.de> License: GPL-3 -Files: src/pam-freerdp2-private.h +Files: src/pam-freerdp-private.h Copyright: 2018, Mike Gabriel <mike.gabriel@das-netzwerkteam.de> License: GPL-3 diff --git a/debian/libpam-freerdp2-dev.install b/debian/libpam-freerdp-dev.install index 175bba7..175bba7 100644 --- a/debian/libpam-freerdp2-dev.install +++ b/debian/libpam-freerdp-dev.install diff --git a/debian/libpam-freerdp2-dev.lintian-overrides b/debian/libpam-freerdp-dev.lintian-overrides index 4f32408..4f32408 100644 --- a/debian/libpam-freerdp2-dev.lintian-overrides +++ b/debian/libpam-freerdp-dev.lintian-overrides diff --git a/debian/libpam-freerdp.install b/debian/libpam-freerdp.install new file mode 100644 index 0000000..9a36efe --- /dev/null +++ b/debian/libpam-freerdp.install @@ -0,0 +1,2 @@ +lib/ +usr/libexec/ diff --git a/debian/libpam-freerdp2.install b/debian/libpam-freerdp2.install deleted file mode 100644 index 46af1b1..0000000 --- a/debian/libpam-freerdp2.install +++ /dev/null @@ -1,2 +0,0 @@ -lib/ -usr/lib/ diff --git a/debian/rules b/debian/rules index 96d8b0c..bc8f672 100755 --- a/debian/rules +++ b/debian/rules @@ -4,28 +4,19 @@ export DEB_BUILD_MAINT_OPTIONS = hardening=+all DPKG_EXPORT_BUILDFLAGS = 1 include /usr/share/dpkg/buildflags.mk -include /usr/share/cdbs/1/rules/debhelper.mk -include /usr/share/cdbs/1/rules/autoreconf.mk -include /usr/share/cdbs/1/class/autotools.mk -include /usr/share/cdbs/1/rules/utils.mk +%: + dh $@ -DEB_MAKE_CHECK_TARGET = check +# Uncomment for building against freerdp2-dev explicitly if freerdp3-dev _and_ +# freerdp2-dev are installed. +#override_dh_auto_configure: +# dh_auto_configure -- --with-freerdp2 -#pre-build:: -# cp README.md README -# -#cleanbuilddir:: -# rm -f README - -# Remove .a and .la files from /lib/security -remove-cruft:: - find $(DEB_DESTDIR)/lib/security -type f \ - \( -name '*.a' -o -name '*.la' \) \ - -exec rm '{}' + - -common-install-indep:: remove-cruft -common-install-arch:: remove-cruft -common-binary-post-install-arch:: list-missing +override_dh_install: + dh_install + find debian/tmp/lib/security -type f \ + \( -name '*.a' -o -name '*.la' \) \ + -exec rm '{}' + get-orig-source: uscan --noconf --force-download --rename --download-current-version --destdir=.. diff --git a/include/pam-freerdp2.h b/include/pam-freerdp.h index 3635a4f..7d5e277 100644 --- a/include/pam-freerdp2.h +++ b/include/pam-freerdp.h @@ -17,13 +17,13 @@ * Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> */ -#ifndef _PAM_FREERDP2_H_ -#define _PAM_FREERDP2_H_ +#ifndef _PAM_FREERDP_H_ +#define _PAM_FREERDP_H_ -#define PAM_FREERDP2_PROMPT_GUESTLOGIN "login:" -#define PAM_FREERDP2_PROMPT_USER "remote login:" -#define PAM_FREERDP2_PROMPT_HOST "remote host:" -#define PAM_FREERDP2_PROMPT_DOMAIN "remote domain:" -#define PAM_FREERDP2_PROMPT_PASSWORD "password:" +#define PAM_FREERDP_PROMPT_GUESTLOGIN "login:" +#define PAM_FREERDP_PROMPT_USER "remote login:" +#define PAM_FREERDP_PROMPT_HOST "remote host:" +#define PAM_FREERDP_PROMPT_DOMAIN "remote domain:" +#define PAM_FREERDP_PROMPT_PASSWORD "password:" -#endif //_PAM_FREERDP2_H_ +#endif //_PAM_FREERDP_H_ diff --git a/src/Makefile.am b/src/Makefile.am index ab3deed..32a8184 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,62 +1,80 @@ NULL = pamlibdir = $(PAMMODULEDIR) -pamlib_LTLIBRARIES = pam_freerdp2.la +pamlib_LTLIBRARIES = pam_freerdp.la -pam_freerdp2_la_SOURCES = \ +pam_freerdp_la_SOURCES = \ auth-check-path.c auth-check-path.h \ - pam-freerdp2.c \ - pam-freerdp2-children.c \ + pam-freerdp.c \ + pam-freerdp-children.c \ $(NULL) -pam_freerdp2_la_LDFLAGS = \ +pam_freerdp_la_LDFLAGS = \ -no-undefined \ -module \ -avoid-version \ $(COVERAGE_LDFLAGS) \ $(NULL) -pam_freerdp2_la_CFLAGS = \ +pam_freerdp_la_CFLAGS = \ -Wall -Werror \ - -DAUTH_CHECK="\"$(libexecdir)/freerdp2-auth-check\"" \ + -DAUTH_CHECK="\"$(libexecdir)/freerdp-auth-check\"" \ $(COVERAGE_CFLAGS) \ $(NULL) -pam_freerdp2_la_CPPFLAGS = \ +pam_freerdp_la_CPPFLAGS = \ -I$(top_srcdir)/include \ $(NULL) -pam_freerdp2_la_LIBADD = \ +pam_freerdp_la_LIBADD = \ -lpam \ $(NULL) -pam_freerdp2includedir = $(includedir)/security/ -pam_freerdp2include_HEADERS = \ - $(top_srcdir)/include/pam-freerdp2.h \ +pam_freerdpincludedir = $(includedir)/security/ +pam_freerdpinclude_HEADERS = \ + $(top_srcdir)/include/pam-freerdp.h \ $(NULL) libexec_PROGRAMS = \ - freerdp2-auth-check \ + freerdp-auth-check \ $(NULL) -freerdp2_auth_check_SOURCES = \ - freerdp2-auth-check.c \ +freerdp_auth_check_SOURCES = \ + freerdp-auth-check.c \ $(NULL) -freerdp2_auth_check_CFLAGS = \ +if HAVE_FREERDP3 +freerdp_auth_check_CFLAGS = \ + -Wall -Werror \ + $(FREERDP3_CFLAGS) \ + $(WINPR3_CFLAGS) \ + $(COVERAGE_CFLAGS) \ + $(NULL) +freerdp_auth_check_LDADD = \ + $(FREERDP3_LIBS) \ + $(WINPR3_LIBS) \ + $(NULL) + +freerdp_auth_check_LDFLAGS = \ + $(FREERDP3_LDFLAGS) \ + $(WINPR3_LDFLAGS) \ + $(COVERAGE_LDFLAGS) \ + $(NULL) +else +freerdp_auth_check_CFLAGS = \ -Wall -Werror \ $(FREERDP2_CFLAGS) \ $(WINPR2_CFLAGS) \ $(COVERAGE_CFLAGS) \ $(NULL) - -freerdp2_auth_check_LDADD = \ +freerdp_auth_check_LDADD = \ $(FREERDP2_LIBS) \ $(WINPR2_LIBS) \ $(NULL) -freerdp2_auth_check_LDFLAGS = \ +freerdp_auth_check_LDFLAGS = \ $(FREERDP2_LDFLAGS) \ $(WINPR2_LDFLAGS) \ $(COVERAGE_LDFLAGS) \ $(NULL) +endif
\ No newline at end of file diff --git a/src/freerdp2-auth-check.c b/src/freerdp-auth-check.c index ab3b1fd..752f2bf 100644 --- a/src/freerdp2-auth-check.c +++ b/src/freerdp-auth-check.c @@ -18,6 +18,7 @@ #include <freerdp/freerdp.h> #include <freerdp/channels/channels.h> +#include <freerdp/version.h> #include <string.h> #include <sys/mman.h> #include <winpr/wlog.h> @@ -52,7 +53,7 @@ main (int argc, char *argv[]) { char password[512]; if (argc != 4) { - printf("Usage: echo <passwd> | freerdp2-auth-check <host>[:<port>] <user> <domain>\n\n"); + printf("Usage: echo <passwd> | freerdp-auth-check <host>[:<port>] <user> <domain>\n\n"); printf("ERROR: Incorrect number of parameters.\n\n"); return -1; } @@ -91,15 +92,26 @@ main (int argc, char *argv[]) /* We've got a port to deal with */ colonloc[0] = '\0'; colonloc++; - +#if FREERDP_VERSION_MAJOR >= 3 + freerdp_settings_set_uint32(instance->context->settings, FreeRDP_ServerPort, strtoul(colonloc, NULL, 10)); +#else instance->settings->ServerPort = strtoul(colonloc, NULL, 10); +#endif } +#if FREERDP_VERSION_MAJOR >= 3 + freerdp_settings_set_bool(instance->context->settings, FreeRDP_AuthenticationOnly, TRUE); + freerdp_settings_set_string(instance->context->settings, FreeRDP_ServerHostname, argv[1]); + freerdp_settings_set_string(instance->context->settings, FreeRDP_Username, argv[2]); + freerdp_settings_set_string(instance->context->settings, FreeRDP_Domain, argv[3]); + freerdp_settings_set_string(instance->context->settings, FreeRDP_Password, password); +#else instance->settings->AuthenticationOnly = TRUE; instance->settings->ServerHostname = argv[1]; instance->settings->Username = argv[2]; instance->settings->Domain = argv[3]; instance->settings->Password = password; +#endif BOOL connection_successful; connection_successful = freerdp_connect(instance); @@ -107,10 +119,17 @@ main (int argc, char *argv[]) memset(password, 0, sizeof(password)); munlock(password, sizeof(password)); +#if FREERDP_VERSION_MAJOR >= 3 + freerdp_settings_set_string(instance->context->settings, FreeRDP_Password, NULL); + freerdp_settings_set_string(instance->context->settings, FreeRDP_ServerHostname, NULL); + freerdp_settings_set_string(instance->context->settings, FreeRDP_Username, NULL); + freerdp_settings_set_string(instance->context->settings, FreeRDP_Domain, NULL); +#else instance->settings->Password = NULL; instance->settings->ServerHostname = NULL; instance->settings->Username = NULL; instance->settings->Domain = NULL; +#endif int retval = 0; if (!connection_successful) { diff --git a/src/pam-freerdp2-children.c b/src/pam-freerdp-children.c index 91b4a3a..8cd4ef8 100644 --- a/src/pam-freerdp2-children.c +++ b/src/pam-freerdp-children.c @@ -34,7 +34,7 @@ #include <security/pam_modutil.h> #include <security/pam_appl.h> -#include "pam-freerdp2-children.h" +#include "pam-freerdp-children.h" #include "auth-check-path.h" void @@ -172,7 +172,7 @@ session_socket_handler (struct passwd * pwdent, int readypipe, const char * ruse memset(&socket_addr, 0, sizeof(struct sockaddr_un)); socket_addr.sun_family = AF_UNIX; strncpy(socket_addr.sun_path, pwdent->pw_dir, sizeof(socket_addr.sun_path) - 1); - strncpy(socket_addr.sun_path + strlen(pwdent->pw_dir), "/.freerdp2-socket", (sizeof(socket_addr.sun_path) - strlen(pwdent->pw_dir)) - 1); + strncpy(socket_addr.sun_path + strlen(pwdent->pw_dir), "/.freerdp-socket", (sizeof(socket_addr.sun_path) - strlen(pwdent->pw_dir)) - 1); /* We bind the socket before forking so that we ensure that there isn't a race condition to get to it. Things will block diff --git a/src/pam-freerdp2-children.h b/src/pam-freerdp-children.h index dac3b19..1109587 100644 --- a/src/pam-freerdp2-children.h +++ b/src/pam-freerdp-children.h @@ -16,8 +16,8 @@ * Author: Ted Gould <ted@canonical.com> */ -#ifndef _PAM_FREERDP2_CHILDREN_H_ -#define _PAM_FREERDP2_CHILDREN_H_ +#ifndef _PAM_FREERDP_CHILDREN_H_ +#define _PAM_FREERDP_CHILDREN_H_ #define PAM_TYPE_RDP_USER 1234 #define PAM_TYPE_RDP_SERVER 1235 @@ -29,4 +29,4 @@ pam_sm_authenticate_helper (int *stdinpipe, const char* username, const char* rh int session_socket_handler (struct passwd * pwdent, int readypipe, const char * ruser, const char * rhost, const char * rdomain, const char * password); -#endif //_PAM_FREERDP2_CHILDREN_H_ +#endif //_PAM_FREERDP_CHILDREN_H_ diff --git a/src/pam-freerdp2-private.h b/src/pam-freerdp-private.h index 74663ef..0b7520f 100644 --- a/src/pam-freerdp2-private.h +++ b/src/pam-freerdp-private.h @@ -17,8 +17,8 @@ * Author libpam-freerdp (where we forked from): Ted Gould <ted@canonical.com> */ -#ifndef _PAM_FREERDP2_PRIVATE_H_ -#define _PAM_FREERDP2_PRIVATE_H_ +#ifndef _PAM_FREERDP_PRIVATE_H_ +#define _PAM_FREERDP_PRIVATE_H_ PAM_EXTERN int pam_sm_authenticate (pam_handle_t *pamh, int flags, int argc, const char **argv); @@ -29,4 +29,4 @@ pam_sm_close_session (pam_handle_t *pamh, int flags, int argc, const char **argv PAM_EXTERN int pam_sm_setcred (pam_handle_t *pamh, int flags, int argc, const char ** argv); -#endif //_PAM_FREERDP2_PRIVATE_H_ +#endif //_PAM_FREERDP_PRIVATE_H_ diff --git a/src/pam-freerdp2.c b/src/pam-freerdp.c index 593dde5..8bf505f 100644 --- a/src/pam-freerdp2.c +++ b/src/pam-freerdp.c @@ -36,9 +36,9 @@ #include <security/pam_modutil.h> #include <security/pam_appl.h> -#include "pam-freerdp2.h" +#include "pam-freerdp.h" -#include "pam-freerdp2-children.h" +#include "pam-freerdp-children.h" #include "auth-check-path.h" static int unpriveleged_kill (struct passwd * pwdent); @@ -93,20 +93,20 @@ get_item (pam_handle_t * pamh, int type) switch (type) { case PAM_USER: - message.msg = PAM_FREERDP2_PROMPT_GUESTLOGIN; + message.msg = PAM_FREERDP_PROMPT_GUESTLOGIN; break; case PAM_TYPE_RDP_USER: - message.msg = PAM_FREERDP2_PROMPT_USER; + message.msg = PAM_FREERDP_PROMPT_USER; break; case PAM_TYPE_RDP_SERVER: - message.msg = PAM_FREERDP2_PROMPT_HOST; + message.msg = PAM_FREERDP_PROMPT_HOST; break; case PAM_AUTHTOK: - message.msg = PAM_FREERDP2_PROMPT_PASSWORD; + message.msg = PAM_FREERDP_PROMPT_PASSWORD; message.msg_style = PAM_PROMPT_ECHO_OFF; break; case PAM_TYPE_RDP_DOMAIN: - message.msg = PAM_FREERDP2_PROMPT_DOMAIN; + message.msg = PAM_FREERDP_PROMPT_DOMAIN; break; default: return NULL; @@ -460,7 +460,7 @@ pam_sm_setcred (pam_handle_t __attribute__((unused)) *pamh, int __attribute__((u #ifdef PAM_STATIC struct pam_module _pam_freerdp_modstruct = { - "pam_freerdp2", + "pam_freerdp", pam_sm_authenticate, pam_sm_setcred, NULL, diff --git a/tests/Makefile.am b/tests/Makefile.am index 29b0a98..e945201 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -5,16 +5,16 @@ DISTCLEANFILES = EXTRA_DIST = TESTS = \ - test-freerdp2-wrapper \ + test-freerdp-wrapper \ $(NULL) check_PROGRAMS = \ - test-freerdp2-auth \ + test-freerdp-auth \ $(TESTS) \ $(NULL) CLEANFILES += \ - test-freerdp2-auth \ + test-freerdp-auth \ $(TESTS) \ $(NULL) @@ -76,42 +76,34 @@ libgtest_main_a_CXXFLAGS = \ # Wrapper ########################## -test_freerdp2_wrapper: test-freerdp2-auth +test_freerdp_wrapper: test-freerdp-auth -test_freerdp2_wrapper_SOURCES = \ +test_freerdp_wrapper_SOURCES = \ mock_pam.c mock_pam.h \ mock_guest.c mock_guest.h \ - test-freerdp2-wrapper.cc \ + test-freerdp-wrapper.cc \ $(NULL) -test_freerdp2_wrapper_LDADD = \ +test_freerdp_wrapper_LDADD = \ libgtest.a libgtest_main.a \ - ${top_srcdir}/src/pam_freerdp2.la \ - $(FREERDP2_LIBS) \ - $(WINPR2_LIBS) \ + ${top_srcdir}/src/pam_freerdp.la \ $(NULL) -test_freerdp2_wrapper_CPPFLAGS = \ +test_freerdp_wrapper_CPPFLAGS = \ $(AM_CPPFLAGS) \ -I${top_srcdir}/include \ -I${top_srcdir}/src \ $(GTEST_CPPFLAGS) \ - $(FREERDP2_CPPFLAGS) \ - $(WINPR2_CPPFLAGS) \ $(NULL) -test_freerdp2_wrapper_CXXFLAGS = \ +test_freerdp_wrapper_CXXFLAGS = \ $(AM_CXXFLAGS) \ - -DAUTH_CHECK="\"$(abs_builddir)/test-freerdp2-auth\"" \ + -DAUTH_CHECK="\"$(abs_builddir)/test-freerdp-auth\"" \ $(GTEST_CXXFLAGS) \ - $(FREERDP2_CXXFLAGS) \ - $(WINPR2_CXXFLAGS) \ $(NULL) -test_freerdp2_wrapper_LDFLAGS = \ +test_freerdp_wrapper_LDFLAGS = \ $(GTEST_LDFLAGS) \ - $(FREERDP2_LDFLAGS) \ - $(WINPR2_LDFLAGS) \ -pthread \ $(NULL) @@ -119,6 +111,6 @@ test_freerdp2_wrapper_LDFLAGS = \ # Auth tool ########################## -test_freerdp2_auth_SOURCES = \ - test-freerdp2-auth.c \ +test_freerdp_auth_SOURCES = \ + test-freerdp-auth.c \ $(NULL) diff --git a/tests/mock_guest.c b/tests/mock_guest.c index 4d10bfb..dad9d5d 100644 --- a/tests/mock_guest.c +++ b/tests/mock_guest.c @@ -89,7 +89,7 @@ socket_sucker () serv_addr.sun_family = AF_UNIX; - unsigned long int printsize = (unsigned long int)snprintf(serv_addr.sun_path, sizeof(serv_addr.sun_path) - 1, "%s/%s", home, ".freerdp2-socket"); + unsigned long int printsize = (unsigned long int)snprintf(serv_addr.sun_path, sizeof(serv_addr.sun_path) - 1, "%s/%s", home, ".freerdp-socket"); if (printsize > sizeof(serv_addr.sun_path) - 1 || printsize < 0) { return -1; } diff --git a/tests/mock_pam.c b/tests/mock_pam.c index f32d95f..ca222ba 100644 --- a/tests/mock_pam.c +++ b/tests/mock_pam.c @@ -9,7 +9,7 @@ #include <string.h> #include "mock_pam.h" -#include "pam-freerdp2.h" +#include "pam-freerdp.h" struct pam_handle { void *item[PAM_NUM_ITEMS]; @@ -33,15 +33,15 @@ int fake_conv (int __attribute__((unused)) num_msg, response->resp_retcode = 0; - if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_GUESTLOGIN) == 0) { + if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_GUESTLOGIN) == 0) { response->resp = strdup ("guest"); /* IMPORTANT: this needs to be in /etc/passwd */ - } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_USER) == 0) { + } else if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_USER) == 0) { response->resp = strdup ("ruser"); - } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_HOST) == 0) { + } else if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_HOST) == 0) { response->resp = strdup ("protocol://rhost/dummy"); - } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_PASSWORD) == 0) { + } else if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_PASSWORD) == 0) { response->resp = strdup ("password"); - } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_DOMAIN) == 0) { + } else if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_DOMAIN) == 0) { response->resp = strdup ("domain"); } else { free(response); @@ -66,15 +66,15 @@ int fake_conv_empty_password (int __attribute__((unused)) num_msg, response->resp_retcode = 0; - if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_GUESTLOGIN) == 0) { + if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_GUESTLOGIN) == 0) { response->resp = strdup ("guest"); /* IMPORTANT: this needs to be in /etc/passwd */ - } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_USER) == 0) { + } else if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_USER) == 0) { response->resp = strdup ("ruser"); - } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_HOST) == 0) { + } else if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_HOST) == 0) { response->resp = strdup ("protocol://rhost/dummy"); - } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_PASSWORD) == 0) { + } else if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_PASSWORD) == 0) { response->resp = strdup (""); - } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_DOMAIN) == 0) { + } else if (strcmp((*msg)->msg, PAM_FREERDP_PROMPT_DOMAIN) == 0) { response->resp = strdup ("domain"); } else { free(response); diff --git a/tests/test-freerdp2-auth.c b/tests/test-freerdp-auth.c index a83885e..a83885e 100644 --- a/tests/test-freerdp2-auth.c +++ b/tests/test-freerdp-auth.c diff --git a/tests/test-freerdp2-wrapper.cc b/tests/test-freerdp-wrapper.cc index 33b4168..7555cb1 100644 --- a/tests/test-freerdp2-wrapper.cc +++ b/tests/test-freerdp-wrapper.cc @@ -12,7 +12,7 @@ extern "C" { #include "mock_pam.h" #include "mock_guest.h" -#include "pam-freerdp2-private.h" +#include "pam-freerdp-private.h" int freerdpclient_wrapper (int argc, char * argv[]); @@ -43,13 +43,13 @@ namespace { virtual void SetUp() { // Code here will be called immediately after the constructor (right // before each test). - unlink("/tmp/.freerdp2-socket"); + unlink("/tmp/.freerdp-socket"); } virtual void TearDown() { // Code here will be called immediately after each test (right // before the destructor). - unlink("/tmp/.freerdp2-socket"); + unlink("/tmp/.freerdp-socket"); } // Objects declared here can be used by all tests in the test case for Foo. |