1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-12 07:27:57 +00:00

- Copy net/xrdp to net/xrdp-devel, update to 0.7.0

PR:		ports/172793
Submitted by:	Koichiro IWAO <meta+ports@vmeta.jp> (maintainer)
This commit is contained in:
Steve Wills 2013-01-19 02:28:59 +00:00
parent ceb37413c0
commit 7e0125fdfb
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=310630
11 changed files with 380 additions and 0 deletions

View File

@ -1250,6 +1250,7 @@
SUBDIR += xpvm
SUBDIR += xrdesktop
SUBDIR += xrdp
SUBDIR += xrdp-devel
SUBDIR += yaph
SUBDIR += yate
SUBDIR += yaz

83
net/xrdp-devel/Makefile Normal file
View File

@ -0,0 +1,83 @@
# Created by: alepulver
# $FreeBSD$
PORTNAME= xrdp
PORTVERSION= 0.7.0.20120918
CATEGORIES= net
MASTER_SITES= http://www.club.kyutech.ac.jp/~meta/distfiles/ \
http://key2.jp/~meta/distfiles/
PKGNAMESUFFIX= -devel
DIST_SUBDIR?= ${PORTNAME}
PATCH_SITES= http://www.club.kyutech.ac.jp/~meta/patches/xrdp/0.6.0/ \
http://key2.jp/~meta/patches/xrdp/0.6.0/
MAINTAINER= meta+ports@vmeta.jp
COMMENT= An open source Remote Desktop Protocol (RDP) server
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
USE_XORG= x11 xfixes
USE_AUTOTOOLS= autoconf:env automake:env libtool
GNU_CONFIGURE= yes
USE_RC_SUBR= xrdp
CONFIGURE_ARGS= --localstatedir=/var
LDFLAGS+= -L${LOCALBASE}/lib
CPPFLAGS+= -I${LOCALBASE}/include
CONFLICTS= xrdp-[0-9]*
USE_LDCONFIG= ${PREFIX}/lib/xrdp
OPTIONS_DEFINE= DEBUG GATEWAY JP106
OPTIONS_DEFAULT= JP106
GATEWAY_DESC= Install xrdp as RDP gateway (no VNC backend)
JP106_DESC= Install Japanese JP106 keymap
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MDEBUG}
CONFIGURE_ARGS+= --enable-xrdpdebug
CFLAGS+= -DXRDP_DEBUG
.endif
.if ${PORT_OPTIONS:MJP106}
PATCHFILES+= patch-instfiles__Makefile.am \
patch-instfiles__km-0411.ini \
patch-instfiles__km-e0010411.ini \
patch-instfiles__km-e0200411.ini \
patch-instfiles__km-e0210411.ini
PLIST_SUB+= JP106=""
.else
PLIST_SUB+= JP106="@comment "
.endif
.if !${PORT_OPTIONS:MGATEWAY}
RUN_DEPENDS+= Xvnc:${PORTSDIR}/net/vnc
.endif
MAN5= sesman.ini.5 xrdp.ini.5
MAN8= xrdp-sesman.8 xrdp-sesrun.8 xrdp.8
SUB_FILES= pkg-message
post-patch:
.for f in sesman/sesman.ini sesman/startwm.sh xrdp/rsakeys.ini xrdp/xrdp.ini
@${MV} ${WRKSRC}/$f ${WRKSRC}/$f.sample
.endfor
pre-configure:
@cd ${WRKSRC} && ./bootstrap
post-install:
.for f in rsakeys.ini sesman.ini startwm.sh xrdp.ini
@if [ ! -f ${PREFIX}/etc/xrdp/$f ]; then \
${CP} -p ${PREFIX}/etc/xrdp/$f.sample ${PREFIX}/etc/xrdp/$f ; \
fi
.endfor
@if cmp -s ${PREFIX}/etc/xrdp/rsakeys.ini.sample ${PREFIX}/etc/xrdp/rsakeys.ini; then \
${PREFIX}/bin/xrdp-keygen xrdp ${PREFIX}/etc/xrdp/rsakeys.ini; fi
@${ECHO_CMD}; ${CAT} ${PKGMESSAGE}; ${ECHO_CMD}
.include <bsd.port.mk>

12
net/xrdp-devel/distinfo Normal file
View File

