xref: /inferno-os/utils/c2l/Posix.c (revision d0e1d143ef6f03c75c008c7ec648859dd260cbab)
1 #include	"cc.h"
2 
3 void*
4 mysbrk(ulong size)
5 {
6 	return (void*)sbrk(size);
7 }
8 
9 int
10 mycreat(char *n, int p)
11 {
12 
13 	return create(n, 1, p);
14 }
15 
16 int
17 mywait(int *s)
18 {
19 	return wait(s);
20 }
21 
22 int
23 mydup(int f1, int f2)
24 {
25 	return dup2(f1,f2);
26 }
27 
28 int
29 mypipe(int *fd)
30 {
31 	return pipe(fd);
32 }
33 
34 int
35 systemtype(int sys)
36 {
37 
38 	return sys&Unix;
39 }
40 
41 int
42 pathchar(void)
43 {
44 	return '/';
45 }
46 
47 char*
48 mygetwd(char *path, int len)
49 {
50 	return (char*)getcwd(path, len);
51 }
52 
53 int
54 myexec(char *path, char *argv[])
55 {
56 	return execvp(path, argv);
57 }
58 
59 /*
60  * fake mallocs
61  */
62 void*
63 malloc(size_t n)
64 {
65 	return alloc(n);
66 }
67 
68 void*
69 calloc(size_t m, size_t n)
70 {
71 	return alloc(m*n);
72 }
73 
74 void*
75 realloc(void *p, size_t n)
76 {
77 	fprint(2, "realloc called\n");
78 	abort();
79 	return 0;
80 }
81 
82 void
83 free(void *p)
84 {
85 }
86 
87 int
88 myfork(void)
89 {
90 	return fork();
91 }
92