From 05ef6d104e5a13af55b61debab28eca3c04fe53e Mon Sep 17 00:00:00 2001 From: Koichiro IWAO Date: Wed, 19 Jul 2017 15:41:32 +0900 Subject: [PATCH] sesman: search pam files also in ${sysconfdir}/pam.d as some operating system such as FreeBSD searches not only `/etc/pam.d` but also `/usr/local/etc/pam.d` [1]. [1] https://www.freebsd.org/cgi/man.cgi?query=pam.d&sektion=5 --- sesman/Makefile.am | 1 + sesman/verify_user_pam.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/sesman/Makefile.am b/sesman/Makefile.am index 74ec183f..193a7cce 100644 --- a/sesman/Makefile.am +++ b/sesman/Makefile.am @@ -2,6 +2,7 @@ EXTRA_DIST = \ Doxyfile AM_CPPFLAGS = \ + -DXRDP_SYSCONF_PATH=\"${sysconfdir}\" \ -DXRDP_CFG_PATH=\"${sysconfdir}/xrdp\" \ -DXRDP_SBIN_PATH=\"${sbindir}\" \ -DXRDP_SHARE_PATH=\"${datadir}/xrdp\" \ diff --git a/sesman/verify_user_pam.c b/sesman/verify_user_pam.c index 15174c24..05e941bb 100644 --- a/sesman/verify_user_pam.c +++ b/sesman/verify_user_pam.c @@ -91,7 +91,8 @@ get_service_name(char *service_name) { service_name[0] = 0; - if (g_file_exist("/etc/pam.d/xrdp-sesman")) + if (g_file_exist("/etc/pam.d/xrdp-sesman") || + g_file_exist(XRDP_SYSCONF_PATH "/pam.d/xrdp-sesman")) { g_strncpy(service_name, "xrdp-sesman", 255); }