git: c3dfbacbe9d3 - stable/13 - linux(4): Copyout actual size of addr to the user space in accept().
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 17 Jun 2022 19:39:09 UTC
The branch stable/13 has been updated by dchagin:
URL: https://cgit.FreeBSD.org/src/commit/?id=c3dfbacbe9d3474859c3ed50eabd5b026280c43f
commit c3dfbacbe9d3474859c3ed50eabd5b026280c43f
Author: Dmitry Chagin <dchagin@FreeBSD.org>
AuthorDate: 2022-04-11 20:33:27 +0000
Commit: Dmitry Chagin <dchagin@FreeBSD.org>
CommitDate: 2022-06-17 19:33:52 +0000
linux(4): Copyout actual size of addr to the user space in accept().
Differential Revision: https://reviews.freebsd.org/D34727
(cherry picked from commit 673bce11cedde3cc33c154d2b8e2d41139dcef72)
---
sys/compat/linux/linux_socket.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/sys/compat/linux/linux_socket.c b/sys/compat/linux/linux_socket.c
index 622e25651dbb..d7e17596fde1 100644
--- a/sys/compat/linux/linux_socket.c
+++ b/sys/compat/linux/linux_socket.c
@@ -1046,11 +1046,9 @@ linux_accept_common(struct thread *td, int s, l_uintptr_t addr,
if (len != 0) {
error = linux_copyout_sockaddr(sa, PTRIN(addr), len);
-
- /*
- * XXX: We should also copyout the len, shouldn't we?
- */
-
+ if (error == 0)
+ error = copyout(&len, PTRIN(namelen),
+ sizeof(len));
if (error != 0) {
fdclose(td, fp, td->td_retval[0]);
td->td_retval[0] = 0;