[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230109011512.15267-1-kuniyu@amazon.com>
Date: Mon, 9 Jan 2023 10:15:12 +0900
From: Kuniyuki Iwashima <kuniyu@...zon.com>
To: <mirsad.todorovac@....hr>
CC: <davem@...emloft.net>, <edumazet@...gle.com>, <fw@...len.de>,
<kuba@...nel.org>, <kuniyu@...zon.co.jp>, <kuniyu@...zon.com>,
<linux-kernel@...r.kernel.org>, <linux-kselftest@...r.kernel.org>,
<mirsad.todorovac@....unizg.hr>, <netdev@...r.kernel.org>,
<pabeni@...hat.com>, <shuah@...nel.org>
Subject: Re: [PATCH net v4] af_unix: selftest: Fix the size of the parameter to connect()
From: Mirsad Goran Todorovac <mirsad.todorovac@....hr>
Date: Sat, 7 Jan 2023 04:40:20 +0100 (CET)
> From: Mirsad Goran Todorovac <mirsad.todorovac@....unizg.hr>
>
> Adjust size parameter in connect() to match the type of the parameter, to
> fix "No such file or directory" error in selftests/net/af_unix/
> test_oob_unix.c:127.
>
> The existing code happens to work provided that the autogenerated pathname
> is shorter than sizeof (struct sockaddr), which is why it hasn't been
> noticed earlier.
>
> Visible from the trace excerpt:
>
> bind(3, {sa_family=AF_UNIX, sun_path="unix_oob_453059"}, 110) = 0
> clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7fa6a6577a10) = 453060
> [pid <child>] connect(6, {sa_family=AF_UNIX, sun_path="unix_oob_45305"}, 16) = -1 ENOENT (No such file or directory)
>
> BUG: The filename is trimmed to sizeof (struct sockaddr).
>
> Cc: "David S. Miller" <davem@...emloft.net>
> Cc: Eric Dumazet <edumazet@...gle.com>
> Cc: Jakub Kicinski <kuba@...nel.org>
> Cc: Paolo Abeni <pabeni@...hat.com>
> Cc: Shuah Khan <shuah@...nel.org>
> Cc: Kuniyuki Iwashima <kuniyu@...zon.co.jp>
> Cc: Florian Westphal <fw@...len.de>
> Reviewed-by: Florian Westphal <fw@...len.de>
> Fixes: 314001f0bf92 ("af_unix: Add OOB support")
> Signed-off-by: Mirsad Goran Todorovac <mirsad.todorovac@....unizg.hr>
Reviewed-by: Kuniyuki Iwashima <kuniyu@...zon.com>
You can check the current status here.
https://patchwork.kernel.org/project/netdevbpf/patch/alpine.DEB.2.21.2301070437400.26826@domac.alu.hr/
PS: you may want to check config not to send a mail as multipart next time.
Thank you,
Kuniyuki
> ---
>
> The patch is generated against the "vanilla" Torvalds mainline tree 6.2-rc2.
> (Tested and applies against the net.git tree.)
>
>
> tools/testing/selftests/net/af_unix/test_unix_oob.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/net/af_unix/test_unix_oob.c b/tools/testing/selftests/net/af_unix/test_unix_oob.c
> index b57e91e1c3f2..532459a15067 100644
> --- a/tools/testing/selftests/net/af_unix/test_unix_oob.c
> +++ b/tools/testing/selftests/net/af_unix/test_unix_oob.c
> @@ -124,7 +124,7 @@ void producer(struct sockaddr_un *consumer_addr)
>
> wait_for_signal(pipefd[0]);
> if (connect(cfd, (struct sockaddr *)consumer_addr,
> - sizeof(struct sockaddr)) != 0) {
> + sizeof(*consumer_addr)) != 0) {
> perror("Connect failed");
> kill(0, SIGTERM);
> exit(1);
>
> --
> Mirsad Goran Todorovac
> Sistem inženjer
> Grafički fakultet | Akademija likovnih umjetnosti
> Sveučilište u Zagrebu
>
> System engineer
> Faculty of Graphic Arts | Academy of Fine Arts
> University of Zagreb, Republic of Croatia
> The European Union
Powered by blists - more mailing lists