]> CyberLeo.Net >> Repos - FreeBSD/stable/9.git/commit
MFC r232317:
authortrociny <trociny@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Tue, 24 Apr 2012 19:08:40 +0000 (19:08 +0000)
committertrociny <trociny@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Tue, 24 Apr 2012 19:08:40 +0000 (19:08 +0000)
commitddbfe3a2e2f0ae22a214dfe84dc0ff619be30566
tree0ae2e448ba1bd77ea52c8a5355f8a920cfd02637
parente367c0bf1d278f51ade00a2b3b2bfff515fd33b6
MFC r232317:

Introduce VOP_UNP_BIND(), VOP_UNP_CONNECT(), and VOP_UNP_DETACH()
operations for setting and accessing vnode's v_socket field.

The operations are necessary to implement proper unix socket handling
on layered file systems like nullfs(5).

This change fixes the long standing issue with nullfs(5) being in that
unix sockets did not work between lower and upper layers: if we bound
to a socket on the lower layer we could connect only to the lower
path; if we bound to the upper layer we could connect only to the
upper path. The new behavior is one can connect to both the lower and
the upper paths regardless what layer path one binds to.

PR: kern/51583, kern/159663
Suggested by: kib
Reviewed by: arch

git-svn-id: svn://svn.freebsd.org/base/stable/9@234660 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
UPDATING
sys/kern/uipc_usrreq.c
sys/kern/vfs_default.c
sys/kern/vnode_if.src
sys/sys/vnode.h