Access Control Functions

Karl Bielefeldt kbielefe at
Fri Nov 30 19:59:25 CST 2001

I am new to open source development and to the wine project so please 
forgive me for sounding like a newbie.  I think wine is great and the key to 
the growth of Linux in the desktop market.

I decided to begin my efforts by debugging the installation of MS Money 2001 
(my wife's must-have MS program) on a completely non-windows box.  This led 
to needing to install the msiexec installer (instmsia.exe, available from MS 

Everything works okay until we get to the access control functions.  
advapi32.OpenProcessToken calls ntdll.OpenProcessToken, which is just a 
stub.  Now, as far as I can tell, the stubs default to the least restrictive 
set of permissions, which I believe is fine for our purposes.  The problem 
comes when the program calls  kernel32.CloseHandle on the non-existent 
handle that was returned by the OpenProcessToken stub.

Somebody please stop me if there is an easier way of solving this problem.

It looks like we at least need to create some sort of dummy handle that can 
be removed by kernel32.CloseHandle without causing an error.  To do this we 
would need to add an open_process_token request handler to the wineserver 
(perhaps in a new file server/access.c).  Another alternative would be to 
create an open_dummy_handle request handler in server/handle.c that could be 
used for any generic dummy handle.  The advantage of the first method is 
that if someone decides to implement  all the access control functions 
properly, the framework is already in place.  Probably some combination of 
the two is best.

I am willing to do the coding myself, but I'm unsure of the procedures for 
open source development.  How do you decide what changes are to be made, how 
do you submit your changes, how do you make sure you don't undo what someone 
else did, and things like that?  I also am having trouble finding 
documentation on the make_requests tool.

Thanks for tolerating my newbieness.  I'm looking forward to being able to 
start contributing to this great project.

--Karl Bielefeldt
kbielefe at

Get your FREE download of MSN Explorer at

More information about the wine-devel mailing list