blob: 9814ae3e89be51be3cb6085e72f0ebba56f35d07 (
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
|
#ifndef COMPAT_H
#define COMPAT_H
/*
* Various systems get these things wrong. So
* we create a small compat library for them.
*
* - zeroed anonymous mmap
* Missing in MinGW
* - "string to long double" (C99 strtold())
* Missing in Solaris and MinGW
*/
struct stream;
struct stat;
/*
* Our "blob" allocator works on chunks that are multiples
* of this size (the underlying allocator may be a mmap that
* cannot handle smaller chunks, for example, so trying to
* allocate blobs that aren't aligned is not going to work).
*/
#define CHUNK 32768
void *blob_alloc(unsigned long size);
void blob_free(void *addr, unsigned long size);
long double string_to_ld(const char *nptr, char **endptr);
#endif
|