aboutsummaryrefslogtreecommitdiff
path: root/pflocal/mig-mutate.h
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2020-11-11 10:04:27 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2020-11-11 10:16:10 +0100
commit594cfb7586089dfefab60574495baf6ed4048c1d (patch)
tree97773e8d8a2fa39b75e546aed1432868ce049518 /pflocal/mig-mutate.h
parent042feca78f2360e63929f3aa425f6468ed11c84a (diff)
downloadhurd-594cfb7586089dfefab60574495baf6ed4048c1d.tar.gz
hurd-594cfb7586089dfefab60574495baf6ed4048c1d.tar.bz2
hurd-594cfb7586089dfefab60574495baf6ed4048c1d.zip
pflocal: Record socket creator so io_stat can return it
* pflocal/sock.h (struct sock): Add uid and gid fields. * pflocal/sock.c (sock_create): Set uid and gid to 0. * pflocal/mig-mutate.h (SOCKET_IMPORTS): Import ../libtrivfs/mig-decls.h. (PF_INTRAN, PF_INTRAN_PAYLOAD, PF_DESTRUCTOR): New macros. * pflocal/pf.c: Include hurd/trivfs.h. (S_socket_create): Update parameters. Set sock's uid and gid fields according to pf->user. * pflocal/io.c (S_io_stat): Set st_uid and st_gid according to pf.
Diffstat (limited to 'pflocal/mig-mutate.h')
-rw-r--r--pflocal/mig-mutate.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/pflocal/mig-mutate.h b/pflocal/mig-mutate.h
index 0743f336..99be2a4f 100644
--- a/pflocal/mig-mutate.h
+++ b/pflocal/mig-mutate.h
@@ -39,4 +39,10 @@
#define ADDRPORT_INTRAN_PAYLOAD addr_t begin_using_addr_payload
#define ADDRPORT_DESTRUCTOR end_using_addr_port (addr_t)
-#define SOCKET_IMPORTS import "mig-decls.h";
+#define SOCKET_IMPORTS \
+ import "mig-decls.h"; \
+ import "../libtrivfs/mig-decls.h"; \
+
+#define PF_INTRAN trivfs_protid_t trivfs_begin_using_protid (pf_t)
+#define PF_INTRAN_PAYLOAD trivfs_protid_t trivfs_begin_using_protid_payload
+#define PF_DESTRUCTOR trivfs_end_using_protid (trivfs_protid_t)