[X2go-dev] x2go with likewise-open (ldap) questions
Ivan Boyadzhiev
ivancho.b at gmail.com
Wed Dec 15 15:19:21 CET 2010
>
> Bingo!
>
> This above is the exact problem.
>
> I cleaned all the folders. Then I started new x2goclient session. While the
> session was starting, I've created symbolic folder without "\" symbol, in
> the next moment when the folder with "\" appeared. As result I had 2 folders
> in ~/.x2go/ - the one with "\" and symlink without "\". Then the 3 files
> .pulse-cookie; .pulse-client.conf and cmdoutput appeared, as well as the
> sound in my client!
>
> That is the problem then. Can you, please, provide fix?
>
>
Hi hi,
although this issue is happening on the server side (located in Ubuntu
x2goserver), the code is actually sending from the client - reverse ssh.
I'm using x2goclient 3.01-13 on my Windows 7, as 3.01-14 doesn't work
properly. Still I've tested x2goclient 3.01-14 on VMWare Ubuntu, and it
doesn't solve this issue, infact, it doesn't have sound at all.
I couldn't find x2goclient 3.01-13 sources, but I have found 3.01-14
sources, so I made my investigations there.
Before we start dig in the source:
1. We have problem with creating 3 files (.pulse-cookie;
.pulse-client.conf, cmdoutput)
2. We have problem with not properly set environment (PULSE_CLIENTCONFIG)
All these errors are because:
1. These files are located in non-existing folder (without "\")
2. This environment is pointing to non-existing folder (without "\")
We have 2 solutions: to use everywhere DOMAIN\user, or DOMAINuser.
I think using everywhere DOMAIN\user is better, but it is complete up to you
as development to decide.
Another problem: I've checked, and because of very same problem, sshfs can't
map local folder with remote folder, because of non-existing
/tmp/DOMAINuser_media folder.
Deep in the code:
All sources are in the file: onmainwindow.cpp. Searching for .pulse-cookie
and PULSE_CLIENTCONFIG lead us to the first places
row 3,227:
if ( sndSystem==PULSE )
{
startSoundServer=false;
QString scmd;
if ( !sshSndTunnel )
scmd="echo \"default-server=`echo "
"$SSH_CLIENT | awk '{print $1}'`:"+
sndPort+
"\"> ~/.x2go/C-"+
resumingSession.sessionId+
"/.pulse-client.conf"
";echo \"cookie-file=.x2go/C-"+
resumingSession.sessionId+
"/.pulse-cookie"+
"\">> ~/.x2go/C-"+
resumingSession.sessionId+
"/.pulse-client.conf";
row 4,274:
cmd="PULSE_CLIENTCONFIG=~/.x2go/C-"+
resumingSession.sessionId+
"/.pulse-client.conf "+cmd;
Note: same variable: resumingSession.sessionId
Where is resumingSession initialise?
row 3,203:
if ( newSession )
{
QString sString=output.trimmed();
sString.replace ( '\n','|' );
host=resumingSession.server;
resumingSession=getNewSessionFromString ( sString );
getNewSessionFromString and sString:
row 4,160:
x2goSession ONMainWindow::getNewSessionFromString ( const QString& string )
{
QStringList lst=string.split ( '|' );
x2goSession s;
s.display=lst[0];
s.cookie=lst[1];
s.agentPid=lst[2];
s.sessionId=lst[3];
row 3,205:
sString comes from: output.trimmed();
Here is not possible for QT function trimmed() to remove "\" because this
howto:
http://doc.qt.nokia.com/4.7-snapshot/qstring.html#trimmed
Then where is output coming from? - From the Method, which is:
row 3,089:
void ONMainWindow::slot_retResumeSess ( bool result,
QString output,
sshProcess* proc )
Where is slot_retResumeSess called from? Various places, but I think it is
from here:
row 2,724:
connect ( proc,SIGNAL ( sshFinished ( bool, QString,sshProcess* ) ),
this,SLOT ( slot_retResumeSess ( bool, QString,
sshProcess* ) ) );
Still there is NO parameter given for second variable, which should come as
output?!
Still working on ...
Best Regards
Ivan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x2go.org/pipermail/x2go-dev/attachments/20101215/ac57df83/attachment.html>
More information about the x2go-dev
mailing list