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