Skip site navigation (1)Skip section navigation (2)
To:        Konstantin Belousov <kib@freebsd.org>
Cc:        src-committers@freebsd.org, dev-commits-src-all@freebsd.org,  dev-commits-src-main@freebsd.org
Subject:   Re: git: 453968c78d27 - main - uipc_usrreq: revert addition of EMPTYPATH for bindat(2)

index | | raw e-mail

[-- Attachment #1 --]
Hello Konstantin.

I'm geting a testunit failure on devel/aws-c-io reported at
https://github.com/awslabs/aws-c-io/issues/803 that might be related to
this change.

Any clues how to deal with it?

Thanks,

Konstantin Belousov <kib@freebsd.org> escreveu (quinta, 4/06/2026 à(s)
18:55):

> The branch main has been updated by kib:
>
> URL:
> https://cgit.FreeBSD.org/src/commit/?id=453968c78d27ed5c90562a1178f34fe8d616bf40
>
> commit 453968c78d27ed5c90562a1178f34fe8d616bf40
> Author:     Konstantin Belousov <kib@FreeBSD.org>
> AuthorDate: 2026-06-04 17:26:09 +0000
> Commit:     Konstantin Belousov <kib@FreeBSD.org>
> CommitDate: 2026-06-04 17:55:11 +0000
>
>     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:  12c590a9abd7 ("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
> ---
>  lib/libsys/open.2      | 4 +---
>  sys/kern/uipc_usrreq.c | 5 ++---
>  2 files changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/lib/libsys/open.2 b/lib/libsys/open.2
> index defc593b15ce..7915f7e8ef0a 100644
> --- a/lib/libsys/open.2
> +++ b/lib/libsys/open.2
> @@ -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
> diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c
> index a798aaf4f871..920588627914 100644
> --- a/sys/kern/uipc_usrreq.c
> +++ b/sys/kern/uipc_usrreq.c
> @@ -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)
>
>

-- 
Nuno Teixeira
FreeBSD UNIX:  <eduardo@FreeBSD.org>   Web:  https://FreeBSD.org

[-- Attachment #2 --]
<div dir="ltr"><div><div><div>Hello Konstantin.<br><br></div>I&#39;m geting a testunit failure on devel/aws-c-io reported at <a href="https://github.com/awslabs/aws-c-io/issues/803">https://github.com/awslabs/aws-c-io/issues/803</a>; that might be related to this change.<br><br></div>Any clues how to deal with it?<br><br></div>Thanks,</div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">Konstantin Belousov &lt;<a href="mailto:kib@freebsd.org">kib@freebsd.org</a>&gt; escreveu (quinta, 4/06/2026 à(s) 18:55):<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">The branch main has been updated by kib:<br>
<br>
URL: <a href="https://cgit.FreeBSD.org/src/commit/?id=453968c78d27ed5c90562a1178f34fe8d616bf40" rel="noreferrer" target="_blank">https://cgit.FreeBSD.org/src/commit/?id=453968c78d27ed5c90562a1178f34fe8d616bf40</a><br>;
<br>
commit 453968c78d27ed5c90562a1178f34fe8d616bf40<br>
Author:     Konstantin Belousov &lt;kib@FreeBSD.org&gt;<br>
AuthorDate: 2026-06-04 17:26:09 +0000<br>
Commit:     Konstantin Belousov &lt;kib@FreeBSD.org&gt;<br>
CommitDate: 2026-06-04 17:55:11 +0000<br>
<br>
    uipc_usrreq: revert addition of EMPTYPATH for bindat(2)<br>
<br>
    The caller wants the parent vnode, which cannot be provided for emptypath<br>
    lookups.<br>
<br>
    Reported and reviewed by:       markj<br>
    Fixes:  12c590a9abd7 (&quot;bindat(2)/connectat(2): allow implicit EMPTYPATH for unix domain sockets&quot;)<br>
    Sponsored by:   The FreeBSD Foundation<br>
    MFC after:      1 week<br>
    Differential revision:  <a href="https://reviews.freebsd.org/D57448" rel="noreferrer" target="_blank">https://reviews.freebsd.org/D57448</a><br>;
---<br>
 lib/libsys/open.2      | 4 +---<br>
 sys/kern/uipc_usrreq.c | 5 ++---<br>
 2 files changed, 3 insertions(+), 6 deletions(-)<br>
<br>
diff --git a/lib/libsys/open.2 b/lib/libsys/open.2<br>
index defc593b15ce..7915f7e8ef0a 100644<br>
--- a/lib/libsys/open.2<br>
+++ b/lib/libsys/open.2<br>
@@ -447,11 +447,9 @@ The other functionality of the returned file descriptor is limited to<br>
 the following descriptor-level operations:<br>
 .Pp<br>
 .Bl -tag -width __acl_aclcheck_fd -offset indent -compact<br>
-.It Xr bindat 2<br>
-for unix domain socket<br>
-.Pq see Xr unix 4<br>
 .It Xr connectat 2<br>
 for unix domain socket<br>
+.Pq see Xr unix 4<br>
 .It Xr fcntl 2<br>
 but advisory locking is not allowed<br>
 .It Xr dup 2<br>
diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c<br>
index a798aaf4f871..920588627914 100644<br>
--- a/sys/kern/uipc_usrreq.c<br>
+++ b/sys/kern/uipc_usrreq.c<br>
@@ -612,9 +612,8 @@ uipc_bindat(int fd, struct socket *so, struct sockaddr *nam, struct thread *td)<br>
        buf[namelen] = 0;<br>
<br>
 restart:<br>
-       NDINIT_ATRIGHTS(&amp;nd, CREATE, NOFOLLOW | LOCKPARENT | NOCACHE |<br>
-           EMPTYPATH, UIO_SYSSPACE, buf, fd, cap_rights_init_one(&amp;rights,<br>
-           CAP_BINDAT));<br>
+       NDINIT_ATRIGHTS(&amp;nd, CREATE, NOFOLLOW | LOCKPARENT | NOCACHE,<br>
+           UIO_SYSSPACE, buf, fd, cap_rights_init_one(&amp;rights, CAP_BINDAT));<br>
 /* SHOULD BE ABLE TO ADOPT EXISTING AND wakeup() ALA FIFO&#39;s */<br>
        error = namei(&amp;nd);<br>
        if (error)<br>
<br>
</blockquote></div><div><br clear="all"></div><br><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><font color="#888888">Nuno Teixeira</font></div><div><div><font color="#888888">
FreeBSD UNIX:  &lt;eduardo@FreeBSD.org&gt;   Web:  <a href="https://FreeBSD.org" rel="noreferrer" target="_blank">https://FreeBSD.org</a><br></font></div></div></div></div>;
home | help