[FreeNX-kNX] nxagent session gets lost, user gets new session even though one already exists

Mario Becroft mb at gem.win.co.nz
Sun Jan 18 12:34:44 UTC 2009


Update:

Can't repeat the problem on anything but one particular user's
laptop. Probably has to do with the fact that it is running Windows
Vista--all the other machines I have access to run Linux. Unfortunately
I won't have access to this machine again for a week.

I checked the state of things at the point where you have resumed the
session and it is running fine but no longer listed in nxserver --list.

The session file is moved into /usr/NX/var/db/closed at the time when
you resumed the session. The only place where this can occur is in the
session_close() function in nxserver. Also, the /tmp/.nX????.lock file
is removed. So we can say that when you resume the session (apparently
successfully), session_close is called.

The only place where this is called is from server_nxnode_start_wait()
(and when you use --force-terminate, which I have not used). I am not at
all sure what this function does. Does it invoke the nxagent and then
remain in this function for the duration of the nxagent process? I don't
think that is what it does, but if not, then I can't see how
session_close() can be getting called at the point where you resume the
session. (Resuming does appear to involve server_nxnode_start_wait(),
but a different part of it that never calls session_close(), if I am
reading it right).

Could someone please give me an overview of what this code does?

-- 
Mario Becroft <mb at gem.win.co.nz>



More information about the FreeNX-kNX mailing list