]>
Commit | Line | Data |
---|---|---|
79ca2edc RJ |
1 | #ifndef INCLUDE_map_h__ |
2 | #define INCLUDE_map_h__ | |
3 | ||
4 | #include "common.h" | |
5 | ||
6 | ||
7 | /* git__mmap() prot values */ | |
8 | #define GIT_PROT_NONE 0x0 | |
9 | #define GIT_PROT_READ 0x1 | |
10 | #define GIT_PROT_WRITE 0x2 | |
11 | #define GIT_PROT_EXEC 0x4 | |
12 | ||
13 | /* git__mmmap() flags values */ | |
14 | #define GIT_MAP_FILE 0 | |
15 | #define GIT_MAP_SHARED 1 | |
16 | #define GIT_MAP_PRIVATE 2 | |
17 | #define GIT_MAP_TYPE 0xf | |
18 | #define GIT_MAP_FIXED 0x10 | |
19 | ||
20 | typedef struct { /* memory mapped buffer */ | |
21 | void *data; /* data bytes */ | |
22 | size_t len; /* data length */ | |
23 | #ifdef GIT_WIN32 | |
24 | HANDLE fmh; /* file mapping handle */ | |
25 | #endif | |
26 | } git_map; | |
27 | ||
2a18a792 VM |
28 | GIT_EXTERN(int) git__mmap(git_map *out, size_t len, int prot, int flags, int fd, off_t offset); |
29 | GIT_EXTERN(int) git__munmap(git_map *map); | |
79ca2edc RJ |
30 | |
31 | #endif /* INCLUDE_map_h__ */ |