summaryrefslogtreecommitdiff
path: root/microkernel/mach/gnumach/interface/syscall/mach_print/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'microkernel/mach/gnumach/interface/syscall/mach_print/main.c')
-rw-r--r--microkernel/mach/gnumach/interface/syscall/mach_print/main.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/microkernel/mach/gnumach/interface/syscall/mach_print/main.c b/microkernel/mach/gnumach/interface/syscall/mach_print/main.c
new file mode 100644
index 00000000..23b9fc88
--- /dev/null
+++ b/microkernel/mach/gnumach/interface/syscall/mach_print/main.c
@@ -0,0 +1,21 @@
+#include <assert.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+void mach_print(char *);
+
+int
+main(int argc, char *argv[])
+{
+ int size;
+ char *s;
+
+ size = snprintf(NULL, 0, "%s\n", argv[1]);
+ assert(size > 0);
+ s = malloc(size);
+ assert(s != NULL);
+ sprintf(s, "%s\n", argv[1]);
+ mach_print(s);
+ free(s);
+ return EXIT_SUCCESS;
+}