Hello,

After some research and alot more trial and error, I found that there are multiple Issues:
1. the vmblock filesystem is never started
2. the file /usr/bin/vmware-user-suid-wrapper is missing the apparently critical suid bit (I never knew about this bit before) 3. the vmtoolsd instances spawned by vmware-user-suid-wrapper dont handle SIGUSR1 and SIGUSR2 as they should.

Maybe its good to exlpain that there are multiple vmtoolsd instances, one is the system daemon start/stopped by init. the others are started via X11/Gnome autostart - vmware-user-suid-wrapper creates a file-descriptor for the vmblock device (with elevated rights), then starts a vmtoolsd user instance which uses this descriptor.
So there is the system daemon and any number of user daemons.

For Point 1 I attached a fixed etc/init.d/open-vm-tools. It has some things commented out because of Point 3.

Point 2 is easily fixed with chmod 04555 /usr/bin/vmware-user-suid-wrapper.

Point 3 is likely for upstream?
The issue here is that you cant stop/start the vmblock filesystem as long as anyone is using it. Supposedly you would send a signal to the user daemons, telling them to give up any references to it - but its not handled and instead the user daemon terminates.

As it its now Drag and Drop works, but stopping the system daemon will fail as vmblock cant be stopped.



And another bug would be that the vmxnet driver is not picked up automatically, for this to work you would need to add the module to the initital ramdisk. Along with other m0dules which should have the same problem, but I cant verify it:

vmxnet3
vmw_pvscsi
vmxnet

Attachment: open-vm-tools
Description: Binary data

Reply via email to