Commit Graph

803 Commits

Author SHA1 Message Date
matt335672 d49f405130 Add implementation of xfuse_deinit_xrdp_fs() 2019-02-26 13:22:30 +00:00
4680414@qq.com e655fe6a1b libscp v1 server set height twice,and not set width. so fix it. 2019-02-15 09:18:37 +08:00
Koichiro IWAO 88f0d3114d Fix build with FDK AAC v2
Original fix provided by takefu. See also:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233556
2018-11-28 01:31:14 +09:00
Koichiro IWAO a4b0aa9355 Remove x11rdp from config
as it is already deprecated. x11rdp is complicated to build and very few
people using it actually. However, some people still select "X11rdp"
session and get stuck despite not installing x11rdp.

https://github.com/neutrinolabs/xrdp/issues/962#issuecomment-430545526

People who really want to use x11rdp should revert this commit.
2018-10-18 11:19:38 +09:00
metalefty c2ade7a1f7 Merge pull request #1225 from savisko/devel
Fix crash of xrdp-chansrv process, issue #1202.
2018-10-18 10:49:09 +09:00
metalefty a83400060b Merge pull request #1227 from metalefty/idle-disc
Ressurect IdleTimeLimit
2018-10-18 10:40:12 +09:00
Koichiro IWAO 5ea403430a Sort & reword description of IdleTimeLimit 2018-10-16 16:53:33 +09:00
jsorg71 ae1514c167 dynamic virtual channel improvements
remove not used chansrv <-> xrdp messages
move static channel disable control into libxrdp
remove some blocking read, write chansrv calls
add drdynvc calls to libxrdp
add drdynvc calls to chansrv
channel cleanup
2018-10-11 22:09:20 -07:00
Michael Savisko 47d8e03d3a Fixed compilation warning in previous commit. 2018-10-11 13:51:59 +03:00
Michael Savisko ba93badf73 Fix crash of xrdp-chansrv process, issue #1202.
In xfuse_create_file_in_xrdp_fs insure that xfuse_fs is properly initialized.
2018-10-11 13:11:24 +03:00
Koichiro IWAO f84f3de478 docs: ressurect IdleTimeLimit
This reverts commit 513f7679966dc8bc1d86f328dce6372c763e2d93.
2018-10-10 17:47:12 +09:00
Koichiro IWAO 2a85a65d08 show more helpful message if xrdp-dis failed 2018-09-11 11:58:44 +09:00
Koichiro IWAO d6992cf62d sesman: add XRDP_ prefix to xrdp related environment variable
and remove CHANSRV, use the shorter name
2018-09-04 16:01:40 +09:00
Koichiro IWAO 59f3a79fe4 sesman: pass pulse socket name via environment variable 2018-09-04 16:01:40 +09:00
Idan Freiberg 5d2c5b1410 chansrv: remove pulseaudio modules from xrdp source tree
its actually an independent code which is not part of xrdp
moved to its own repoistory: https://github.com/neutrinolabs/pulseaudio-modules

Signed-off-by: Idan Freiberg <speidy@gmail.com>
2018-08-03 06:12:53 +03:00
Koichiro IWAO ff85cb4530 Merge branch 'wfix-pulsechansrv-makefile' into devel 2018-08-03 10:05:46 +09:00
Brandon Wooldridge 8427c3601b Corrected spacing between arguments to cc for Pulseaudio chanserv Makefile 2018-08-02 15:24:46 -07:00
matt335672 c467ba6b04 Add handler for fatal X server conditions
Unless X server failures are caught, these can cause a premature
exit of chansrv, giving it no chance to clean up. This is currently a
particular problem for fuser mounts.
2018-07-19 08:16:29 +01:00
Koichiro IWAO eda1842825 sesman: add comments, no logic change 2018-06-19 12:57:30 +09:00
Koichiro IWAO 6e16b38ecc sesman: fix potential buffer over flow 2018-06-16 16:44:37 +09:00
Koichiro IWAO 9192e95c96 sesman: fix logging after default_wm change 2018-06-16 16:44:37 +09:00
Koichiro IWAO 6fb18cd5fa docs: document configurable reconnect script path 2018-06-16 16:44:37 +09:00
Koichiro IWAO a39b413746 sesman: make the path of reconnect script configurable 2018-06-16 16:44:37 +09:00
Koichiro IWAO e82f212f34 sesman: accept full path for DefaultWindowManager
Solves: #1143

Also, this idea is inspired by Fedora's patch [1]. Some distro wants to
put all scripts in libexec directory due to SELinux. This enables
distros to put such scripts anywhere.

[1] https://src.fedoraproject.org/cgit/rpms/xrdp.git/tree/xrdp-0.9.6-scripts-libexec.patch?id=02f845c1b8cea781313cf3e9efcd6d7d50341824
2018-06-16 16:44:37 +09:00
Idan Freiberg 036c292120 Merge pull request #1146 from metalefty/sesman-leak
sesman: fix leak in struct config_sesman
2018-06-14 12:43:02 +03:00
metalefty f83d967f46 Merge pull request #1120 from matt335672/set-env-on-reconnect
Copy the PAM session environment for the reconnect script
2018-06-14 11:04:43 +09:00
Koichiro IWAO 037d4eeece sesman: fix leak in struct config_sesman 2018-06-13 17:20:03 +09:00
Koichiro IWAO 2262f1361f sesman: close stdout/stderr earlier
not to spit on the console
2018-06-05 00:19:36 +09:00
Koichiro IWAO 6ae3052a0f sesman: don't spit on the console when starting
As the Debian patch[1] expresses, spitting messages on the console when
a process starts in background is a bad idea. Everything should be
written to log file and daemon should start silently. This is a first
step to shut up daemons.