@ -0,0 +1,12 @@
SHA256 (xrdp/xrdp-0.7.0.20120918.tar.gz) = 97b447a2634dc151b869beca216116c5ec7cb17cc662c0642861c6226c4dcec9
SIZE (xrdp/xrdp-0.7.0.20120918.tar.gz) = 6618465
SHA256 (xrdp/patch-instfiles__Makefile.am) = 92e8a1768b63f508bc5b37cdc5723d1e03875af7fbdf064aa86a6b40b1bd2f07
SIZE (xrdp/patch-instfiles__Makefile.am) = 710
SHA256 (xrdp/patch-instfiles__km-0411.ini) = 58bcb7f063db4fcde9230be3013d46226b8af5c0060b7faf00250a51aa7da4fd
SIZE (xrdp/patch-instfiles__km-0411.ini) = 9576
SHA256 (xrdp/patch-instfiles__km-e0010411.ini) = 201e55ae65c223602d66eb15ac3fd53564dc3f8e856f08183f9cf8f3fc6334c3
SIZE (xrdp/patch-instfiles__km-e0010411.ini) = 9592
SHA256 (xrdp/patch-instfiles__km-e0200411.ini) = d6e95d98629bf346173e97ebd9fba7910971a0165fc32c3e3cada3c5a6d01de8
SIZE (xrdp/patch-instfiles__km-e0200411.ini) = 9592
SHA256 (xrdp/patch-instfiles__km-e0210411.ini) = f3f29efc3541c08f60edbbb3ecf85da59abe7d745b59a7d5d0340d5940c3e723
SIZE (xrdp/patch-instfiles__km-e0210411.ini) = 9592

View File

