summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* sesman: search pam files also in ${sysconfdir}/pam.dKoichiro IWAO2017-07-262-1/+3
| | | | | | | 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
* chansrv: remove trailing spaceKoichiro IWAO2017-07-251-2/+2
|
* chansrv: use switch-case to support more codecsKoichiro IWAO2017-07-251-12/+13
|
* chansrv: constify wFormatTagKoichiro IWAO2017-07-252-20/+23
|
* Add a pam file for FreeBSDKoichiro IWAO2017-07-214-1/+12
| | | | as existing xrdp-sesman.unix doesn't suit FreeBSD.
* Allow UDS connection from non-root usersBen Cohen2017-07-201-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you run xrdp with a Unix Domain Socket (UDS) for the port specified in /etc/xrdp/xrdp.ini then only root can connect to it. Test case: 1. Edit /etc/xrdp/xrdp.ini to set "port=/var/run/xrdp-local.socket". 2. Restart xrdp. 3. Run the following, as a non-root user. socat TCP-LISTEN:12345 UNIX-CONNECT:/var/run/xrdp-local.socket & rdesktop localhost:12345 Expected behaviour: rdesktop starts up and displays the logon dialog. Observed behaviour: rdesktop exits with "ERROR: Connection closed" and socat exits with "Permission denied". (But it suceeds if root runs socat.) UDS files are created by trans_listen_address() and given permissions 0660, so only root can connect to it. In this case, for the RDP client connection, it it fine for any user to connect so it should be given permissions 0666. Note that this is only relevant when the port in /etc/xrdp/xrdp.ini has been set to create a UDS instead of a TCP socket. When a TCP port is created any user (including remote users, unless the loopback interface is used) can connect so this is not less secure.
* append a / to ensure the full path is created even when the config variable ↵Ian Geiser2017-07-191-1/+1
| | | | lacks a trailing /
* NEWS: pulralize glitchesKoichiro IWAO2017-07-141-1/+1
|
* common: fix more glitches in IPv4 initializationKoichiro IWAO2017-07-141-2/+2
|
* Use g_create_path instead of g_create_dirIan Geiser2017-07-144-11/+11
| | | | Rename g_mk_temp_dir to g_mk_socket_path
* fix typo (copy & paste mistake)Koichiro IWAO2017-07-131-1/+1
|
* Update release dateKoichiro IWAO2017-07-131-1/+1
|
* Update NEWSKoichiro IWAO2017-07-131-1/+8
|
* fix typoKoichiro IWAO2017-07-131-1/+1
|
* sesman: make sure socket directory presentKoichiro IWAO2017-07-131-0/+3
| | | | | before try to create a domain socket. Originally proposed by Ian Geiser (geiseri).
* common: use log_messageKoichiro IWAO2017-07-131-2/+3
|
* sesman: move auth_start_session, auth_stop_session, and auth_end to child ↵Jay Sorg2017-07-121-3/+7
| | | | process
* fix for protocol error when 32 bit and non rfxJay Sorg2017-07-121-14/+35
|
* common: fix a glitch with IPv4 struct initializationKoichiro IWAO2017-07-101-1/+1
| | | | | Pointed out by: andrecbarros Closes: #803
* Prepare release v0.9.3Koichiro IWAO2017-07-064-3/+26
|
* update submodules to their release tag head commitKoichiro IWAO2017-07-061-0/+0
|
* Fix Xvnc backend disconnects when some data copied to clipboardKoichiro IWAO2017-07-061-1/+6
| | | | Should fix #755.
* xrdp-sesadmin: fix error when there are no sessionsBen Cohen2017-07-062-12/+13
| | | | | | | | | | | | | | | | | | Test case: On a system running xrdp with no sessions running run: xrdp-sesadmin -u=<user> -p=<password> -c=list Expected result: "No sessions." (ignoring debug output) Observed result: "Error getting session list." In the SCP_SERVER_STATE_MNG_LISTREQ case in scp_v1_mng_process() if there are no sessions it ends the scp session, which causes an error in the client. In commit 0017081d the client was changed to report errors, giving the result above. Fix by calling scp_v1s_mng_list_sessions() from scp_v1_mng_process() even when there are no sessions, and if so sending a packet with a count of zero so that the client gets what it expects.
* Change log level DEBUG -> WARNINGKoichiro IWAO2017-07-061-4/+4
| | | | | since unavailability of ssl protocols defined in config file may weaken security and it is important for users.
* Reword log messages in ssl_get_protocols_from_string()Koichiro IWAO2017-07-061-4/+12
|
* docs: document change of xrdp-chansrv log pathKoichiro IWAO2017-07-061-2/+2
|
* chansrv: include display number in chansrv log filenameKoichiro IWAO2017-07-061-5/+5
| | | | | since xrdp-chansrv may be run multiple instances per user. For example, Xvnc backend creates one session per screen geometry.
* travis: enable build test on v0.9 branchKoichiro IWAO2017-07-061-1/+1
| | | | it is the latest stable branch.
* move openssl calls to common/libssl.c, check for definesJay Sorg2017-06-223-41/+92
|
* int function should returnKoichiro IWAO2017-06-201-0/+2
|
* sesman: exit with failure status if listen failedKoichiro IWAO2017-06-201-3/+55
|
* xrdp: exit main process with failure status if listen failed (daemon mode)Koichiro IWAO2017-06-203-1/+64
|
* xrdp: exit with failure status if listen failed (foreground mode)Koichiro IWAO2017-06-201-2/+11
|
* xrdp: xrdp_listen_main_loop pass through trans_listen_address return valueKoichiro IWAO2017-06-201-2/+3
|
* sesman: install empty reconnectwm.sh as a templateKoichiro IWAO2017-06-202-1/+5
| | | | | | as it was undocumented and few people know reconnectwm.sh is executed on client reconnect. The behaviour of startwm.sh / reconnectwm.sh should be documented. This is a first step of documenting them.
* add Spanish keylayoutKoichiro IWAO2017-06-171-0/+3
|
* common: implement g_file_readable for WIN32Koichiro IWAO2017-06-121-1/+1
|
* Use the words "cannot read" rather than "cannot open"Koichiro IWAO2017-06-121-2/+2
| | | | as the code actually tests readability.
* Check certificate/privkey readability not existenceKoichiro IWAO2017-06-121-7/+7
| | | | to fail RDP security negotiation if certificate/privkey is not readable
* Log user-friendly message when certificate/privkey is inaccessibleKoichiro IWAO2017-06-123-0/+25
| | | | | | | | | | | | We shouldn't assume that xrdp daemon is running under root privilege. In many cases, root privilege is not really needed for xrdp daemon. xrdp may fail to load certificate/privkey due to lack of permissions when running under user privilege. Checking existence of files is not enough and xrdp should output user-friendly log in such case. Reported by Debian user in bug 856436 [1]. [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=856436
* sort xrdp_keyboard.iniKoichiro IWAO2017-06-091-7/+7
|
* Fix UK/GB keyboard layoutBen Cohen2017-06-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The UK/GB keyboard doesn't work properly connecting to xrdp with xorgxrdp. It does work when connecting to xrdp with x11vnc, however. This is because the layout is not declared in xrdp_keyboard.ini. It needs to be called "gb" not "uk". (There are other layouts that have km-nnnn.ini files that aren't declared in xrdp_keyboard.ini, so they might have the same bug, but I haven't tested that. This is analagous to the commits for the "ch" and "pl" layouts.) Test case: 1. Use a PC with the UK/GB keyboard layout. 2. Create /etc/xrdp/startwm.sh as follows: #!/bin/sh export LANG=en_GB.UTF-8 export MDM_LANG=en_GB.UTF-8 export XTERM_LOCALE=en_GB.UTF-8 xterm exit 0 3. Connect using rdesktop to localhost (from a session where the same environment variables are defined). 4. Test layout-specific keys such as: \ (backslash) | (bar) # (numbersign) ~ (asciitilde) £ (sterling: Shift-3) € (EuroSign: AltGr-4) These keys should produce the appropriate symbol but they don't. With the change in this commit the keys produce the correct symbol.
* Pick up the first section if given section(domain) doesn't match anythingKoichiro IWAO2017-06-071-25/+43
| | | | | | As some clinents (AFAIK Windows 10) always send domain name, the backend module is not selected properly. This causes the default usage with Windows 10 fails with 'xrdp_wm_log_msg: Section "XXX" not configured'.
* Constify MCS connectionTypeKoichiro IWAO2017-06-062-1/+10
|
* add TODO commentsKoichiro IWAO2017-05-311-0/+1
|
* instfiles: substitute directories in systemd service filesKoichiro IWAO2017-05-315-35/+55
| | | | | Do not expect prefix is always /usr. /usr/local is often used when users compile xrdp manually.
* configure: fix confusing help text about painter and librfxcodecKoichiro IWAO2017-05-231-2/+2
| | | | | | | | | | | | | | painter and librfxcodec are enabled by default. --disable-* options disables them. Before: --disable-painter Use included painter library (default: yes) --disable-rfxcodec Use included librfxcodec library (default: yes) After: --disable-painter Do not use included painter library (default: no) --disable-rfxcodec Do not use included librfxcodec library (default: no)
* ignore *.so (pulseaudio modules)Koichiro IWAO2017-05-161-0/+1
|
* pulse: respect XRDP_SOCKET_PATH environment variableKoichiro IWAO2017-05-163-6/+18
|
* sesman: pass xrdp socket path to user sessionKoichiro IWAO2017-05-161-0/+2
| | | | via environment variable.