uipc_usrreq: revert addition of EMPTYPATH for bindat(2)

The caller wants the parent vnode, which cannot be provided for emptypath
lookups.

Reported and reviewed by:	markj
Fixes:	12c590a9ab ("bindat(2)/connectat(2): allow implicit EMPTYPATH for unix domain sockets")
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D57448
This commit is contained in:
Konstantin Belousov
2026-06-04 20:26:09 +03:00
parent b551429ad6
commit 453968c78d
2 changed files with 3 additions and 6 deletions
+1 -3
View File
@@ -447,11 +447,9 @@ The other functionality of the returned file descriptor is limited to
the following descriptor-level operations:
.Pp
.Bl -tag -width __acl_aclcheck_fd -offset indent -compact
.It Xr bindat 2
for unix domain socket
.Pq see Xr unix 4
.It Xr connectat 2
for unix domain socket
.Pq see Xr unix 4
.It Xr fcntl 2
but advisory locking is not allowed
.It Xr dup 2
+2 -3
View File
@@ -612,9 +612,8 @@ uipc_bindat(int fd, struct socket *so, struct sockaddr *nam, struct thread *td)
buf[namelen] = 0;
restart:
NDINIT_ATRIGHTS(&nd, CREATE, NOFOLLOW | LOCKPARENT | NOCACHE |
EMPTYPATH, UIO_SYSSPACE, buf, fd, cap_rights_init_one(&rights,
CAP_BINDAT));
NDINIT_ATRIGHTS(&nd, CREATE, NOFOLLOW | LOCKPARENT | NOCACHE,
UIO_SYSSPACE, buf, fd, cap_rights_init_one(&rights, CAP_BINDAT));
/* SHOULD BE ABLE TO ADOPT EXISTING AND wakeup() ALA FIFO's */
error = namei(&nd);
if (error)