Subject: Empty $USER env var makes x2go start an infinite loop

From: Jacques-Olivier Goussard <[email-masked]>
Date: Fri, 25 Jul 2014 11:45:34 -0400

Package: x2goserver
Version: x2goserver.x86_64 4.0.1.13-4.el6
OS: Centos 5

I accidentally stumbled upon this one: if the $USER env var is empty (in my
case that was a bug in my .bashrc that generated that), then X2GO doesn't
properly reject and log the connection attempt. The client freezes in
'Connecting' state and the sqllite scripts seem to enter an infinite loop
trying to do insert session.
Once I kill the x2gostartagent process, I get the list of calls in
x2gosqllitewrapper.pm and can see that the provided session ID is missing
the username part (as USER is empty).
Instead of being stuck in session insertion, the fact that USER is empty
should be caught earlier, properly reported in syslog and session cleanly
rejected.