File xrdp-add-systemd-support.patch of Package xrdp.2184

Index: xrdp-0.6.1/configure.ac
===================================================================
--- xrdp-0.6.1.orig/configure.ac
+++ xrdp-0.6.1/configure.ac
@@ -8,6 +8,14 @@ AC_PROG_CC
 AC_C_CONST
 AC_PROG_LIBTOOL
 PKG_CHECK_MODULES(AVAHI, avahi-client >= 0.6.4)
+AC_ARG_WITH([systemdsystemunitdir],
+        AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
+        [], [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)])
+if test "x$with_systemdsystemunitdir" != xno; then
+        AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
+fi
+AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ])
+
 AC_ARG_ENABLE(nopam, AS_HELP_STRING([--enable-nopam],
               [Build no PAM support (default: no)]),
               [nopam=true], [nopam=false])
Index: xrdp-0.6.1/instfiles/xrdp-sesman.service
===================================================================
--- /dev/null
+++ xrdp-0.6.1/instfiles/xrdp-sesman.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=xrdp session manager
+After=syslog.target network.target
+StopWhenUnneeded=true
+
+[Service]
+Type=forking
+PIDFile=/var/run/xrdp-sesman.pid
+EnvironmentFile=/etc/sysconfig/xrdp
+ExecStart=/usr/sbin/xrdp-sesman $SESMAN_OPTIONS
+ExecStop=/usr/sbin/xrdp-sesman $SESMAN_OPTIONS --kill
+
+[Install]
+WantedBy=multi-user.target
Index: xrdp-0.6.1/instfiles/xrdp.service
===================================================================
--- /dev/null
+++ xrdp-0.6.1/instfiles/xrdp.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=xrdp daemon
+Requires=xrdp-sesman.service
+After=syslog.target network.target xrdp-sesman.service
+
+[Service]
+Type=forking
+PIDFile=/var/run/xrdp.pid
+EnvironmentFile=/etc/sysconfig/xrdp
+ExecStart=/usr/sbin/xrdp $XRDP_OPTIONS
+ExecStop=/usr/sbin/xrdp $XRDP_OPTIONS --kill
+
+[Install]
+WantedBy=multi-user.target
Index: xrdp-0.6.1/instfiles/Makefile.am
===================================================================
--- xrdp-0.6.1.orig/instfiles/Makefile.am
+++ xrdp-0.6.1/instfiles/Makefile.am
@@ -1,8 +1,15 @@
-EXTRA_DIST = xrdp.sh km-0407.ini  km-0409.ini km-040c.ini km-0410.ini km-0419.ini km-041d.ini
+EXTRA_DIST = xrdp.sh km-0407.ini  km-0409.ini km-040c.ini km-0410.ini km-0419.ini km-041d.ini \
+xrdp-sesman.service xrdp.service
 
 SUBDIRS = \
   pam.d
 
+if HAVE_SYSTEMD
+systemdsystemunit_DATA = \
+        xrdp-sesman.service \
+        xrdp.service
+endif
+
 startscriptdir=$(sysconfdir)/xrdp
 
 startscript_DATA = \
Index: xrdp-0.6.1/instfiles/pam.d/xrdp-sesman
===================================================================
--- xrdp-0.6.1.orig/instfiles/pam.d/xrdp-sesman
+++ xrdp-0.6.1/instfiles/pam.d/xrdp-sesman
@@ -1,3 +1,6 @@
 #%PAM-1.0
-auth       include	common-auth
-account    include	common-account
+auth            include         common-auth
+account         include         common-account
+password        include         common-password
+session         required        pam_loginuid.so
+session         include         common-session
openSUSE Build Service is sponsored by