@ -0,0 +1,11 @@
--- common/os_calls.c.orig 2011-03-12 16:10:35.000000000 +0900
+++ common/os_calls.c 2011-03-12 16:34:05.000000000 +0900
@@ -1987,6 +1987,8 @@
g_clearenv(void)
{
#if defined(_WIN32)
+#elif defined(__FreeBSD__)
+ environ[0] = NULL;
#else
environ = 0;
#endif

View File

@ -0,0 +1,13 @@
--- sesman/Makefile.am.orig 2009-05-18 23:23:48.000000000 -0500
+++ sesman/Makefile.am 2010-10-02 16:07:53.000000000 -0500
@@ -55,4 +55,4 @@
sesmansysconf_DATA = \
- sesman.ini \
- startwm.sh
+ sesman.ini.sample \
+ startwm.sh.sample
@@ -66,2 +66,2 @@
install-data-hook:
- chmod 755 $(DESTDIR)$(sysconfdir)/xrdp/startwm.sh
+ chmod 755 $(DESTDIR)$(sysconfdir)/xrdp/startwm.sh.sample

View File

@ -0,0 +1,85 @@
--- sesman/session.c.orig 2011-03-12 16:10:35.000000000 +0900
+++ sesman/session.c 2011-10-27 12:13:11.000000000 +0900
@@ -16,7 +16,47 @@
xrdp: A Remote Desktop Protocol server.
Copyright (C) Jay Sorg 2005-2008
*/
-
+/*
+ * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
+ * All rights reserved
+ *
+ * As far as I am concerned, the code I have written for this software
+ * can be used freely for any purpose. Any derived versions of this
+ * software must be clearly marked as such, and if the derived work is
+ * incompatible with the protocol description in the RFC file, it must be
+ * called by a name other than "ssh" or "Secure Shell".
+ *
+ * SSH2 support by Markus Friedl.
+ * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Copyright (c) 2011 Iwao, Koichiro <meta@club.kyutech.ac.jp>,
+ * Kyushu Institute of Technology.
+ * All rights reserved.
+ *
+ * from: OpenBSD: session.c,v 1.252 2010/03/07 11:57:13 dtucker Exp
+ * with some ideas about process grouping from OpenSSH to xrdp
+ *
+ */
/**
*
* @file session.c
@@ -373,6 +413,33 @@
g_sprintf(geometry, "%dx%d", width, height);
g_sprintf(depth, "%d", bpp);
g_sprintf(screen, ":%d", display);
+#ifdef __FreeBSD__
+ /*
+ * Create a new session and process group since 4.4BSD
+ * setlogin affects the entire process group.
+ */
+ pid_t bsdsespid = g_fork();
+
+ if (bsdsespid == -1)
+ {
+ }
+ else if (bsdsespid == 0) /* BSD session leader */
+ {
+ if (setsid() < 0)
+ {
+ log_message(LOG_LEVEL_ERROR,
+ "setsid failed: %.100s", strerror(errno));
+ }
+
+ if (setlogin(username) < 0)
+ {
+ log_message(LOG_LEVEL_ERROR,
+ "setlogin failed: %.100s", strerror(errno));
+ }
+ }
+
+ g_waitpid(bsdsespid);
+#endif
wmpid = g_fork();
if (wmpid == -1)
{

View File

@ -0,0 +1,13 @@
--- xrdp/Makefile.am.orig 2009-05-18 23:23:48.000000000 -0500
+++ xrdp/Makefile.am 2010-10-02 16:05:10.000000000 -0500
@@ -36,4 +36,4 @@
xrdpsysconf_DATA = \
- xrdp.ini \
- rsakeys.ini
+ xrdp.ini.sample \
+ rsakeys.ini.sample
@@ -50,2 +50,2 @@
install-data-hook:
- chmod 600 $(DESTDIR)$(sysconfdir)/xrdp/rsakeys.ini
+ chmod 600 $(DESTDIR)$(sysconfdir)/xrdp/rsakeys.ini.sample

View File

@ -0,0 +1,14 @@
==============================================================================
XRDP has been installed.
There is an rc.d script, so the service can be enabled by adding this line
in /etc/rc.conf:
xrdp_enable="YES"
xrdp_sesman_enable="YES" # if you want to run xrdp-sesman on the same machine
Do not forget to edit the configuration files in "%%PREFIX%%/etc/xrdp"
and the "%%PREFIX%%/etc/xrdp/startwm.sh" script.
==============================================================================

View File

@ -0,0 +1,56 @@
#!/bin/sh
#
# $FreeBSD$
#
# REQUIRE: DAEMON
# PROVIDE: xrdp xrdp_sesman
#
. /etc/rc.subr
name="xrdp"
rcvar=xrdp_enable
xrdp_daemons="xrdp"
# Read settings and set default values.
load_rc_config "$name"
: ${xrdp_enable="NO"}
# Enable/disable dependent daemon.
if [ -n "${rcvar}" ] && checkyesno "xrdp_sesman_enable"; then
xrdp_daemons="xrdp xrdp_sesman"
fi
# Commands.
extra_commands="reload status"
start_cmd="xrdp_cmd"
stop_cmd="xrdp_cmd"
status_cmd="xrdp_cmd"
reload_cmd="xrdp_cmd"
rcvar_cmd="xrdp_cmd"
# Command wrapper to call each of them per daemon.
xrdp_cmd() {
local name rcvar command pidfile xrdp_daemons
# Prevent recursive calling.
unset "${rc_arg}_cmd"
# Stop processes in the reverse to order.
if [ "${rc_arg}" = "stop" ] ; then
xrdp_daemons=$(reverse_list ${xrdp_daemons})
fi
# Apply to all the daemons.
for name in ${xrdp_daemons}; do
rcvar=${name}_enable
if [ "${name}" = "xrdp_sesman" ]; then
command="%%PREFIX%%/sbin/xrdp-sesman"
pidfile="/var/run/xrdp-sesman.pid"
else
command="%%PREFIX%%/sbin/${name}"
pidfile="/var/run/${name}.pid"
fi
run_rc_command "${_rc_prefix}${rc_arg}" ${rc_extra_args}
done
}
run_rc_command "$1"

13
net/xrdp-devel/pkg-descr Normal file
View File

@ -0,0 +1,13 @@
Based on the work of rdesktop, xrdp uses the remote desktop protocol to
present a GUI to the user.
The goal of this project is to provide a fully functional Linux terminal
server, capable of accepting connections from rdesktop and Microsoft's own
terminal server / remote desktop clients.
Unlike Windows NT/2000/2003 server, xrdp will not display a Windows desktop
but an X window desktop to the user.
Xrdp uses Xvnc or X11rdp to manage the X session.
WWW: http://www.xrdp.org/

79
net/xrdp-devel/pkg-plist Normal file
View File

@ -0,0 +1,79 @@
@stopdaemon xrdp
bin/xrdp-dis
bin/xrdp-genkeymap
bin/xrdp-keygen
bin/xrdp-sesadmin
bin/xrdp-sesrun
bin/xrdp-sestest
bin/xrdp-xcon
lib/xrdp/libcommon.a
lib/xrdp/libcommon.la
lib/xrdp/libcommon.so
lib/xrdp/libcommon.so.0
lib/xrdp/libmc.a
lib/xrdp/libmc.la
lib/xrdp/libmc.so
lib/xrdp/libmc.so.0
lib/xrdp/librdp.a
lib/xrdp/librdp.la
lib/xrdp/librdp.so
lib/xrdp/librdp.so.0
lib/xrdp/libscp.a
lib/xrdp/libscp.la
lib/xrdp/libscp.so
lib/xrdp/libscp.so.0
lib/xrdp/libvnc.a
lib/xrdp/libvnc.la
lib/xrdp/libvnc.so
lib/xrdp/libvnc.so.0
lib/xrdp/libxrdp.a
lib/xrdp/libxrdp.la
lib/xrdp/libxrdp.so
lib/xrdp/libxrdp.so.0
lib/xrdp/libxrdpapi.la
lib/xrdp/libxrdpapi.so
lib/xrdp/libxrdpapi.so.0
lib/xrdp/libxrdpapi.a
lib/xrdp/libxup.a
lib/xrdp/libxup.la
lib/xrdp/libxup.so
lib/xrdp/libxup.so.0
etc/pam.d/xrdp-sesman
etc/xrdp/km-0407.ini
etc/xrdp/km-0409.ini
etc/xrdp/km-040c.ini
etc/xrdp/km-0410.ini
etc/xrdp/km-0419.ini
etc/xrdp/km-041d.ini
%%JP106%%etc/xrdp/km-0411.ini
%%JP106%%etc/xrdp/km-e0200411.ini
%%JP106%%etc/xrdp/km-e0010411.ini
%%JP106%%etc/xrdp/km-e0210411.ini
@unexec if cmp -s %D/etc/xrdp/rsakeys.ini.sample %D/etc/xrdp/rsakeys.ini; then rm -f %D/etc/xrdp/rsakeys.ini; fi
@unexec if cmp -s %D/etc/xrdp/sesman.ini.sample %D/etc/xrdp/sesman.ini; then rm -f %D/etc/xrdp/sesman.ini; fi
@unexec if cmp -s %D/etc/xrdp/startwm.sh.sample %D/etc/xrdp/startwm.sh; then rm -f %D/etc/xrdp/startwm.sh; fi
@unexec if cmp -s %D/etc/xrdp/xrdp.ini.sample %D/etc/xrdp/xrdp.ini; then rm -f %D/etc/xrdp/xrdp.ini; fi
etc/xrdp/rsakeys.ini.sample
etc/xrdp/sesman.ini.sample
etc/xrdp/startwm.sh.sample
etc/xrdp/xrdp.ini.sample
@comment backup pre-compile-time keypair and generate new one
@exec if [ -f %D/etc/xrdp/rsakeys.ini ]; then cp -a %D/etc/xrdp/rsakeys.ini %D/etc/xrdp/rsakeys.ini.bak`date +%%Y%%m%%d`; %D/bin/xrdp-keygen xrdp %D/etc/xrdp/rsakeys.ini; fi
@exec [ -f %D/etc/xrdp/sesman.ini ] || cp -p %D/etc/xrdp/sesman.ini.sample %D/etc/xrdp/sesman.ini
@exec [ -f %D/etc/xrdp/startwm.sh ] || cp -p %D/etc/xrdp/startwm.sh.sample %D/etc/xrdp/startwm.sh
@exec [ -f %D/etc/xrdp/xrdp.ini ] || cp -p %D/etc/xrdp/xrdp.ini.sample %D/etc/xrdp/xrdp.ini
etc/xrdp/xrdp.sh
sbin/xrdp
sbin/xrdp-chansrv
sbin/xrdp-sesman
sbin/xrdp-sessvc
share/xrdp/ad24b.bmp
share/xrdp/ad256.bmp
share/xrdp/cursor0.cur
share/xrdp/cursor1.cur
share/xrdp/sans-10.fv1
share/xrdp/xrdp24b.bmp
share/xrdp/xrdp256.bmp
@dirrm share/xrdp
@dirrmtry lib/xrdp
@dirrmtry etc/xrdp