Module Name: src
Committed By: christos
Date: Wed Aug 26 22:54:31 UTC 2020
Modified Files:
src/sys/kern: uipc_socket.c uipc_socket2.c uipc_usrreq.c
Log Message:
add socket info for user and group for unix sockets in fstat.
To generate a diff of this commit:
cvs rdiff -u -r1.290 -r1.291 src/sys/kern/uipc_socket.c
cvs rdiff -u -r1.137 -r1.138 src/sys/kern/uipc_socket2.c
cvs rdiff -u -r1.198 -r1.199 src/sys/kern/uipc_usrreq.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/kern/uipc_socket.c
diff -u src/sys/kern/uipc_socket.c:1.290 src/sys/kern/uipc_socket.c:1.291
--- src/sys/kern/uipc_socket.c:1.290 Sun Jun 7 11:19:05 2020
+++ src/sys/kern/uipc_socket.c Wed Aug 26 18:54:30 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: uipc_socket.c,v 1.290 2020/06/07 15:19:05 maxv Exp $ */
+/* $NetBSD: uipc_socket.c,v 1.291 2020/08/26 22:54:30 christos Exp $ */
/*
* Copyright (c) 2002, 2007, 2008, 2009 The NetBSD Foundation, Inc.
@@ -71,7 +71,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.290 2020/06/07 15:19:05 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.291 2020/08/26 22:54:30 christos Exp $");
#ifdef _KERNEL_OPT
#include "opt_compat_netbsd.h"
@@ -526,6 +526,7 @@ socreate(int dom, struct socket **aso, i
#endif
uid = kauth_cred_geteuid(l->l_cred);
so->so_uidinfo = uid_find(uid);
+ so->so_egid = kauth_cred_getegid(l->l_cred);
so->so_cpid = l->l_proc->p_pid;
/*
Index: src/sys/kern/uipc_socket2.c
diff -u src/sys/kern/uipc_socket2.c:1.137 src/sys/kern/uipc_socket2.c:1.138
--- src/sys/kern/uipc_socket2.c:1.137 Sat May 23 19:42:43 2020
+++ src/sys/kern/uipc_socket2.c Wed Aug 26 18:54:30 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: uipc_socket2.c,v 1.137 2020/05/23 23:42:43 ad Exp $ */
+/* $NetBSD: uipc_socket2.c,v 1.138 2020/08/26 22:54:30 christos Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -58,7 +58,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uipc_socket2.c,v 1.137 2020/05/23 23:42:43 ad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uipc_socket2.c,v 1.138 2020/08/26 22:54:30 christos Exp $");
#ifdef _KERNEL_OPT
#include "opt_ddb.h"
@@ -317,6 +317,7 @@ sonewconn(struct socket *head, bool sore
so->so_send = head->so_send;
so->so_receive = head->so_receive;
so->so_uidinfo = head->so_uidinfo;
+ so->so_egid = head->so_egid;
so->so_cpid = head->so_cpid;
/*
Index: src/sys/kern/uipc_usrreq.c
diff -u src/sys/kern/uipc_usrreq.c:1.198 src/sys/kern/uipc_usrreq.c:1.199
--- src/sys/kern/uipc_usrreq.c:1.198 Tue Apr 21 17:42:47 2020
+++ src/sys/kern/uipc_usrreq.c Wed Aug 26 18:54:30 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: uipc_usrreq.c,v 1.198 2020/04/21 21:42:47 ad Exp $ */
+/* $NetBSD: uipc_usrreq.c,v 1.199 2020/08/26 22:54:30 christos Exp $ */
/*-
* Copyright (c) 1998, 2000, 2004, 2008, 2009, 2020 The NetBSD Foundation, Inc.
@@ -96,7 +96,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uipc_usrreq.c,v 1.198 2020/04/21 21:42:47 ad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uipc_usrreq.c,v 1.199 2020/08/26 22:54:30 christos Exp $");
#ifdef _KERNEL_OPT
#include "opt_compat_netbsd.h"
@@ -898,6 +898,8 @@ unp_stat(struct socket *so, struct stat
unp->unp_ino = unp_ino++;
ub->st_atimespec = ub->st_mtimespec = ub->st_ctimespec = unp->unp_ctime;
ub->st_ino = unp->unp_ino;
+ ub->st_uid = so->so_uidinfo->ui_uid;
+ ub->st_gid = so->so_egid;
return (0);
}