summaryrefslogtreecommitdiff
path: root/hurd
diff options
context:
space:
mode:
authorJustus Winter <4winter@informatik.uni-hamburg.de>2014-11-12 15:30:18 +0100
committerJustus Winter <4winter@informatik.uni-hamburg.de>2014-12-10 13:35:17 +0100
commit808073c49814b415b7ad6226a3e8c95bb1dbc277 (patch)
tree6193ade4490de72f79b01e20082e00a3d1ea38ba /hurd
parentd14748b5888d697583b6dc9df2feed1f09f92a4c (diff)
hurd: add `proc_make_task_namespace'
Add a new RPC to the process protocol to create task namespaces. These can be used by an unprivileged process to claims the responsibility to manage all tasks in this namespace. Any task created in this namespace will automatically be declared a child of the root process, and a `mach_notify_new_task' message is sent to a given port. If the root process dies, the proc server will terminate all tasks in the namespace. * hurd/process.defs (proc_make_task_namespace): New RPC.
Diffstat (limited to 'hurd')
-rw-r--r--hurd/process.defs11
1 files changed, 10 insertions, 1 deletions
diff --git a/hurd/process.defs b/hurd/process.defs
index 498faba8..4ceb69e2 100644
--- a/hurd/process.defs
+++ b/hurd/process.defs
@@ -1,5 +1,5 @@
/* Definitions for process server interface
- Copyright (C) 1992,93,94,95,96,97,2001,2013 Free Software Foundation
+ Copyright (C) 1992,93,94,95,96,97,2001,13,14 Free Software Foundation
This file is part of the GNU Hurd.
@@ -404,3 +404,12 @@ routine proc_get_code (
process: process_t;
out start_code: vm_address_t;
out end_code: vm_address_t);
+
+/* Create a new task namespace. PROCESS claims the responsibility to
+ manage all tasks in this namespace. Any task created in this
+ namespace will automatically be declared a child of PROCESS, and a
+ `mach_notify_new_task' message is sent to NOTIFY. If PROCESS dies,
+ the proc server will terminate all tasks in the namespace. */
+routine proc_make_task_namespace (
+ process: process_t;
+ notify: mach_port_send_t);