FreeRDP does not play well with xinit

Bug #998898 reported by Kevin Soviero
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ltsp (Ubuntu)
Fix Released
Low
Alkis Georgopoulos

Bug Description

Both FreeRDP and xinit make use of the "--" object. With FreeRDP it comes before the IP address. With xinit it comes before the "X" options.

Imagine the following scenario for a FreeRDP thin client:

xfreerdp -a 16 -u '' -x m -z --disable-wallpaper --disable-full-window-drag --disable-menu-animations --disable-theming --plugin rdpsnd --plugin rdpdr --data disk:Devices:/media/root -- 10.0.0.197

If you were to enter the above line into a "SCREEN_XX" line, it would cause that screen not to load... Not a good thing.

== What happens: ==

Any screen lines containing a "--" (now common with FreeRDP's CLI syntax) causes the respective screen not to load.

== What SHOULD happen: ==

The screen.d script for xfreerdp should have some way of accounting for "--" appearing within a given command and continue to function with it.

Since FreeRDP is the new default RDP client for Ubuntu's LTSP implementation, this needs to be corrected.

Revision history for this message
Kevin Soviero (ksoviero) wrote :

I forgot to mention the OS details:

# lsb_release -a

Distributor ID: Ubuntu
Description: Ubuntu 12.04 LTS
Release: 12.04
Codename: precise

# uname -a

Linux ltsp 3.2.0-24-generic #37-Ubuntu SMP Wed Apr 25 08:43:22 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Revision history for this message
Alkis Georgopoulos (alkisg) wrote :

There is some code in screen.d/xfreerdp that takes care of '--' and at one point at least it was working, could you try without the -u '' to verify that the problem isn't the empty username?
Also verify that xfreerdp is installed in the chroot instead of rdesktop.

Changed in ltsp (Ubuntu):
status: New → Incomplete
Revision history for this message
Alkis Georgopoulos (alkisg) wrote :

And also try with:
SCREEN_07="xfreerdp -a 16 -u \'\' -x m -z --disable-wallpaper --disable-full-window-drag --disable-menu-animations --disable-theming --plugin rdpsnd --plugin rdpdr --data disk:Devices:/media/root -- 10.0.0.197"

Revision history for this message
Kevin Soviero (ksoviero) wrote :

By editing the screen.d/xfreerdp file and redirecting stdout to a file, I got the following output:

X.Org X Server 1.11.3
Release Date: 2011-12-16
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.42-23-generic i686 Ubuntu
Current Operating System: Linux ltsp109 3.2.0-24-generic #37-Ubuntu SMP Wed Apr 25 08:43:52 UTC 2012 i686
Kernel command line: ro initrd=initrd.img root=/dev/nbd0 init=/sbin/init-ltsp vt.handoff=7 nbdroot=:ltsp_i386 BOOT_IMAGE=vmlinuz
Build Date: 20 April 2012 05:12:21AM
xorg-server 2:1.11.4-0ubuntu10.1 (For technical support please see http://www.ubuntu.com/support)
Current version of pixman: 0.24.4
 Before reporting problems, check http://wiki.x.org
 to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
 (++) from command line, (!!) notice, (II) informational,
 (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.2.log", Time: Sun May 13 23:44:45 2012
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(EE) Failed to load module "nvidia" (module does not exist, 0)
(EE) Failed to load module "nv" (module does not exist, 0)
(EE) Failed to load module "nvidia" (module does not exist, 0)
(EE) Failed to load module "nv" (module does not exist, 0)
resize called 1680 1050
xauth: file /var/run/xauth-:2-sIHw3dcZs does not exist
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
[and so on]

Revision history for this message
Kevin Soviero (ksoviero) wrote :

Note, ignore the "nvidia" stuff, that's unrelated... Should be unrelated at least.

Revision history for this message
Alkis Georgopoulos (alkisg) wrote :

I think that your problem is completely unrelated to the xfreerdp script. It might be a problem with your X crashing, or a problem in /usr/share/ltsp/xinitrc.d/I00-xauth.

Can you try with only the following in your lts.conf?
[Default]
SCREEN_07=xterm

Revision history for this message
Kevin Soviero (ksoviero) wrote :

Um... It "seems" to work. I am not sure what it is supposed to look like, but it shows a terminal in the top left corner with a prompt for "root@ltsp<ip>:/# "...

Any other ideas? I really think this is related to xfreerdp, because both freerdp and rdesktop are installed, and rdesktop works fine, as does LDM.

Note: This was broken before I installed rdesktop too... So, not related.

Revision history for this message
Alkis Georgopoulos (alkisg) wrote :

Does your xfreerdp command line work if you enter it on that xterm?
Also, did you check if it works when removing the -u '' part?

Revision history for this message
Stefan Breitegger (tuxstef) wrote :

Hello,

It works without the -u '' part and not without the:

export HOME=${HOME:-/root}

in the /opt/ltsp/i386/usr/share/ltsp/xinitrc file!

Have fun!

Revision history for this message
Alkis Georgopoulos (alkisg) wrote :

The LTSP workaround was committed in http://bazaar.launchpad.net/~ltsp-upstream/ltsp/ltsp-trunk/revision/2334 (2012-06-12).

For the freerdp bug report (fix released there too), see https://bugs.launchpad.net/ubuntu/+source/freerdp/+bug/1011790.

Changed in ltsp (Ubuntu):
assignee: nobody → Alkis Georgopoulos (alkisg)
importance: Undecided → Low
status: Incomplete → Fix Committed
Revision history for this message
Alkis Georgopoulos (alkisg) wrote :

Fix released in LTSP 5.4.1.

Changed in ltsp (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Kevin Soviero (ksoviero) wrote :

Will this fix make it's way into Ubuntu 12.04?

Revision history for this message
Alkis Georgopoulos (alkisg) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.