Got some idea from Debian Remote Maintainers and Thorsten Glaser,
thanks!

[1] https://salsa.debian.org/debian-remote-team/xrdp/blob/2751ad4d62b1f63dbc2e4b8fa1580fa54b0f5460/debian/patches/shutup-daemon.diff
2018-06-05 00:19:36 +09:00
Koichiro IWAO 19fa26a27e sesman: don't print config in reader function
reader function should just read. Add config_dump function to print read
config.
2018-06-05 00:19:35 +09:00
Koichiro IWAO de33a7832e sesman: s/XOrg/Xorg/g, no logic change
X.Org is usually spelled X.Org or Xorg.
2018-06-05 00:19:35 +09:00
Koichiro IWAO e4857b13fa sesman: config_read_logging function no longer exists 2018-06-05 00:19:33 +09:00
matt335672 cde5b09129 Copy the PAM session environment for the reconnect script
This provides access to variables set at login which may be
required by the script (e.g. KRB5CCNAME)
2018-05-31 10:54:38 +01:00
metalefty 39b664fc27 Merge pull request #1108 from aiden0z/devel
sesrun support start other session based on session_code argument
2018-04-22 13:45:18 +09:00
Aiden Luo 7864f9d692 sesrun support start other session based on session_code argument 2018-04-20 18:11:27 +08:00
Koichiro IWAO 819c506d26 sesman: Update Xorg help comment for Arch Linux
As reported in #1106, Arch Linux looks to me like using Xorg wrapper now.
2018-04-19 01:21:54 +09:00
Koichiro IWAO a63c411772 sesman: rename vnc password file, just a cosmetic change 2018-03-23 19:16:10 +09:00
Jay Sorg e40f0dc7e2 sesman: add hostname to vnc password file 2018-03-23 15:48:25 +09:00
Koichiro IWAO 780ba744f6 Revert "devredir: fix xinode leak"
This reverts commit 5daa09171e.

Causes "double free". Fix #990 was not correct.

```
[1271363627]: DEV_REDIR  dev_redir_proc_device_iocompletion: 738 : entered: IoStatus=0x0 CompletionId=1
[1271363627]: DEV_REDIR  dev_redir_proc_device_iocompletion: 839 : got CID_DIRECTORY_CONTROL
[1271363627]: DEV_REDIR  dev_redir_proc_query_dir_response: 933 : processing FILE_DIRECTORY_INFORMATION structs
[1271363627]: DEV_REDIR  dev_redir_proc_query_dir_response: 968 : FileName:          .
[1271363627]: DEV_REDIR  devredir_fuse_data_peek: 1335 : returning 0x7f2a9c013410
*** Error in `/usr/sbin/xrdp-chansrv': double free or corruption (out): 0x00007f2a9c13a330 ***
```

Closes: #1025
2018-03-23 11:40:52 +09:00
Koichiro IWAO 97c21bc972 sesman: default startwm.sh should use bash
as it sources bash_profile. And add comments.
Closes #1009.
2018-03-09 14:24:17 +09:00
Vraiment fd37805ac0 Make sesman.ini dynamic for the location of the configuration file 2018-02-19 11:41:55 +09:00
Koichiro IWAO c50015122c FreeBSD: rework setsid code
Pull request #650 is not valid to avoid run session twice.
It certainly stops running session twice but causes #1016.

In FreeBSD, sesman process will run like this. The intermediate
sesman is needed to detect session termination correctly.

xrdp-sesman (daemon)
    |
    +- xrdp-sesman (FreeBSD specific intermediate sesman)
        |
        +- xrdp-sesman (bsd sesion leader & each session)
             |
             +- Xorg
             +- startwm.sh
             +- xrdp-chansrv

To stop runninng session twice correctly, just exit before the
intermediate sesman executes Xorg, WM and chansrv.
2018-02-06 16:03:10 +09:00
Koichiro IWAO e16029cbc2 fix leak of SCP_DISCONNECTED_SESSION
Pointed out by: #919
2018-01-23 11:16:26 +09:00
Koichiro IWAO 5daa09171e devredir: fix xinode leak
Pointed out by: #919
2018-01-12 09:24:03 +09:00
Koichiro IWAO 08f847d74b sesman: refactor, change variable names
session_variables1 -> env_names
session_variables2 -> env_values

Use the name used in callee function env_set_user(). The former names
are not clear.
2018-01-11 10:57:47 +09:00
Koichiro IWAO dcf64e43ca remove trailing space 2018-01-11 10:57:43 +09:00
Koichiro IWAO f2db57afb0 fix indent 2018-01-09 14:09:13 +09:00
matt335672 3f2a017c97 Make listen check before daemon fork 2017-12-27 15:00:18 +00:00
Dominik George 53eccc93a2 Simplify pulseaudio module build instructions 2017-12-26 19:06:36 +09:00
Koichiro IWAO 93481365d1 pulse: replace old pulse notes with bran-new README 2017-12-26 09:26:51 +09:00