1e887ea33SDavid du Colombier #include "l.h"
2e887ea33SDavid du Colombier
3e887ea33SDavid du Colombier /*
4e887ea33SDavid du Colombier * fake malloc
5e887ea33SDavid du Colombier */
6e887ea33SDavid du Colombier void*
malloc(ulong n)7e887ea33SDavid du Colombier malloc(ulong n)
8e887ea33SDavid du Colombier {
9e887ea33SDavid du Colombier void *p;
10e887ea33SDavid du Colombier
11e887ea33SDavid du Colombier while(n & 7)
12e887ea33SDavid du Colombier n++;
13e887ea33SDavid du Colombier while(nhunk < n)
14e887ea33SDavid du Colombier gethunk();
15e887ea33SDavid du Colombier p = hunk;
16e887ea33SDavid du Colombier nhunk -= n;
17e887ea33SDavid du Colombier hunk += n;
18e887ea33SDavid du Colombier return p;
19e887ea33SDavid du Colombier }
20e887ea33SDavid du Colombier
21e887ea33SDavid du Colombier void
free(void * p)22e887ea33SDavid du Colombier free(void *p)
23e887ea33SDavid du Colombier {
24e887ea33SDavid du Colombier USED(p);
25e887ea33SDavid du Colombier }
26e887ea33SDavid du Colombier
27e887ea33SDavid du Colombier void*
calloc(ulong m,ulong n)28e887ea33SDavid du Colombier calloc(ulong m, ulong n)
29e887ea33SDavid du Colombier {
30e887ea33SDavid du Colombier void *p;
31e887ea33SDavid du Colombier
32e887ea33SDavid du Colombier n *= m;
33e887ea33SDavid du Colombier p = malloc(n);
34e887ea33SDavid du Colombier memset(p, 0, n);
35e887ea33SDavid du Colombier return p;
36e887ea33SDavid du Colombier }
37e887ea33SDavid du Colombier
38e887ea33SDavid du Colombier void*
realloc(void *,ulong)39e887ea33SDavid du Colombier realloc(void*, ulong)
40e887ea33SDavid du Colombier {
41e887ea33SDavid du Colombier fprint(2, "realloc called\n");
42e887ea33SDavid du Colombier abort();
43e887ea33SDavid du Colombier return 0;
44e887ea33SDavid du Colombier }
45e887ea33SDavid du Colombier
46e887ea33SDavid du Colombier void*
mysbrk(ulong size)47e887ea33SDavid du Colombier mysbrk(ulong size)
48e887ea33SDavid du Colombier {
49e887ea33SDavid du Colombier return sbrk(size);
50e887ea33SDavid du Colombier }
51e887ea33SDavid du Colombier
52e887ea33SDavid du Colombier void
setmalloctag(void *,ulong)53e887ea33SDavid du Colombier setmalloctag(void*, ulong)
54e887ea33SDavid du Colombier {
55e887ea33SDavid du Colombier }
56*b87cd620SDavid du Colombier
57*b87cd620SDavid du Colombier int
fileexists(char * s)58*b87cd620SDavid du Colombier fileexists(char *s)
59*b87cd620SDavid du Colombier {
60*b87cd620SDavid du Colombier uchar dirbuf[400];
61*b87cd620SDavid du Colombier
62*b87cd620SDavid du Colombier /* it's fine if stat result doesn't fit in dirbuf, since even then the file exists */
63*b87cd620SDavid du Colombier return stat(s, dirbuf, sizeof(dirbuf)) >= 0;
64*b87cd620SDavid du Colombier }
65