summaryrefslogtreecommitdiff
path: root/hurd/rpc.h
diff options
context:
space:
mode:
authorneal <neal>2007-11-29 10:15:28 +0000
committerneal <neal>2007-11-29 10:15:28 +0000
commita14f94e6ff0a77c2297d784bad6bbf95842ee8fe (patch)
tree54f926200b448b55c75345db6c20d92e3ea00589 /hurd/rpc.h
parent12d97bb06786ed9dececa979e4abb3aad8cc5ff4 (diff)
hurd/
2007-11-29 Neal H. Walfield <neal@gnu.org> * activity.h: Include <hurd/addr.h>. Add method id RM_activity_properties. (ACTIVITY_PROPERTIES_PRIORITY_SET): Define. (ACTIVITY_PROPERTIES_WEIGHT_SET): Likewise. (ACTIVITY_PROPERTIES_STORAGE_QUOTA_SET): Likewise. (ACTIVITY_PROPERTIES_ALL_SET): Likewise. (activity_properties): New declaration. * rpc.h (RPC53): New macro. viengoos/ 2007-11-29 Neal H. Walfield <neal@gnu.org> * server.c (OBJECT_): Just pass REQUIRE_WRITABLE on to CAP_. (server_loop): Save the capability that identifies the principal. Implement the RM_activity_properties method. * rm.h (rm_method_id_string): Handle the RM_activity_properties case. ruth/ 2007-11-29 Neal H. Walfield <neal@gnu.org> * ruth.c (main): Add test for activity_properties.
Diffstat (limited to 'hurd/rpc.h')
-rw-r--r--hurd/rpc.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/hurd/rpc.h b/hurd/rpc.h
index 0a24409..11764a2 100644
--- a/hurd/rpc.h
+++ b/hurd/rpc.h
@@ -494,6 +494,36 @@
RPCSTORE(otype2, oarg2) \
})
+/* RPC with 5 in parameters and 3 out parameters. */
+#define RPC53(id, type1, arg1, \
+ type2, arg2, \
+ type3, arg3, \
+ type4, arg4, \
+ type5, arg5, \
+ otype1, oarg1, \
+ otype2, oarg2, \
+ otype3, oarg3) \
+ RPCX(id, \
+ (RPC_TARGET_ARG_ type1 arg1, type2 arg2, type3 arg3, \
+ type4 arg4, type5 arg5, \
+ otype1 oarg1, otype2 oarg2, otype3 oarg3), \
+ (l4_msg_t *msg, type1 arg1, type2 arg2, type3 arg3, \
+ type4 arg4, type5 arg5), \
+ (&msg, arg1, arg2, arg3, arg4, arg5), \
+ {RPCLOAD(type1, arg1) \
+ RPCLOAD(type2, arg2) \
+ RPCLOAD(type3, arg3) \
+ RPCLOAD(type4, arg4) \
+ RPCLOAD(type5, arg5) \
+ }, \
+ (l4_msg_t *msg, otype1 oarg1, otype2 oarg2, otype3 oarg3), \
+ (&msg, oarg1, oarg2, oarg3), \
+ { \
+ RPCSTORE(otype1, oarg1) \
+ RPCSTORE(otype2, oarg2) \
+ RPCSTORE(otype3, oarg3) \
+ })
+
/* RPC with 6 in parameters and 3 out parameters. */
#define RPC63(id, type1, arg1, \
type2, arg2, \