From 397089a207f3d35bfa51fc769e243eab9c3a186a Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Mon, 28 Jan 2013 10:42:18 +0100 Subject: [PATCH 01/27] sesman: Fix dist Add missing header files to EXTRA_DIST. Otherwise "make distcheck" fails. --- common/Makefile.am | 20 ++++++++++++++++++-- sesman/chansrv/Makefile.am | 12 +++++++++++- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/common/Makefile.am b/common/Makefile.am index 33cfc1e5..3d7e8bd1 100644 --- a/common/Makefile.am +++ b/common/Makefile.am @@ -1,5 +1,21 @@ -EXTRA_DIST = d3des.h arch.h os_calls.h list.h file.h parse.h defines.h file_loc.h log.h os_calls.h ssl_calls.h thread_calls.h trans.h xrdp_constants.h - +EXTRA_DIST = \ + arch.h \ + d3des.h \ + defines.h \ + file.h \ + file_loc.h \ + list.h \ + log.h \ + os_calls.h \ + os_calls.h \ + parse.h \ + rail.h \ + ssl_calls.h \ + thread_calls.h \ + trans.h \ + xrdp_client_info.h \ + xrdp_constants.h \ + xrdp_rail.h AM_CFLAGS = \ -DXRDP_CFG_PATH=\"${sysconfdir}/xrdp\" \ diff --git a/sesman/chansrv/Makefile.am b/sesman/chansrv/Makefile.am index 4272eb0e..39d808c9 100644 --- a/sesman/chansrv/Makefile.am +++ b/sesman/chansrv/Makefile.am @@ -1,4 +1,14 @@ -EXTRA_DIST = chansrv.h clipboard.h devredir.h sound.h +EXTRA_DIST = \ + chansrv.h \ + chansrv_fuse.h \ + clipboard.h \ + clipboard_common.h \ + clipboard_file.h \ + devredir.h \ + drdynvc.h \ + rail.h \ + sound.h \ + xcommon.h EXTRA_DEFINES = EXTRA_INCLUDES = From 1a4ed6d3fd4e85c31b60d532637f54b6fb3bffe7 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 09:57:09 +0100 Subject: [PATCH 02/27] xrdp: Fix format string vulnerability The the string being printer contains a "%", this could crash xrdp. --- common/log.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/log.c b/common/log.c index e8e005f0..d8279600 100644 --- a/common/log.c +++ b/common/log.c @@ -617,7 +617,7 @@ log_message(const enum logLevels lvl, const char *msg, ...) if (lvl <= staticLogConfig->log_level) { /* log to console */ - g_printf(buff); + g_printf("%s", buff); /* log to application logfile */ #ifdef LOG_ENABLE_THREAD From ab60300e9a533e2bc947dea028ce92015fa2a791 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 17:35:04 +0100 Subject: [PATCH 03/27] xrdp: Ignore channels and logging sections Ignore two more sections in xrdp.ini when looking for default session. --- xrdp/xrdp_wm.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xrdp/xrdp_wm.c b/xrdp/xrdp_wm.c index 0a2600f2..e3fa1f80 100644 --- a/xrdp/xrdp_wm.c +++ b/xrdp/xrdp_wm.c @@ -549,7 +549,9 @@ xrdp_wm_init(struct xrdp_wm *self) { q = (char *)list_get_item(names, index); - if (g_strncasecmp("globals", q, 8) != 0) + if ((g_strncasecmp("globals", q, 8) != 0) + && (g_strncasecmp("channels", q, 9) != 0) + && (g_strncasecmp("Logging", q, 8) != 0)) { g_strncpy(section_name, q, 255); break; From 8f5005f43e48b972c9559ad1b86de1e00f5de433 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 14:47:33 +0100 Subject: [PATCH 04/27] sesman/tools: Disable debug tools sestest and xcon look like debugging tools. Don't install them by default. --- sesman/tools/Makefile.am | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sesman/tools/Makefile.am b/sesman/tools/Makefile.am index ab3612d0..140c6820 100644 --- a/sesman/tools/Makefile.am +++ b/sesman/tools/Makefile.am @@ -13,9 +13,11 @@ INCLUDES = \ bin_PROGRAMS = \ xrdp-sesrun \ - xrdp-sestest \ xrdp-sesadmin \ - xrdp-dis \ + xrdp-dis + +noinst_PROGRAMS = \ + xrdp-sestest \ xrdp-xcon xrdp_sesrun_SOURCES = \ From 73c8a9626ba2b2b8ff20246a336771783c133213 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:03:06 +0100 Subject: [PATCH 05/27] X11rdp: Remove duplicate entry for expat expat-2.0.1.tar.gz is declared twice, remove the first one. --- xorg/X11R7.6/buildx.sh | 6 ------ 1 file changed, 6 deletions(-) diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index 5a593f1a..6ba15a2f 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -47,12 +47,6 @@ download_file() return $status elif [ "$file" = "MesaLib-7.10.3.tar.bz2" ]; then wget -cq ftp://ftp.freedesktop.org/pub/mesa/7.10.3/$file - status=$? - cd .. - return $status - elif [ "$file" = "expat-2.0.1.tar.gz" ]; then - wget -cq http://server1.xrdp.org/xrdp/expat-2.0.1.tar.gz - status=$? cd .. return $status From 0bfb46ebb046d9c808492b86789382e5814849b4 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:05:44 +0100 Subject: [PATCH 06/27] X11rdp: Consistently use $file Consistently use $file instead of repeating the file name again when downloading external URLs. --- xorg/X11R7.6/buildx.sh | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index 6ba15a2f..57dfd6b0 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -51,62 +51,62 @@ download_file() cd .. return $status elif [ "$file" = "freetype-2.4.6.tar.bz2" ]; then - wget -cq http://download.savannah.gnu.org/releases/freetype/freetype-2.4.6.tar.bz2 + wget -cq http://download.savannah.gnu.org/releases/freetype/$file status=$? cd .. return $status elif [ "$file" = "xkeyboard-config-2.0.tar.bz2" ]; then - wget -cq http://www.x.org/releases/individual/data/xkeyboard-config/xkeyboard-config-2.0.tar.bz2 + wget -cq http://www.x.org/releases/individual/data/xkeyboard-config/$file status=$? cd .. return $status elif [ "$file" = "makedepend-1.0.3.tar.bz2" ]; then - wget -cq http://xorg.freedesktop.org/releases/individual/util/makedepend-1.0.3.tar.bz2 + wget -cq http://xorg.freedesktop.org/releases/individual/util/$file status=$? cd .. return $status elif [ "$file" = "libxml2-sources-2.7.8.tar.gz" ]; then - wget -cq ftp://ftp.xmlsoft.org/libxml2/libxml2-sources-2.7.8.tar.gz + wget -cq ftp://ftp.xmlsoft.org/libxml2/$file status=$? cd .. return $status elif [ "$file" = "Python-2.5.tar.bz2" ]; then - wget -cq http://www.python.org/ftp/python/2.5/Python-2.5.tar.bz2 + wget -cq http://www.python.org/ftp/python/2.5/$file status=$? cd .. return $status elif [ "$file" = "Python-2.7.tar.bz2" ]; then - wget -cq http://www.python.org/ftp/python/2.7/Python-2.7.tar.bz2 + wget -cq http://www.python.org/ftp/python/2.7/$file status=$? cd .. return $status elif [ "$file" = "expat-2.0.1.tar.gz" ]; then - wget -cq http://server1.xrdp.org/xrdp/expat-2.0.1.tar.gz + wget -cq http://server1.xrdp.org/xrdp/$file status=$? cd .. return $status elif [ "$file" = "cairo-1.8.8.tar.gz" ]; then - wget -cq http://server1.xrdp.org/xrdp/cairo-1.8.8.tar.gz + wget -cq http://server1.xrdp.org/xrdp/$file status=$? cd .. return $status elif [ "$file" = "libpng-1.2.46.tar.gz" ]; then - wget -cq http://server1.xrdp.org/xrdp/libpng-1.2.46.tar.gz + wget -cq http://server1.xrdp.org/xrdp/$file status=$? cd .. return $status elif [ "$file" = "intltool-0.41.1.tar.gz" ]; then - wget -cq http://launchpad.net/intltool/trunk/0.41.1/+download/intltool-0.41.1.tar.gz + wget -cq http://launchpad.net/intltool/trunk/0.41.1/+download/$file status=$? cd .. return $status elif [ "$file" = "libxslt-1.1.26.tar.gz" ]; then - wget -cq ftp://xmlsoft.org/libxslt/libxslt-1.1.26.tar.gz + wget -cq ftp://xmlsoft.org/libxslt/$file status=$? cd .. return $status elif [ "$file" = "fontconfig-2.8.0.tar.gz" ]; then - wget -cq http://server1.xrdp.org/xrdp/fontconfig-2.8.0.tar.gz + wget -cq http://server1.xrdp.org/xrdp/$file status=$? cd .. return $status From 3dd485512cb927ef585eaf35930bb422c64d2828 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:07:42 +0100 Subject: [PATCH 07/27] X11rdp: fix indention Re-indent four sections to use 4 spaces for indention --- xorg/X11R7.6/buildx.sh | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index 57dfd6b0..db9e1b98 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -28,9 +28,9 @@ download_file() file=$1 # if we already have the file, don't download it - if [ -r downloads/$file ]; then - return 0 - fi + if [ -r downloads/$file ]; then + return 0 + fi cd downloads @@ -183,7 +183,7 @@ extract_it() cd $mod_name # check for patches if [ -e ../../$mod_name.patch ]; then - patch -p1 < ../../$mod_name.patch + patch -p1 < ../../$mod_name.patch fi # now configure echo "executing ./configure --prefix=$PREFIX_DIR $mod_args" @@ -248,9 +248,9 @@ make_it() # special case after installing python make this sym link # so Mesa builds using this python version case "$mod_name" in - *Python-2*) - (cd build_dir/$mod_name ; ln -s python $PREFIX_DIR/bin/python2) - ;; + *Python-2*) + (cd build_dir/$mod_name ; ln -s python $PREFIX_DIR/bin/python2) + ;; esac touch cookies/$mod_name.installed @@ -379,10 +379,10 @@ strip X11rdp cp X11rdp $X11RDPBASE/bin if [ "$2" = "drop" ]; then - echo "" - echo "dropping you in dir, type exit to get out" - bash - exit 1 + echo "" + echo "dropping you in dir, type exit to get out" + bash + exit 1 fi echo "All done" From 536ac7f9e8e8a44a0ed90b82613cc5be5ac421d5 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:18:05 +0100 Subject: [PATCH 08/27] X11rdp: simplify download Use case-statement instead of many ifs. --- xorg/X11R7.6/buildx.sh | 123 ++++++++++++++--------------------------- 1 file changed, 40 insertions(+), 83 deletions(-) diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index db9e1b98..464dd874 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -25,6 +25,7 @@ download_file() { + local file url status file=$1 # if we already have the file, don't download it @@ -32,90 +33,46 @@ download_file() return 0 fi - cd downloads - echo "downloading file $file" - if [ "$file" = "pixman-0.15.20.tar.bz2" ]; then - wget -cq http://ftp.x.org/pub/individual/lib/$file - status=$? - cd .. - return $status - elif [ "$file" = "libdrm-2.4.26.tar.bz2" ]; then - wget -cq http://dri.freedesktop.org/libdrm/$file - status=$? - cd .. - return $status - elif [ "$file" = "MesaLib-7.10.3.tar.bz2" ]; then - wget -cq ftp://ftp.freedesktop.org/pub/mesa/7.10.3/$file - status=$? - cd .. - return $status - elif [ "$file" = "freetype-2.4.6.tar.bz2" ]; then - wget -cq http://download.savannah.gnu.org/releases/freetype/$file - status=$? - cd .. - return $status - elif [ "$file" = "xkeyboard-config-2.0.tar.bz2" ]; then - wget -cq http://www.x.org/releases/individual/data/xkeyboard-config/$file - status=$? - cd .. - return $status - elif [ "$file" = "makedepend-1.0.3.tar.bz2" ]; then - wget -cq http://xorg.freedesktop.org/releases/individual/util/$file - status=$? - cd .. - return $status - elif [ "$file" = "libxml2-sources-2.7.8.tar.gz" ]; then - wget -cq ftp://ftp.xmlsoft.org/libxml2/$file - status=$? - cd .. - return $status - elif [ "$file" = "Python-2.5.tar.bz2" ]; then - wget -cq http://www.python.org/ftp/python/2.5/$file - status=$? - cd .. - return $status - elif [ "$file" = "Python-2.7.tar.bz2" ]; then - wget -cq http://www.python.org/ftp/python/2.7/$file - status=$? - cd .. - return $status - elif [ "$file" = "expat-2.0.1.tar.gz" ]; then - wget -cq http://server1.xrdp.org/xrdp/$file - status=$? - cd .. - return $status - elif [ "$file" = "cairo-1.8.8.tar.gz" ]; then - wget -cq http://server1.xrdp.org/xrdp/$file - status=$? - cd .. - return $status - elif [ "$file" = "libpng-1.2.46.tar.gz" ]; then - wget -cq http://server1.xrdp.org/xrdp/$file - status=$? - cd .. - return $status - elif [ "$file" = "intltool-0.41.1.tar.gz" ]; then - wget -cq http://launchpad.net/intltool/trunk/0.41.1/+download/$file - status=$? - cd .. - return $status - elif [ "$file" = "libxslt-1.1.26.tar.gz" ]; then - wget -cq ftp://xmlsoft.org/libxslt/$file - status=$? - cd .. - return $status - elif [ "$file" = "fontconfig-2.8.0.tar.gz" ]; then - wget -cq http://server1.xrdp.org/xrdp/$file - status=$? - cd .. - return $status - else - wget -cq $download_url/$file - status=$? - cd .. - return $status - fi + case "$file" in + pixman-0.15.20.tar.bz2) + url=http://ftp.x.org/pub/individual/lib/$file ;; + libdrm-2.4.26.tar.bz2) + url=http://dri.freedesktop.org/libdrm/$file ;; + MesaLib-7.10.3.tar.bz2) + url=ftp://ftp.freedesktop.org/pub/mesa/7.10.3/$file ;; + freetype-2.4.6.tar.bz2) + url=http://download.savannah.gnu.org/releases/freetype/$file ;; + xkeyboard-config-2.0.tar.bz2) + url=http://www.x.org/releases/individual/data/xkeyboard-config/$file ;; + makedepend-1.0.3.tar.bz2) + url=http://xorg.freedesktop.org/releases/individual/util/$file ;; + libxml2-sources-2.7.8.tar.gz) + url=ftp://ftp.xmlsoft.org/libxml2/$file ;; + Python-2.5.tar.bz2) + url=http://www.python.org/ftp/python/2.5/$file ;; + Python-2.7.tar.bz2) + url=http://www.python.org/ftp/python/2.7/$file ;; + expat-2.0.1.tar.gz) + url=http://server1.xrdp.org/xrdp/$file ;; + cairo-1.8.8.tar.gz) + url=http://server1.xrdp.org/xrdp/$file ;; + libpng-1.2.46.tar.gz) + url=http://server1.xrdp.org/xrdp/$file ;; + intltool-0.41.1.tar.gz) + url=http://launchpad.net/intltool/trunk/0.41.1/+download/$file ;; + libxslt-1.1.26.tar.gz) + url=ftp://xmlsoft.org/libxslt/$file ;; + fontconfig-2.8.0.tar.gz) + url=http://server1.xrdp.org/xrdp/$file ;; + *) + url=$download_url/$file ;; + esac + cd downloads + wget -cq "url" + status=$? + cd .. + return $status } remove_modules() From eb3253fafcf157d281e70e0b7c6e4e67ff55507e Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:19:56 +0100 Subject: [PATCH 09/27] X11rdp: simplify line splitting Use "IFS=: read" instead of "echo|cut" constructs. --- xorg/X11R7.6/buildx.sh | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index 464dd874..fe2f9ef6 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -90,9 +90,8 @@ remove_modules() cd build_dir - while read line + while IFS=: read mod_file mod_dir mod_args do - mod_dir=`echo $line | cut -d':' -f2` if [ -d $mod_dir ]; then rm -rf $mod_dir fi @@ -308,15 +307,11 @@ if [ ! -d cookies ]; then fi fi -while read line +while IFS=: read mod_file mod_dir mod_args do - mod_file=`echo $line | cut -d':' -f1` - mod_dir=`echo $line | cut -d':' -f2` - mod_args=`echo $line | cut -d':' -f3` mod_args=`eval echo $mod_args` make_it $mod_file $mod_dir "$mod_args" - done < $data_file echo "build for X OK" From a29c011e02ba2beffa9c09d57c51aa85918dbb8a Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:24:42 +0100 Subject: [PATCH 10/27] X11rdp: Simplify if constructs Directly use exit value instead of evaluating $? --- xorg/X11R7.6/buildx.sh | 48 +++++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index fe2f9ef6..3bf17b42 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -111,8 +111,8 @@ extract_it() fi # download file - download_file $mod_file - if [ $? -ne 0 ]; then + if ! download_file $mod_file + then echo "" echo "failed to download $mod_file - aborting build" echo "" @@ -123,8 +123,8 @@ extract_it() # if pkg has not yet been extracted, do so now if [ ! -d $mod_name ]; then - echo $mod_file | grep -q tar.bz2 - if [ $? -eq 0 ]; then + if echo $mod_file | grep -q tar.bz2 + then tar xjf ../downloads/$mod_file > /dev/null 2>&1 else tar xzf ../downloads/$mod_file > /dev/null 2>&1 @@ -143,8 +143,8 @@ extract_it() fi # now configure echo "executing ./configure --prefix=$PREFIX_DIR $mod_args" - ./configure --prefix=$PREFIX_DIR $mod_args - if [ $? -ne 0 ]; then + if ! ./configure --prefix=$PREFIX_DIR $mod_args + then echo "configuration failed for module $mn" exit 1 fi @@ -172,8 +172,8 @@ make_it() echo "*** processing module $mod_name ($count of $num_modules) ***" echo "" - extract_it $mod_file $mod_name "$mod_args" - if [ $? -ne 0 ]; then + if ! extract_it $mod_file $mod_name "$mod_args" + then echo "" echo "extract failed for module $mod_name" echo "" @@ -182,8 +182,8 @@ make_it() # make module if [ ! -e cookies/$mod_name.made ]; then - (cd build_dir/$mod_name ; make) - if [ $? -ne 0 ]; then + if ! (cd build_dir/$mod_name ; make) + then echo "" echo "make failed for module $mod_name" echo "" @@ -193,8 +193,8 @@ make_it() fi # install module - (cd build_dir/$mod_name ; make install) - if [ $? -ne 0 ]; then + if ! (cd build_dir/$mod_name ; make install) + then echo "" echo "make install failed for module $mod_name" echo "" @@ -251,8 +251,8 @@ fi if ! test -d $PREFIX_DIR; then echo "dir does not exit, creating [$PREFIX_DIR]" - mkdir $PREFIX_DIR - if ! test $? -eq 0; then + if ! mkdir $PREFIX_DIR + then echo "mkdir failed [$PREFIX_DIR]" exit 0 fi @@ -267,8 +267,8 @@ export CFLAGS="-I$PREFIX_DIR/include -fPIC -O2" # prefix dir must exist... if [ ! -d $PREFIX_DIR ]; then - mkdir -p $PREFIX_DIR - if [ $? -ne 0 ]; then + if ! mkdir -p $PREFIX_DIR + then echo "$PREFIX_DIR does not exist; failed to create it - cannot continue" exit 1 fi @@ -282,8 +282,8 @@ fi # create a downloads dir if [ ! -d downloads ]; then - mkdir downloads - if [ $? -ne 0 ]; then + if ! mkdir downloads + then echo "error creating downloads directory" exit 1 fi @@ -291,8 +291,8 @@ fi # this is where we do the actual build if [ ! -d build_dir ]; then - mkdir build_dir - if [ $? -ne 0 ]; then + if ! mkdir build_dir + then echo "error creating build_dir directory" exit 1 fi @@ -300,8 +300,8 @@ fi # this is where we store cookie files if [ ! -d cookies ]; then - mkdir cookies - if [ $? -ne 0 ]; then + if ! mkdir cookies + then echo "error creating cookies directory" exit 1 fi @@ -320,8 +320,8 @@ X11RDPBASE=$PREFIX_DIR export X11RDPBASE cd rdp -make -if [ $? -ne 0 ]; then +if ! make +then echo "error building rdp" exit 1 fi From 29b7081dcf469e68c88dfe4a05d22e9f0fadac71 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:32:28 +0100 Subject: [PATCH 11/27] X11rdp: Handle more compression formats Add .xz and plain .tar files. --- xorg/X11R7.6/buildx.sh | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index 3bf17b42..f3b231e3 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -123,13 +123,15 @@ extract_it() # if pkg has not yet been extracted, do so now if [ ! -d $mod_name ]; then - if echo $mod_file | grep -q tar.bz2 + case "$mod_file" in + *.tar.bz2) comp=j ;; + *.tar.gz) comp=z ;; + *.tar.xz) comp=J ;; + *.tar) comp= ;; + *) echo "unknown compressed module $mod_name" ; exit 1 ;; + esac + if ! tar x${comp}f ../downloads/$mod_file > /dev/null then - tar xjf ../downloads/$mod_file > /dev/null 2>&1 - else - tar xzf ../downloads/$mod_file > /dev/null 2>&1 - fi - if [ $? -ne 0 ]; then echo "error extracting module $mod_name" exit 1 fi From f2b7aafb4e1550d50135196c64523dcbdaf97b07 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:36:26 +0100 Subject: [PATCH 12/27] X11rdp: fix spelling mistakes exit -> exist $mn -> $mod_name folowed -> followed blocket -> blocked --- docs/man/xrdp.ini.5 | 2 +- xorg/X11R7.6/buildx.sh | 4 ++-- xrdp/xrdp.ini | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/man/xrdp.ini.5 b/docs/man/xrdp.ini.5 index f46b5609..8f3ecb80 100644 --- a/docs/man/xrdp.ini.5 +++ b/docs/man/xrdp.ini.5 @@ -6,7 +6,7 @@ .SH "DESCRIPTION" .LP This is the man page for \fBxrdp.ini\fR, \fBxrdp\fR(8) configuration file. -It is composed by a number of sections, each one composed by a section name, enclosed by square brackets, folowed by a list of \fI\fR=\fI\fR lines. +It is composed by a number of sections, each one composed by a section name, enclosed by square brackets, followed by a list of \fI\fR=\fI\fR lines. \fBxrdp.ini\fR is contains a \fB[Globals]\fR section, which sets some global configuration settings for \fBxrdp\fR(8), and one or more "connection" sections which contain the info on which services \fBxrdp\fR(8) can connect to. diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index f3b231e3..8ef2458d 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -147,7 +147,7 @@ extract_it() echo "executing ./configure --prefix=$PREFIX_DIR $mod_args" if ! ./configure --prefix=$PREFIX_DIR $mod_args then - echo "configuration failed for module $mn" + echo "configuration failed for module $mod_name" exit 1 fi @@ -252,7 +252,7 @@ else fi if ! test -d $PREFIX_DIR; then - echo "dir does not exit, creating [$PREFIX_DIR]" + echo "dir does not exist, creating [$PREFIX_DIR]" if ! mkdir $PREFIX_DIR then echo "mkdir failed [$PREFIX_DIR]" diff --git a/xrdp/xrdp.ini b/xrdp/xrdp.ini index f500f63f..b0127d01 100644 --- a/xrdp/xrdp.ini +++ b/xrdp/xrdp.ini @@ -34,7 +34,7 @@ SyslogLevel=DEBUG # LogLevel and SysLogLevel could by any of: core, error, warning, info or debug [channels] -# Channel names not listed here will be blocket by XRDP. +# Channel names not listed here will be blocked by XRDP. # You can block any channel by setting its value to false. # IMPORTANT! All channels are not supported in all use # cases even if you set all values to true. From 4163fd8d38312520a5466bd74473058cd5b7223b Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:40:20 +0100 Subject: [PATCH 13/27] X11rdp: make variables function local Use local to declare variables local --- xorg/X11R7.6/buildx.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index 8ef2458d..95623257 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -77,6 +77,7 @@ download_file() remove_modules() { + local mod_file mod_dir mod_args if [ -d cookies ]; then rm cookies/* fi @@ -102,6 +103,7 @@ remove_modules() extract_it() { + local mod_file mod_name mod_args comp mod_file=$1 mod_name=$2 mod_args=$3 @@ -158,6 +160,7 @@ extract_it() make_it() { + local mod_file mod_name mod_args mod_file=$1 mod_name=$2 mod_args=$3 From 7a0db8a152ef3216d594303bfc10b5082f272b61 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 10:47:06 +0100 Subject: [PATCH 14/27] X11rdp: Rework changing directories Remove unchecked changes of directories. --- xorg/X11R7.6/buildx.sh | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/xorg/X11R7.6/buildx.sh b/xorg/X11R7.6/buildx.sh index 95623257..a3ac4fc5 100755 --- a/xorg/X11R7.6/buildx.sh +++ b/xorg/X11R7.6/buildx.sh @@ -68,11 +68,7 @@ download_file() *) url=$download_url/$file ;; esac - cd downloads - wget -cq "url" - status=$? - cd .. - return $status + wget -cqP downloads "url" } remove_modules() @@ -89,16 +85,12 @@ remove_modules() exit 0 fi - cd build_dir - while IFS=: read mod_file mod_dir mod_args do - if [ -d $mod_dir ]; then - rm -rf $mod_dir + if [ -d build_dir/$mod_dir ]; then + rm -rf build_dir/$mod_dir fi done < ../$data_file - - cd .. } extract_it() @@ -187,7 +179,7 @@ make_it() # make module if [ ! -e cookies/$mod_name.made ]; then - if ! (cd build_dir/$mod_name ; make) + if ! make -C build_dir/$mod_name then echo "" echo "make failed for module $mod_name" @@ -198,7 +190,7 @@ make_it() fi # install module - if ! (cd build_dir/$mod_name ; make install) + if ! make -C build_dir/$mod_name install then echo "" echo "make install failed for module $mod_name" @@ -210,7 +202,7 @@ make_it() # so Mesa builds using this python version case "$mod_name" in *Python-2*) - (cd build_dir/$mod_name ; ln -s python $PREFIX_DIR/bin/python2) + ln -s python build_dir/$mod_name/$PREFIX_DIR/bin/python2 ;; esac @@ -324,8 +316,7 @@ echo "build for X OK" X11RDPBASE=$PREFIX_DIR export X11RDPBASE -cd rdp -if ! make +if ! make -C rdp then echo "error building rdp" exit 1 From bd49e89030021a3c05ec9de189da12c088ad21fb Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 14:03:49 +0100 Subject: [PATCH 15/27] doc: LDAP Give hint to use PAM for LDAP. --- faq-general.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/faq-general.txt b/faq-general.txt index e1905cb9..e63804cb 100644 --- a/faq-general.txt +++ b/faq-general.txt @@ -5,12 +5,18 @@ Q. What is RDP? A. RDP stands for Remote Desktop Protocol. Its the protocol used by Windows terminal servers to talk to the terminal server clients. + Q. What is xrdp? A. xrdp, usually spell lower case, is as open source implementation of the RDP protocol. + Q. I can't get it to compile in Ubuntu. What can I do? A. See faq-compile.txt. + +Q. Can I use LDAP? + +A. Yes, xrdp uses PAM and thus can be configured to use LDAP for authentication. From 2de038d2b135a300c8255ac373245764b664e978 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 15:14:40 +0100 Subject: [PATCH 16/27] doc: Use man_MANS in Makefile.am automake does know where to install manual pages, so use man_MANS instead of hand crafting custom rules. --- docs/man/Makefile.am | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/docs/man/Makefile.am b/docs/man/Makefile.am index 2689407b..3d816918 100644 --- a/docs/man/Makefile.am +++ b/docs/man/Makefile.am @@ -1,14 +1,8 @@ -EXTRA_DIST = sesman.ini.5 xrdp.ini.5 xrdp.8 xrdp-sesman.8 xrdp-sesrun.8 - -xrdpman5dir=$(mandir)/man5 - -xrdpman5_DATA = \ +man_MANS = \ sesman.ini.5 \ - xrdp.ini.5 - -xrdpman8dir=$(mandir)/man8 - -xrdpman8_DATA = \ + xrdp.ini.5 \ xrdp.8 \ xrdp-sesman.8 \ xrdp-sesrun.8 + +EXTRA_DIST = $(man_MANS) From 3b1897470c341cf5ee7894cfca4aec0f77546042 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 09:58:59 +0100 Subject: [PATCH 17/27] doc: Format manual page references Use .BR to fromat name(section) as recommended by man(7). Use .I for variable arguments. --- docs/man/sesman.ini.5 | 7 +++++-- docs/man/xrdp-sesman.8 | 9 +++++++-- docs/man/xrdp-sesrun.8 | 21 +++++++++++++-------- docs/man/xrdp.8 | 5 ++++- docs/man/xrdp.ini.5 | 5 ++++- 5 files changed, 33 insertions(+), 14 deletions(-) diff --git a/docs/man/sesman.ini.5 b/docs/man/sesman.ini.5 index ebefd120..f5d70146 100644 --- a/docs/man/sesman.ini.5 +++ b/docs/man/sesman.ini.5 @@ -105,7 +105,7 @@ The following parameters can be used in the \fB[Sessions]\fR section: .TP \fBX11DisplayOffset\fR=\fI\fR -Specifies the first X display number available for sesman(8). This prevents sesman from interfering with real X11 servers. The default is 10. +Specifies the first X display number available for \fBsesman\fP(8). This prevents sesman from interfering with real X11 servers. The default is 10. .br .TP @@ -219,6 +219,9 @@ TerminalServerAdmins=tsadmins ${SESMAN_CFG_DIR}/sesman.ini .SH "SEE ALSO" .LP -sesman(8) sesrun(8) xrdp(8) xrdp.ini(5) +.BR sesman (8), +.BR sesrun (8), +.BR xrdp (8), +.BR xrdp.ini (5) for more info on \fBxrdp\fR see http://xrdp.sf.net diff --git a/docs/man/xrdp-sesman.8 b/docs/man/xrdp-sesman.8 index a224c639..fd24be0a 100644 --- a/docs/man/xrdp-sesman.8 +++ b/docs/man/xrdp-sesman.8 @@ -4,7 +4,9 @@ \fBsesman\fR \- \fBxrdp\fR(8) session manager .SH "SYNTAX" .LP -sesman [ \-\-nodaemon | \-\-kill | \-\-help ] +.B sesman +.RB [ \-\-nodaemon | \-\-kill | \-\-help ] + .SH "DESCRIPTION" .LP \fBsesman\fR is \fBxrdp\fR(8) session manager. @@ -39,6 +41,9 @@ Jay Sorg Simone Fedele .SH "SEE ALSO" .LP -sesman.ini(5) sesrun(8) xrdp(8) xrdp.ini(5) +.BR sesman.ini (5), +.BR sesrun (8), +.BR xrdp (8), +.BR xrdp.ini (5) for more info on \fBxrdp\fR see http://xrdp.sf.net diff --git a/docs/man/xrdp-sesrun.8 b/docs/man/xrdp-sesrun.8 index 5a1b2bdf..157345b3 100644 --- a/docs/man/xrdp-sesrun.8 +++ b/docs/man/xrdp-sesrun.8 @@ -4,7 +4,9 @@ \fBsesrun\fR \- \fBsesman\fR(8) session launcher .SH "SYNTAX" .LP -sesrun +.B sesrun +.I server username password width height bpp + .SH "DESCRIPTION" .LP \fBsesrun\fR starts a session using \fBsesman\fR(8). @@ -13,22 +15,22 @@ This is a tool useful for testing, it simply behaves like xrdp when some user lo .SH "OPTIONS" .LP .TP - +.I server Server on which sesman is running .TP - +.I username user name of the session being started .TP - +.I password user password .TP - +.I width Screen width .TP - +.I height Screen height .TP - +.I bpp Session color depth .SH "FILES" .LP @@ -42,6 +44,9 @@ Jay Sorg Simone Fedele .SH "SEE ALSO" .LP -sesman(8) sesman.ini(5) xrdp(8) xrdp.ini(5) +.BR sesman (8), +.BR sesman.ini (5), +.BR xrdp (8), +.BR xrdp.ini (5) for more info on \fBxrdp\fR see http://xrdp.sf.net diff --git a/docs/man/xrdp.8 b/docs/man/xrdp.8 index b8e0d7fd..dbe2e2d9 100644 --- a/docs/man/xrdp.8 +++ b/docs/man/xrdp.8 @@ -39,6 +39,9 @@ Jay Sorg Simone Fedele .SH "SEE ALSO" .LP -xrdp.ini(5) sesman(8) sesman.ini(5) sesrun(8) +.BR xrdp.ini (5), +.BR sesman (8), +.BR sesman.ini (5), +.BR sesrun (8) for more info on \fBxrdp\fR see http://xrdp.sf.net diff --git a/docs/man/xrdp.ini.5 b/docs/man/xrdp.ini.5 index 8f3ecb80..80a916e7 100644 --- a/docs/man/xrdp.ini.5 +++ b/docs/man/xrdp.ini.5 @@ -94,6 +94,9 @@ port=\-1 ${XRDP_CFG_DIR}/xrdp.ini .SH "SEE ALSO" .LP -xrdp(8) sesman(8) sesrun(8) sesman.ini(5) +.BR xrdp (8), +.BR sesman (8), +.BR sesrun (8), +.BR sesman.ini (5) for more info on \fBxrdp\fR see http://xrdp.sf.net From e67878cedd205231f5b5345211afcf0ba5b2a89f Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 12:51:57 +0100 Subject: [PATCH 18/27] doc: Man page cleanup Simlify example sections. Remove un-needed .LP after section start. Insert empty line before section start. --- docs/man/sesman.ini.5 | 64 +++++++----------------------------------- docs/man/xrdp-sesman.8 | 12 ++++---- docs/man/xrdp-sesrun.8 | 12 ++++---- docs/man/xrdp.8 | 13 ++++----- docs/man/xrdp.ini.5 | 38 ++++++------------------- 5 files changed, 34 insertions(+), 105 deletions(-) diff --git a/docs/man/sesman.ini.5 b/docs/man/sesman.ini.5 index f5d70146..2bf69297 100644 --- a/docs/man/sesman.ini.5 +++ b/docs/man/sesman.ini.5 @@ -1,10 +1,9 @@ .\" .TH "sesman.ini" "5" "0.1.0" "xrdp team" "" .SH "NAME" -.LP \fBsesman.ini\fR \- Configuration file for \fBsesman\fR(8) + .SH "DESCRIPTION" -.LP This is the man page for \fBsesman.ini\fR, \fBsesman\fR(8) configuration file. It is composed by a number of sections, each one composed by a section name, enclosed by square brackets, folowed by a list of \fI\fR=\fI\fR lines. @@ -29,49 +28,38 @@ All options and values (except for file names and paths) are case insensitive, a For any of the following parameter, if it's specified more than one time the last entry encountered will be used. \fBNOTE\fR: if any of these options is specified outside its section, it will be \fIignored\fR. -.SH "GLOBALS" -.LP -.TP +.SH "GLOBALS" The options to be specified in the \fB[globals]\fR section are the following: -.br .TP \fBListenAddress\fR=\fIip address\fR Specifies sesman listening address. Default is 0.0.0.0 (all interfaces) -.br .TP \fBListenPort\fR=\fIport number\fR Specifies sesman listening port. Default is 3350 -.br .TP \fBEnableUserWindowManager\fR=\fI[0|1]\fR If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables user specific window manager, that is, anyone can define it's own script executed by sesman when starting a new session, specified by \fBUserWindowManager\fR -.br .TP \fBUserWindowManager\fR=\fIstartwm.sh\fR This option specifies the script run by sesman when starting a session and per\-user window manager is enabled. .br The path is relative to user's HOME directory -.br .TP \fBDefaultWindowManager\fR=\fI${SESMAN_BIN_DIR}/startwm.sh\fR This contains full path to the default window manager startup script used by sesman to start a session -.SH "LOGGING" -.LP -.TP +.SH "LOGGING" The following parameters can be used in the \fB[logging]\fR section: -.br .TP \fBLogFile\fR=\fI${SESMAN_LOG_DIR}/sesman.log\fR This options contains the path to logfile. It can be either absolute or relative, and the default is \fI${SESMAN_LOG_DIR}/sesman.log\fR -.br .TP \fBLogLevel\fR=\fIlevel\fR @@ -86,41 +74,33 @@ This option can have one of the following values: \fBINFO\fR or \fB3\fR \- Logs errors, warnings and informational messages \fBDEBUG\fR or \fB4\fR \- Log everything. If \fBsesman\fR is compiled in debug mode, this options will output many more low\-level message, useful for developers -.br .TP \fBEnableSyslog\fR=\fI[0|1]\fR If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables logging to syslog. Otherwise syslog is disabled. -.br .TP \fBSyslogLevel\fR=\fIlevel\fR This option sets the logging level for syslog. It can have the same values of \fBLogLevel\fR. If \fBSyslogLevel\fR is greater than \fBLogLevel\fR, its value is lowered to that of \fBLogLevel\fR. -.SH "SESSIONS" -.LP -.TP +.SH "SESSIONS" The following parameters can be used in the \fB[Sessions]\fR section: -.br .TP \fBX11DisplayOffset\fR=\fI\fR Specifies the first X display number available for \fBsesman\fP(8). This prevents sesman from interfering with real X11 servers. The default is 10. -.br .TP \fBMaxSessions\fR=\fI\fR Sets the maximum number of simultaneous session on terminal server. .br If unset or set to \fI0\fR, unlimited session are allowed. -.br .TP \fBKillDisconnected\fR=\fI[0|1]\fR If set to \fB1\fR, \fBtrue\fR or \fByes\fR, every session will be killed when the user disconnects. .br \fI\-this option is currently ignored!\-\fR -.br .TP \fBIdleTimeLimit\fR=\fI\fR @@ -129,7 +109,6 @@ Sets the the time limit before an idle session is disconnected. If set to \fI0\fR, automatic disconnection is disabled. .br \fI\-this option is currently ignored!\-\fR -.br .TP \fBDisconnectedTimeLimit\fR=\fI\fR @@ -138,87 +117,64 @@ Sets the the time limit before a disconnected session is killed. If set to \fI0\fR, automatic killing is disabled. .br \fI\-this option is currently ignored!\-\fR -.br -.SH "SECURITY" -.LP -.TP +.SH "SECURITY" The following parameters can be used in the \fB[Sessions]\fR section: -.br .TP \fBAllowRootLogin\fR=\fI[0|1]\fR If set to \fB1\fR, \fBtrue\fR or \fByes\fR enables root login on the terminal server -.br .TP \fBMaxLoginRetry\fR=\fI[0|1]\fR The number of login attempts that are allowed on terminal server. If set to \fI0\fR, unlimited attempts are allowed. The default value for this field is \fI3\fR. -.br .TP \fBTerminalServerUsers\fR=\fItsusers\fR Only the users belonging to the group \fItsusers\fR are allowed to login on terminal server. .br If unset or set to an invalid or non\-existent group, login for all users is enabled. -.br .TP \fBTerminalServerAdmins\fR=\fItsadmins\fR Sets the group which a user shall belong to have session management rights. .br \fI\-this option is currently ignored!\-\fR -.br + .SH "EXAMPLES" -.LP This is an example \fBsesman.ini\fR: +.nf [Globals] -.br ListenAddress=127.0.0.1 -.br ListenPort=3350 -.br EnableUserWindowManager=1 -.br UserWindowManager=startwm.sh -.br DefaultWindowManager=startwm.sh [Logging] -.br LogFile=/usr/local/xrdp/sesman.log -.br LogLevel=DEBUG -.br EnableSyslog=0 -.br SyslogLevel=DEBUG [Sessions] -.br MaxSessions=10 -.br KillDisconnected=0 -.br IdleTimeLimit=0 -.br DisconnectedTimeLimit=0 [Security] -.br AllowRootLogin=1 -.br MaxLoginRetry=3 -.br TerminalServerUsers=tsusers -.br TerminalServerAdmins=tsadmins +.fi + .SH "FILES" -.LP ${SESMAN_CFG_DIR}/sesman.ini + .SH "SEE ALSO" -.LP .BR sesman (8), .BR sesrun (8), .BR xrdp (8), diff --git a/docs/man/xrdp-sesman.8 b/docs/man/xrdp-sesman.8 index fd24be0a..07e23d7b 100644 --- a/docs/man/xrdp-sesman.8 +++ b/docs/man/xrdp-sesman.8 @@ -1,19 +1,17 @@ .TH "sesman" "8" "0.1.0" "xrdp team" "" .SH "NAME" -.LP \fBsesman\fR \- \fBxrdp\fR(8) session manager + .SH "SYNTAX" -.LP .B sesman .RB [ \-\-nodaemon | \-\-kill | \-\-help ] .SH "DESCRIPTION" -.LP \fBsesman\fR is \fBxrdp\fR(8) session manager. .br It manages user sessions by authenticating the user and starting the appropriate Xserver + .SH "OPTIONS" -.LP .TP \fB\-n\fR, \fB\-\-nodaemon\fR Starts \fBsesman\fR in foreground instead of starting it as a daemon. @@ -23,8 +21,8 @@ Kills running \fBsesman\fR daemon. .TP \fB\-h\fR, \fB\-\-help\fR Output help information and exit. + .SH "FILES" -.LP ${SESMAN_BIN_DIR}/sesman .br ${SESMAN_BIN_DIR}/sesrun @@ -34,13 +32,13 @@ ${SESMAN_CFG_DIR}/sesman.ini ${SESMAN_LOG_DIR}/sesman.log .br ${SESMAN_PID_DIR}/sesman.pid + .SH "AUTHORS" -.LP Jay Sorg .br Simone Fedele + .SH "SEE ALSO" -.LP .BR sesman.ini (5), .BR sesrun (8), .BR xrdp (8), diff --git a/docs/man/xrdp-sesrun.8 b/docs/man/xrdp-sesrun.8 index 157345b3..2b8a23a0 100644 --- a/docs/man/xrdp-sesrun.8 +++ b/docs/man/xrdp-sesrun.8 @@ -1,19 +1,17 @@ .TH "sesrun" "8" "0.1.0" "xrdp team" "" .SH "NAME" -.LP \fBsesrun\fR \- \fBsesman\fR(8) session launcher + .SH "SYNTAX" -.LP .B sesrun .I server username password width height bpp .SH "DESCRIPTION" -.LP \fBsesrun\fR starts a session using \fBsesman\fR(8). .br This is a tool useful for testing, it simply behaves like xrdp when some user logs in a new session and authenticates, thus starting a new session. + .SH "OPTIONS" -.LP .TP .I server Server on which sesman is running @@ -32,18 +30,18 @@ Screen height .TP .I bpp Session color depth + .SH "FILES" -.LP ${SESMAN_BIN_DIR}/sesman .br ${SESMAN_BIN_DIR}/sesrun + .SH "AUTHORS" -.LP Jay Sorg .br Simone Fedele + .SH "SEE ALSO" -.LP .BR sesman (8), .BR sesman.ini (5), .BR xrdp (8), diff --git a/docs/man/xrdp.8 b/docs/man/xrdp.8 index dbe2e2d9..6db90076 100644 --- a/docs/man/xrdp.8 +++ b/docs/man/xrdp.8 @@ -1,19 +1,18 @@ .TH "xrdp" "8" "0.1.0" "xrdp team" "" .SH "NAME" -.LP \fBxrdp\fR \- a Remote Desktop Protocol (RDP) server + .SH "SYNTAX" -.LP xrdp [ \-\-nodaemon | \-\-kill | \-\-help ] + .SH "DESCRIPTION" -.LP \fBxrdp\fR is a Remote Desktop Protocol (RDP) Server. .br Unlike Windows NT/2000/2003 server, \fBxrdp\fR will not display a Windows desktop but an X window desktop to the user. It can also be used as a VNC\->RDP bridge. + .SH "OPTIONS" -.LP .TP \fB\-n\fR, \fB\-\-nodaemon\fR Starts \fBxrdp\fR in foreground instead of starting it as a daemon. @@ -23,8 +22,8 @@ Kills running \fBxrdp\fR daemon. .TP \fB\-h\fR, \fB\-\-help\fR Output help information and exit. + .SH "FILES" -.LP ${XRDP_BIN_DIR}/xrdp .br ${XRDP_CFG_DIR}/xrdp.ini @@ -32,13 +31,13 @@ ${XRDP_CFG_DIR}/xrdp.ini ${XRDP_LOG_DIR}/xrdp.log .br ${XRDP_PID_DIR}/xrdp.pid + .SH "AUTHORS" -.LP Jay Sorg .br Simone Fedele + .SH "SEE ALSO" -.LP .BR xrdp.ini (5), .BR sesman (8), .BR sesman.ini (5), diff --git a/docs/man/xrdp.ini.5 b/docs/man/xrdp.ini.5 index 80a916e7..4b01f66e 100644 --- a/docs/man/xrdp.ini.5 +++ b/docs/man/xrdp.ini.5 @@ -1,10 +1,8 @@ -.\" .TH "xrdp.ini" "5" "0.1.0" "xrdp team" "" .SH "NAME" -.LP \fBxrdp.ini\fR \- Configuration file for \fBxrdp\fR(8) + .SH "DESCRIPTION" -.LP This is the man page for \fBxrdp.ini\fR, \fBxrdp\fR(8) configuration file. It is composed by a number of sections, each one composed by a section name, enclosed by square brackets, followed by a list of \fI\fR=\fI\fR lines. @@ -12,88 +10,68 @@ It is composed by a number of sections, each one composed by a section name, enc .LP All options and values (except for file names and paths) are case insensitive, and are described in detail below. -.SH "GLOBALS" -.LP -.TP +.SH "GLOBALS" The options to be specified in the \fB[Globals]\fR section are the following: -.br .TP \fBbitmap_cache\fR=\fI[0|1]\fR If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables bitmap caching in \fBxrdp\fR(8) -.br .TP \fBbitmap_compression\fR=\fI[0|1]\fR If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables bitmap compression in \fBxrdp\fR(8) -.SH "CONNECTIONS" -.LP - -.TP +.SH "CONNECTIONS" A connection section is made of a section name, enclosed in square brackets, and the following entries: -.br .TP \fBname\fR=\fI\fR The name displayed in \fBxrdp\fR(8) login window's combo box. -.br .TP \fBlib\fR=\fI../vnc/libvnc.so\fR Sets the library to be used with this connection. -.br .TP \fBusername\fR=\fI\fR|\fIask\fR Specifies the username used for authenticating in the connection. If set to \fIask\fR, user name should be provided in the login window. -.br .TP \fBpassword\fR=\fI\fR|\fIask\fR Specifies the password used for authenticating in the connection. If set to \fIask\fR, password should be provided in the login window. -.br .TP \fBip\fR=\fI127.0.0.1\fR Specifies the ip address of the host to connect to. -.br .TP \fBport\fR=\fI\fR|\fI\-1\fR Specifies the port number to connect to. If set to \fI\-1\fR, the default port for the specified library is used. + .SH "EXAMPLES" -.LP This is an example \fBxrdp.ini\fR: +.nf [Globals] -.br bitmap_cache=yes -.br bitmap_compression=yes - [vnc1] -.br name=sesman -.br lib=../vnc/libvnc.so -.br username=ask -.br password=ask -.br ip=127.0.0.1 -.br port=\-1 +.fi + .SH "FILES" -.LP ${XRDP_CFG_DIR}/xrdp.ini + .SH "SEE ALSO" -.LP .BR xrdp (8), .BR sesman (8), .BR sesrun (8), From dfc010f8cce4b1f171500397ce4cdd845b8adda4 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 13:15:15 +0100 Subject: [PATCH 19/27] doc: Follow xrdp- rename sesman and sesrun were prefixed with xrdp- a long time ago. Update the manual pags to follow that change as well. --- docs/man/xrdp-sesman.8 | 14 +++++++------- docs/man/xrdp-sesrun.8 | 10 +++++----- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/man/xrdp-sesman.8 b/docs/man/xrdp-sesman.8 index 07e23d7b..9316e926 100644 --- a/docs/man/xrdp-sesman.8 +++ b/docs/man/xrdp-sesman.8 @@ -1,23 +1,23 @@ -.TH "sesman" "8" "0.1.0" "xrdp team" "" +.TH "xrdp\-sesman" "8" "0.1.0" "xrdp team" "" .SH "NAME" -\fBsesman\fR \- \fBxrdp\fR(8) session manager +xrdp\-sesman \- \fBxrdp\fR(8) session manager .SH "SYNTAX" -.B sesman +.B xrdp\-sesman .RB [ \-\-nodaemon | \-\-kill | \-\-help ] .SH "DESCRIPTION" -\fBsesman\fR is \fBxrdp\fR(8) session manager. +\fBxrdp\-sesman\fR is \fBxrdp\fR(8) session manager. .br It manages user sessions by authenticating the user and starting the appropriate Xserver .SH "OPTIONS" .TP \fB\-n\fR, \fB\-\-nodaemon\fR -Starts \fBsesman\fR in foreground instead of starting it as a daemon. +Starts \fBxrdp\-sesman\fR in foreground instead of starting it as a daemon. .TP \fB\-k\fR, \fB\-\-kill\fR -Kills running \fBsesman\fR daemon. +Kills running \fBxrdp\-sesman\fR daemon. .TP \fB\-h\fR, \fB\-\-help\fR Output help information and exit. @@ -40,7 +40,7 @@ Simone Fedele .SH "SEE ALSO" .BR sesman.ini (5), -.BR sesrun (8), +.BR xrdp\-sesrun (8), .BR xrdp (8), .BR xrdp.ini (5) diff --git a/docs/man/xrdp-sesrun.8 b/docs/man/xrdp-sesrun.8 index 2b8a23a0..c48c7eb5 100644 --- a/docs/man/xrdp-sesrun.8 +++ b/docs/man/xrdp-sesrun.8 @@ -1,13 +1,13 @@ -.TH "sesrun" "8" "0.1.0" "xrdp team" "" +.TH "xrdp\-sesrun" "8" "0.7.0" "xrdp team" "" .SH "NAME" -\fBsesrun\fR \- \fBsesman\fR(8) session launcher +xrdp\-sesrun \- \fBsesman\fR(8) session launcher .SH "SYNTAX" -.B sesrun +.B xrdp\-sesrun .I server username password width height bpp .SH "DESCRIPTION" -\fBsesrun\fR starts a session using \fBsesman\fR(8). +\fBxrdp\-sesrun\fR starts a session using \fBxrdp\-sesman\fR(8). .br This is a tool useful for testing, it simply behaves like xrdp when some user logs in a new session and authenticates, thus starting a new session. @@ -42,7 +42,7 @@ Jay Sorg Simone Fedele .SH "SEE ALSO" -.BR sesman (8), +.BR xrdp\-sesman (8), .BR sesman.ini (5), .BR xrdp (8), .BR xrdp.ini (5) From 19efc04e64c8251664897307f8d73dcba382d8df Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 13:18:06 +0100 Subject: [PATCH 20/27] doc: Update xrdp.ini options Update General section. Document Logging section. Document Channels section. --- docs/man/xrdp.ini.5 | 172 ++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 166 insertions(+), 6 deletions(-) diff --git a/docs/man/xrdp.ini.5 b/docs/man/xrdp.ini.5 index 4b01f66e..7b32a9f0 100644 --- a/docs/man/xrdp.ini.5 +++ b/docs/man/xrdp.ini.5 @@ -1,4 +1,4 @@ -.TH "xrdp.ini" "5" "0.1.0" "xrdp team" "" +.TH "xrdp.ini" "5" "0.7.0" "xrdp team" "" .SH "NAME" \fBxrdp.ini\fR \- Configuration file for \fBxrdp\fR(8) @@ -6,7 +6,19 @@ This is the man page for \fBxrdp.ini\fR, \fBxrdp\fR(8) configuration file. It is composed by a number of sections, each one composed by a section name, enclosed by square brackets, followed by a list of \fI\fR=\fI\fR lines. -\fBxrdp.ini\fR is contains a \fB[Globals]\fR section, which sets some global configuration settings for \fBxrdp\fR(8), and one or more "connection" sections which contain the info on which services \fBxrdp\fR(8) can connect to. +\fBxrdp.ini\fR supports the following sections: + +.TP +\fB[Globals]\fP \- sets some global configuration settings for \fBxrdp\fR(8). + +.TP +\fB[Logging]\fP \- logging subsystem parameters + +.TP +\fB[Channels]\fP \- channel subsystem parameters + +.TP +\fI[Connection]\fP \- contain the info on which services \fBxrdp\fR(8) can connect to. .LP All options and values (except for file names and paths) are case insensitive, and are described in detail below. @@ -14,13 +26,161 @@ All options and values (except for file names and paths) are case insensitive, a .SH "GLOBALS" The options to be specified in the \fB[Globals]\fR section are the following: -.TP +.TP +\fBaddress\fP=\fIip address\fP +Specifies xrdp listening address. Default is 0.0.0.0 (all interfaces) + +.TP +\fBautorun\fP=\fIsession_name\fP +Automatically run the connection specified by \fIsession_name\fP, which must match a section as described below. +By default a drop-down list with all available connections is shown. +A connection can also be chosen by the connecting client by setting the \fBLOGIN DOMAIN\fP to a valid \fIsession name\fP. + +.TP \fBbitmap_cache\fR=\fI[0|1]\fR -If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables bitmap caching in \fBxrdp\fR(8) +If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables bitmap caching in \fBxrdp\fR(8). -.TP +.TP \fBbitmap_compression\fR=\fI[0|1]\fR -If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables bitmap compression in \fBxrdp\fR(8) +If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables bitmap compression in \fBxrdp\fR(8). + +.TP +\fBbulk_compression\fP=\fI[0|1]\fP +If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables compression of bulk data in \fBxrdp\fR(8). + +.TP +\fBchannel_code\fP=\fI[0|1]\fP +If set to \fB0\fR, \fBfalse\fR or \fBno\fR this option disables all channels \fBxrdp\fR(8). +See section \fBCHANNELS\fP below for more fine grained options. + +.TP +\fBcrypt_level\fP=\fIlow|medium|high\fP +.\" +RDP connection are controlled by two encryption settings: \fIEncryption Level\fP and \fIEncryption Method\fP. +The only supported \fIEncryption Method\fP is \fB40BIT_ENCRYPTION\fP, \fB128BIT_ENCRYPTION\fP and \fB56BIT_ENCRYPTION\fP are currently not supported. +This option controls the \fIEncryption Level\fP: +.RS 8 +.TP +.B low +All data sent from the client to the server is protected by encryption based on the maximum key strength supported by the client. +.I This is the only level that the traffic sent by the server to client is not encrypted. +.TP +.B medium +All data sent between the client and the server is protected by encryption based on the maximum key strength supported by the client. +.TP +.B high +All data sent between the client and server is protected by encryption based on the server's maximum key strength. +.RE + +.TP +\fBfork\fP=\fI[0|1]\fP +If set to \fB1\fR, \fBtrue\fR or \fByes\fR for each incoming connection \fBxrdp\fR(8) forks a sub-process instead of using threads. + +.TP +\fBhidelogwindow\fP=\fI[0|1]\fP +If set to \fB1\fP, \fBtrue\fP or \fByes\fP, \fBxrdp\fP will not show a window for log messages. + +.TP +\fBmax_bpp\fP=\fI[8|15|16|24]\fP +Limit the color depth by specifying the maximum number of bits per pixel. + +.TP +\fBport\fP=\fIport\fP +Specify TCP port to listen on for incoming connections. +The default for RDP is \fB3389\fP. + +.TP +\fBtcp_keepalive\fP=\fI[yes|no]\fP +Regulate if the listening socket uses socket option \fBSO_KEEPALIVE\fP. +If set to \fB1\fP, \fBtrue\fP or \fByes\fP and the network connection disappears without closing messages, the connection will be closed. + +.TP +\fBtcp_nodelay\fP=\fI[yes|no]\fP +Regulate if the listening socket uses socket option \fBTCP_NODELAY\fP. +If set to \fB1\fP, \fBtrue\fP or \fByes\fP, no buffering will be performed in the TCP stack. + +.TP +\fBblack\fP=\fI000000\fP +.TP +\fBgrey\fP=\fIc0c0c0\fP +.TP +\fBdark_grey\fP=\fI808080\fP +.TP +\fBblue\fP=\fI0000ff\fP +.TP +\fBdark_blue\fP=\fI00007f\fP +.TP +\fBwhite\fP=\fIffffff\fP +.TP +\fBred\fP=\fIff0000\fP +.TP +\fBgreen\fP=\fI00ff00\fP +.TP +\fBbackground\fP=\fI000000\fP +These options override the colors used internally by \fBxrdp\fP(8) to draw the login and log windows. +Colors are defined using a hexadecimal (hex) notation for the combination of Red, Green, and Blue color values (RGB). +The lowest value that can be given to one of the light sources is 0 (hex 00). +The highest value is 255 (hex FF). + +.SH "LOGGING" +The following parameters can be used in the \fB[logging]\fR section: + +.TP +\fBLogFile\fR=\fI${SESMAN_LOG_DIR}/sesman.log\fR +This options contains the path to logfile. It can be either absolute or relative, and the default is \fI${SESMAN_LOG_DIR}/sesman.log\fR + +.TP +\fBLogLevel\fR=\fIlevel\fR +This option can have one of the following values: + +\fBCORE\fR or \fB0\fR \- Log only core messages. these messages are _always_ logged, regardless the logging level selected. + +\fBERROR\fR or \fB1\fR \- Log only error messages + +\fBWARNING\fR, \fBWARN\fR or \fB2\fR \- Logs warnings and error messages + +\fBINFO\fR or \fB3\fR \- Logs errors, warnings and informational messages + +\fBDEBUG\fR or \fB4\fR \- Log everything. If \fBsesman\fR is compiled in debug mode, this options will output many more low\-level message, useful for developers + +.TP +\fBEnableSyslog\fR=\fI[0|1]\fR +If set to \fB1\fR, \fBtrue\fR or \fByes\fR this option enables logging to syslog. Otherwise syslog is disabled. + +.TP +\fBSyslogLevel\fR=\fIlevel\fR +This option sets the logging level for syslog. It can have the same values of \fBLogLevel\fR. If \fBSyslogLevel\fR is greater than \fBLogLevel\fR, its value is lowered to that of \fBLogLevel\fR. + +.SH "CHANNELS" +The Remote Desktop Protocol supports several channels, which are used to transfer additional data like sound, clipboard data and others. +Channel names not listed here will be blocked by \fBxrdp\fP. +Not all channels are supported in all cases, so setting a value to \fItrue\fP is a pre-requisite, but does not force it's use. +.br +Channels can also be enabled or disabled on a per connection basis by prefixing each setting with \fBchannel.\fP in the channel section. + +.TP +\fBrdpdr\fP=\fI[0|1]\fP +If set to \fB1\fR, \fBtrue\fR or \fByes\fR using the RDP channel for device re-direction is allowed. + +.TP +\fBrdpsnd\fP=\fI[0|1]\fP +If set to \fB1\fR, \fBtrue\fR or \fByes\fR using the RDP channel for sound is allowed. + +.TP +\fBdrdynvc\fP=\fI[0|1]\fP +If set to \fB1\fR, \fBtrue\fR or \fByes\fR using the RDP channel to initiate additional dynamic virtual channels is allowed. + +.TP +\fBcliprdr\fP=\fI[0|1]\fP +If set to \fB1\fR, \fBtrue\fR or \fByes\fR using the RDP channel for clipboard re-direction is allowed. + +.TP +\fBrail\fP=\fI[0|1]\fP +If set to \fB1\fR, \fBtrue\fR or \fByes\fR using the RDP channel for remote applications integrated locally (RAIL) is allowed. + +.TP +\fBxrdpvr\fP=\fI[0|1]\fP +If set to \fB1\fR, \fBtrue\fR or \fByes\fR using the RDP channel for XRDP Video streaming is allowed. .SH "CONNECTIONS" A connection section is made of a section name, enclosed in square brackets, and the following entries: From ab2e950246586fb6af5aed5e94bc7bf76f4b4490 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 14:27:18 +0100 Subject: [PATCH 21/27] doc: xrdp-sesadmin manual page Add a manual page for xrdp-sessadmin. --- docs/man/Makefile.am | 1 + docs/man/xrdp-sesadmin.8 | 57 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 docs/man/xrdp-sesadmin.8 diff --git a/docs/man/Makefile.am b/docs/man/Makefile.am index 3d816918..daf58d0f 100644 --- a/docs/man/Makefile.am +++ b/docs/man/Makefile.am @@ -2,6 +2,7 @@ man_MANS = \ sesman.ini.5 \ xrdp.ini.5 \ xrdp.8 \ + xrdp-sesadmin.8 \ xrdp-sesman.8 \ xrdp-sesrun.8 diff --git a/docs/man/xrdp-sesadmin.8 b/docs/man/xrdp-sesadmin.8 new file mode 100644 index 00000000..ade1dd58 --- /dev/null +++ b/docs/man/xrdp-sesadmin.8 @@ -0,0 +1,57 @@ +.TH "xrdp-sesadmin" "8" "0.7.0" "xrdp team" +.SH NAME +xrdp\-sesadmin \- console XRDP sessions administration tool + +.SH SYNOPSIS +.B xrdp\-sesadmin +.RI [ options ] +.BI -c= command + +.SH DESCRIPTION +This manual page documents briefly the +.B xrdp\-sesadmin +command. +.PP +\fBxrdp\-sesadmin\fP is a console program to administer running XRDP sessions. + +.SH OPTIONS +A summary of options is included below. +.TP +.BI \-u= username +\fIUsername\fP for authentication on the server. +Defaults to \fBroot\fP. + +.TP +.BI \-p= password +The \fIpassword\fP to authenticate with. +The default is to ask for the password interactively. + +.TP +.BI \-s= server +The host address of the \fIserver\fP to connect to. +Defaults to \fBlocalhost\fP. + +.TP +.BI \-i= port +The TCP \fIport\fP number to connect to. +Defaults to \fB3350\fP. + +.TP +.BI \-c= command +Specifies the \fIcommand\fP to execute on the server. +Valid commands are: +.RS 4 +.TP +.B list +List currently active sessions. +.TP +.BI kill: sid +Kills the session specified the given \fIsession id\fP. +(not yet implemented). +.RE + +.SH FILES +xrdp\-sesadmin.log + +.SH SEE ALSO +.BR xrdp (8). From feae08dcc50e6c337023299ea417bf24c56ba9ef Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 15:16:58 +0100 Subject: [PATCH 22/27] doc: xrdp-dis manual page Add a manual page for xrdp-dis, which is used to disconnect the RDP connection but otherwise keep the session running. --- docs/man/Makefile.am | 1 + docs/man/xrdp-dis.1 | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 docs/man/xrdp-dis.1 diff --git a/docs/man/Makefile.am b/docs/man/Makefile.am index daf58d0f..482bd420 100644 --- a/docs/man/Makefile.am +++ b/docs/man/Makefile.am @@ -1,4 +1,5 @@ man_MANS = \ + xrdp-dis.1 \ sesman.ini.5 \ xrdp.ini.5 \ xrdp.8 \ diff --git a/docs/man/xrdp-dis.1 b/docs/man/xrdp-dis.1 new file mode 100644 index 00000000..089621ae --- /dev/null +++ b/docs/man/xrdp-dis.1 @@ -0,0 +1,23 @@ +.TH "xrdp-dis" "8" "0.7.0" "xrdp team" +.SH NAME +xrdp\-dis \- xrdp disconnect utility + +.SH SYNOPSIS +.B xrdp\-dis + +.SH DESCRIPTION +.PP +\fBxrdp\-dix\fP is run with no parameters to disconnect your xrdp session. + +.SH ENVIRONMENT +.TP +.B DISPLAY +to get the default host and display number. + +.SH FILES +.TP +.I /tmp/.xrdp/xrdp_disconnect_display_* +UNIX socket used to communicate with the \fBxrdp\fP(8) session manager. + +.SH SEE ALSO +.BR xrdp (1). From 674f4c060f609f8b6ce9712d50eace38d8df19b7 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Fri, 25 Jan 2013 14:27:18 +0100 Subject: [PATCH 23/27] doc: xrdp-xcon manual page Add a manual page for xrdp-xcon, which is currently not installed, since xrdp-xcon is not installed. --- docs/man/Makefile.am | 5 ++++- docs/man/xrdp-xcon.8 | 14 ++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 docs/man/xrdp-xcon.8 diff --git a/docs/man/Makefile.am b/docs/man/Makefile.am index 482bd420..98a5ebc4 100644 --- a/docs/man/Makefile.am +++ b/docs/man/Makefile.am @@ -7,4 +7,7 @@ man_MANS = \ xrdp-sesman.8 \ xrdp-sesrun.8 -EXTRA_DIST = $(man_MANS) +noinst_man_MANS = \ + xrdp-xcon.8 + +EXTRA_DIST = $(man_MANS) $(noinst_man_MANS) diff --git a/docs/man/xrdp-xcon.8 b/docs/man/xrdp-xcon.8 new file mode 100644 index 00000000..9d83b646 --- /dev/null +++ b/docs/man/xrdp-xcon.8 @@ -0,0 +1,14 @@ +.TH "xrdp-xcon" "8" "0.7.0" "xrdp team" +.SH NAME +xrdp\-xcon \- X11 event loop debugging helper for XRDP + +.SH SYNOPSIS +.B xrdp\-xcon + +.SH DESCRIPTION +.PP +\fBxrdp\-xcon\fP is a X application, which just opens a connection to the X server and polls for events. +It's pretty useless. + +.SH SEE ALSO +.BR xev (1). From d6aed5e83feb150343e1a0cc7169782a08e39807 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Mon, 28 Jan 2013 07:34:26 +0100 Subject: [PATCH 24/27] doc: xrdp-keygen manual page Add updated manual page from Debian project. --- docs/man/Makefile.am | 1 + docs/man/xrdp-keygen.8 | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 docs/man/xrdp-keygen.8 diff --git a/docs/man/Makefile.am b/docs/man/Makefile.am index 98a5ebc4..b65ea483 100644 --- a/docs/man/Makefile.am +++ b/docs/man/Makefile.am @@ -3,6 +3,7 @@ man_MANS = \ sesman.ini.5 \ xrdp.ini.5 \ xrdp.8 \ + xrdp-keygen.8 \ xrdp-sesadmin.8 \ xrdp-sesman.8 \ xrdp-sesrun.8 diff --git a/docs/man/xrdp-keygen.8 b/docs/man/xrdp-keygen.8 new file mode 100644 index 00000000..71269f5c --- /dev/null +++ b/docs/man/xrdp-keygen.8 @@ -0,0 +1,40 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH xrdp\-keygen 8 "0.7.0" "xrdp team" +.SH NAME +xrdp\-keygen \- xrdp RSA key generation utility + +.SH SYNOPSIS +.B xrdp\-keygen xrdp +< \fIoutfile\fP | \fBauto\fP > +.br +.B xrdp\-keygen test + +.SH DESCRIPTION +\fBxrdp\-keygen\fP generates the file +.I /etc/xrdp/rsakeys.ini +which contains the RSA key pair used to perform authentication to +remote clients. The public key is self-signed. + +.SH OPTIONS +This program takes one of the following options: +.TP +\fBxrdp\fP \fIoutfile\fP +Generate a new key pair. +The key data is stored in the file named \fIoutfile\fP. +.br +If \fBauto\fP is used as \fIoutfile\fP, the default file \fI/etc/xrdp/rsakeys.ini\fP gets created if it does not yet exists. +.TP +.B test +Generate a test key pair and print information to standard output. + +.SH FILES +.TP +.I /etc/xrdp/rsakeys.ini +RSA public and private key pair used to identify this XRDP server. + +.SH SEE ALSO +.BR xrdp (8), +.BR xrdp\-sesman (8). + +.SH AUTHOR +This manual page was originally written by Vincent Bernat . From cae4505f5bf6432867a7ec6c87efe0c4f9630c57 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Mon, 28 Jan 2013 08:52:47 +0100 Subject: [PATCH 25/27] doc: xrdp-genkeymap manual page Add manual page for key map generation utility. --- docs/man/Makefile.am | 1 + docs/man/xrdp-genkeymap.8 | 67 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 docs/man/xrdp-genkeymap.8 diff --git a/docs/man/Makefile.am b/docs/man/Makefile.am index b65ea483..bca82ccd 100644 --- a/docs/man/Makefile.am +++ b/docs/man/Makefile.am @@ -3,6 +3,7 @@ man_MANS = \ sesman.ini.5 \ xrdp.ini.5 \ xrdp.8 \ + xrdp-genkeymap.8 \ xrdp-keygen.8 \ xrdp-sesadmin.8 \ xrdp-sesman.8 \ diff --git a/docs/man/xrdp-genkeymap.8 b/docs/man/xrdp-genkeymap.8 new file mode 100644 index 00000000..068f04dd --- /dev/null +++ b/docs/man/xrdp-genkeymap.8 @@ -0,0 +1,67 @@ +.TH "xrdp\-genkeymap" "8" "0.1.0" "xrdp team" "" +.de URL +. \\$2 \(laURL: \\$1 \(ra\\$3 +.. +.if \n[.g] .mso www.tmac + +.SH "NAME" +\fBxrdp\-genkeymap\fR \- key map generator for XRDP + +.SH "SYNTAX" +.B xrdp\-genkeymap +.I file + +.SH "DESCRIPTION" +\fBxrdp\-genkeymap\fR extracts the key map used by the currently running X session to generated a mapping from Remote Desktop Protocol (RDP) key codes to X keysyms and Unicode code points. + +.SH OPTIONS +.TP +.I outfile +The key map information is stored in the file named \fIoutfile\fP. + +.SH "FILES" +.TP +.I /etc/xrdp/km-XXXX.ini +Files containing the keyboard mapping for language \fIXXXX\fP, which is a 4 digit hexadecimal number identifying the country and language code. +.RS 8 +.TP +.B 0405 +cs czech +.TP +.B 0407 +de german +.TP +.B 0409 +en-us us english +.TP +.B 040c +fr french +.TP +.B 0410 +it italy +.TP +.B 0416 +br Portuguese (Brazil) +.TP +.B 0419 +ru russian +.TP +.B 041d +se swedish +.TP +.B 0809 +en-uk uk english +.RE + +.SH "AUTHORS" +Jay Sorg +.br +Simone Fedele + +.SH "SEE ALSO" +.BR xrdp (8), +.BR setxkbmap (1), +.BR unicode (7), +.URL "https://github.com/FreeRDP/FreeRDP/wiki/Keyboard" "Description of Keyboard Input mapping" . + +for more info on \fBxrdp\fR see http://xrdp.sf.net From 007b5815381c667a1fa052376f0c0b5f4d14423f Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Mon, 28 Jan 2013 09:35:01 +0100 Subject: [PATCH 26/27] doc: xrdp-sessvc manual page Add manual page for internally called xrdp-sessvc. The program should probably be moved to /usr/lib/xrdp/ as it's only called internally. --- docs/man/Makefile.am | 3 ++- docs/man/xrdp-sessvc.8 | 26 ++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 docs/man/xrdp-sessvc.8 diff --git a/docs/man/Makefile.am b/docs/man/Makefile.am index bca82ccd..4d020b01 100644 --- a/docs/man/Makefile.am +++ b/docs/man/Makefile.am @@ -7,7 +7,8 @@ man_MANS = \ xrdp-keygen.8 \ xrdp-sesadmin.8 \ xrdp-sesman.8 \ - xrdp-sesrun.8 + xrdp-sesrun.8 \ + xrdp-sessvc.8 noinst_man_MANS = \ xrdp-xcon.8 diff --git a/docs/man/xrdp-sessvc.8 b/docs/man/xrdp-sessvc.8 new file mode 100644 index 00000000..322c968a --- /dev/null +++ b/docs/man/xrdp-sessvc.8 @@ -0,0 +1,26 @@ +.TH "xrdp\-sessvc" "8" "0.7.0" "xrdp team" "" +.SH "NAME" +xrdp\-sessvc \- \fBxrdp\fR session supervisor + +.SH "SYNTAX" +.B xrdp\-sessman +.I x_pid wm_pid + +.SH "DESCRIPTION" +\fBxrdp\-sessvc\fR is the \fBxrdp\fR(8) session supervisor, which monitors the running X server and Windows Manager. +As soon as one of them quits, the other process is terminated as well. +.br +This program is only executed internally by \fBxrdp\-sesman\fP(8). + +.SH "OPTIONS" +.TP +.I x_pid +The process ID of the forked X server to monitor. +.TP +.I wm_pid +The process ID of the forked Window Manager to monitor. + +.SH "SEE ALSO" +.BR xrdp\-sesrun (8). + +for more info on \fBxrdp\fR see http://xrdp.sf.net From 58024d05000ce1548947e8416161d26dccf43ec0 Mon Sep 17 00:00:00 2001 From: Philipp Hahn Date: Mon, 28 Jan 2013 10:00:37 +0100 Subject: [PATCH 27/27] doc: xrdp-chansrv manual page Add manual page for internally forked channel server. --- docs/man/Makefile.am | 1 + docs/man/xrdp-chansrv.8 | 46 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 docs/man/xrdp-chansrv.8 diff --git a/docs/man/Makefile.am b/docs/man/Makefile.am index 4d020b01..507809bd 100644 --- a/docs/man/Makefile.am +++ b/docs/man/Makefile.am @@ -3,6 +3,7 @@ man_MANS = \ sesman.ini.5 \ xrdp.ini.5 \ xrdp.8 \ + xrdp-chansrv.8 \ xrdp-genkeymap.8 \ xrdp-keygen.8 \ xrdp-sesadmin.8 \ diff --git a/docs/man/xrdp-chansrv.8 b/docs/man/xrdp-chansrv.8 new file mode 100644 index 00000000..aa4747d8 --- /dev/null +++ b/docs/man/xrdp-chansrv.8 @@ -0,0 +1,46 @@ +.TH "xrdp\-chansrv" "8" "0.7.0" "xrdp team" "" +.SH "NAME" +\fBxrdp\-chansrv\fR \- \fBxrdp\fR channel server + +.SH "SYNTAX" +.B xrdp\-chansrv + +.SH "DESCRIPTION" +\fBxrdp\-chansrv\fR is the \fBxrdp\fR(8) channel server, which manages the Remote Desktop Protocol (RDP) sub-channels. +This program is only forked internally by \fBxrdp\-sesman\fP(8). +.br +Currently \fBxrdp\-chansrv\fP knows about the following channels: +.RE 8 +.TP +.B cliprdr +Clipboard Redirection +.TP +.B rdpsnd +Remote Desktop Protocol Sound +.TP +.B rdpdr +Remote Desktop Protocol Device Redirection +.TP +.B rail +Remote Applications Integrated Locally +.TP +.B drdynvc +Dynamic Virtual Channel +.RS + +.SH FILES +.TP +.I /tmp/.xrdp/xrdp_chansrv_socket_* +UNIX socket used by external programs to implement channels. +.TP +.I /tmp/.xrdp/xrdp_api_* +UNIX socket used by \fBxrdp\-chansrv\fP to communicate with \fBxrdp\-sesman\fP. +.TP +.I $HOME/xrdp-chansrv.log +Log file used by \fBxrdp\-chansrv\fP(8). + +.SH "SEE ALSO" +.BR xrdp\-sesman (8), +.BR sesman.ini (5). + +for more info on \fBxrdp\fR see http://xrdp.sf.net