cygwin + xwin in win7 as unprivileged user?

Jon TURNEY jon.turney@dronecode.org.uk
Fri Oct 8 16:21:00 GMT 2010


On 06/10/2010 22:15, davidstvz wrote:
> It's a multiuser windows 7 lab environment where the only thing I can count
> on is that the individual users will do whatever they want to.  I'm having
> to forcibly kill the x-windows process rather than just use a plain signal
> termination.  It's ignoring a vanilla taskkill.  I haven't tried kill from
> inside cygwin.

Yes, there seems to be a bug with Xwin that is doesn't respond correctly to 
being non-forcibly killed by taskkill.  Thanks for drawing my attention that :-)

>>> On 06/10/2010 16:10, davidstvz wrote:
>>>> I have done additional testing on this problem and it seems that the
>>>> first
>>>> user to login and run 'startxwin' owns all of the log and lock files and
>>>> this is what is causing the problem.  The first user can continue using
>>>> xwin
>>>> without issues, but no other users can do it after that.
>>>>
>>>> If someone would upgrade xwin to to make these file names unique for
>>>> each
>>>> user it should solve the problem.  Meanwhile, I'm envisioning several
>>>> workarounds.
>>>
>>> The log file issue is discussed and a workaround given at [1]
>>>
>>> The lock file should be removed on xwin exit, so should not be a problem
>>> unless xwin is crashing for you, in which case report that problem.
>>>
>>> Making the lock file name unique per user is a non-solution, as it
>>> prevents it
>>> from locking against multiple simultaneous uses of the same display
>>> number.

I should perhaps mention that if the existence of the lockfile really causes 
problems, you can always use the -nolock option.

>>> [1] http://cygwin.com/ml/cygwin-xfree/2010-08/msg00090.html
>>
>> Ah, I see how that is a non-solution.  I should stick to what I know.
>>
>> In any case, XWin is not crashing per se, instead when I type "exit" from
>> the initial xterminal and exit cygwin (or press the windows close button)
>> it
>> remains running in the background.  So to open it again, I have to first
>> terminate it from the task manager which I suppose qualifies as a crash.
>
> Is there some reason why you can't use the 'Exit' menu item from the
> right-click menu of the X icon in the system tray area?
>
> XWin should also respond by shutting down cleanly if you send it SIGTERM,
> e.g.
> 'killall XWin'
>
>> I've solved the problem by scheduling a task to delete the log and lock
>> files when any user logs in (well, to mostly delete; windows refuses to
>> let
>> me delete the socket file descriptor so I had to rename it to a random
>> number).

Likewise, you can avoid the creating of the unix domain socket with '-nolisten 
unix', but I think then you'll need to explicitly include localhost in DISPLAY 
environment variable setting (e.g. DISPLAY=localhost:0.0)

-- 
Jon TURNEY
Volunteer Cygwin/X X Server maintainer

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list