summaryrefslogtreecommitdiffstats
path: root/sys/syscall_untyped.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/syscall_untyped.c')
-rw-r--r--sys/syscall_untyped.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/syscall_untyped.c b/sys/syscall_untyped.c
index c4378ea..c64dea1 100644
--- a/sys/syscall_untyped.c
+++ b/sys/syscall_untyped.c
@@ -5,6 +5,7 @@
#include "jove.h"
#include "lib/printf.h"
#include "proc/process.h"
+#include "sys/message.h"
#include "sys/objdir.h"
#include "syscall.h"
@@ -148,6 +149,10 @@ int _syscall_handle_untyped(syscall_context_t *ctx)
return s_syscall_untyped_retype_pcb(
ctx->target.obj, &ctx->lockstack, ctx->objdir, ctx->header);
return -EPERM;
+ case SYSCALL_UNTYPED_RETYPE_MESSAGE:
+ if(ctx->target.permissions & SYSCALL_PERM_UNTYPED_RETYPE)
+ return message_new(ctx->target.obj);
+ return -EPERM;
default:
return -EBADCALL;