unix domain sockets in linux emulation

Dan Nelson dnelson at allantgroup.com
Fri Oct 15 14:28:06 PDT 2004


In the last episode (Oct 15), Andriy Gapon said:
> It seems that pathname "prefixing" is not performed for unix domain
> socket calls in linux emulation e.g. "/compat/linux" prefix is never
> tried to be prepended for bind() and connect() calls.

Sounds like a bug to me.  That would also make it difficult for linux
apps to talk via unix sockets to native apps.  The quick fix is to
remove /compat/linux/tmp, so everything gets created in the real /tmp
directory.  I do this on all my machines anyway, since it simplifies
troubleshooting and /tmp cleanup scripts.  The full fix would probably
be to add a call to LCONVPATH*() somplace inside so_sa_get(), so paths
are converted just like with all the other syscalls.

-- 
	Dan Nelson
	dnelson at allantgroup.com


More information about the freebsd-emulation mailing list