On 11/8/06, Sergio Polini <[EMAIL PROTECTED]> wrote:
> Sergio, try doing chmod +s on /emul/linux/x86/usr/lib/libaoss.so There is no such file!
Hold up. Previously you posted: ---- LD_PRELOAD=${exec_prefix}/lib/libaoss.so${LD_PRELOAD:+:$LD_PRELOAD} [...] [sp ~]$ ERROR: ld.so: object '/emul/linux/x86/usr/lib/libaoss.so' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/emul/linux/x86/usr/lib/libaoss.so' from LD_PRELOAD cannot be preloaded: ignored. ---- If this file doesn't exist, then *that* is why preloading doesn't work. If instead you have "emul/.../libaoss.so.0.0.0", then change the LD_PRELOAD in aoss32 to: LD_PRELOAD=${exec_prefix}/lib/libaoss.so.0.0.0${LD_PRELOAD:+:$LD_PRELOAD} I would also add an echo for debugging after that: echo "running with LD_PRELOAD=$LD_PRELOAD"
i) I can't understand why root can't open /dev/dsp when running vmwarearts. I can only guess that aoss works better ;-)
Since preloading appears to work in this case (no error from that), I am going to assume that this is actually a failure to contact artsd as root. Note that the effect of preloading is to fool vmware into contacting artsd instead of opening /dev/dsp...so the error can actually be slightly misreported. Are you actually logged into KDE as root, or as your normal user? What happens when you run "artsplay /usr/kde/3.5/share/sounds/KDE_Startup_1.ogg" as root? under your user account?
ii) suid and sgid bits look insignificant (!) look very interesting, because, as far as I can understand.... testing ~ # cd /opt/vmware/workstation/bin
[snip]
-rwxr-xr-x 1 root root 4570 Nov 1 00:20 vmware*
This is a shell script (your clue is the size). The actual binary that executes the virtual machine (and this needs to produce sound) is in /opt/vmware/workstation/lib/bin, and is named vmware-vmx. It is almost certainly setuid. (BTW, I should have said "vmware _uses_ setuid executables")
my vmware *is not* setuid! However, nothing changes if I do chmod +s on libaoss *and* vmware:
No, don't make the shell script setuid. That would be a security hole.
sound only works when I am root, otherwise libaoss is not preloaded.
I really don't understand why aoss would only work as root. I suspect a path or environment issue here, possibly a different library is actually being loaded. I suspect this has more to do with the actual path to the library being loaded as root versus your user account. I'm going to try installing workstation on my amd64 desktop and see what I get. -Richard -- gentoo-user@gentoo.org mailing list