mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-01-31 11:37:35 +00:00
f684e348d4
- Document sigaction() - Simplify New Technology fork() code - Testing and many bug fixes for mprotect() - Distribute Intel Xed ILD in the amalgamation - Turn Xed enums into defines to avoid DWARF bloat - Improve polyfilling of SA_SIGINFO on BSDs and fix bugs - setpgid(getpid(), getpid()) on Windows will ignore CTRL-C - Work around issues relating to NT mappings being executable - Permit automatic executable stack override via `ape_stack_pf`
24 lines
673 B
C
24 lines
673 B
C
#ifndef COSMOPOLITAN_LIBC_RUNTIME_DIRECTMAP_H_
|
|
#define COSMOPOLITAN_LIBC_RUNTIME_DIRECTMAP_H_
|
|
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
|
COSMOPOLITAN_C_START_
|
|
|
|
struct ProtectNt {
|
|
uint32_t flags1;
|
|
uint32_t flags2;
|
|
};
|
|
|
|
struct DirectMap {
|
|
void *addr;
|
|
int64_t maphandle;
|
|
};
|
|
|
|
struct DirectMap sys_mmap(void *, size_t, int, int, int, int64_t);
|
|
struct DirectMap sys_mmap_nt(void *, size_t, int, int, int, int64_t);
|
|
struct DirectMap sys_mmap_metal(void *, size_t, int, int, int, int64_t);
|
|
int sys_munmap_metal(void *, size_t);
|
|
uint32_t __prot2nt(int, bool);
|
|
|
|
COSMOPOLITAN_C_END_
|
|
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
|
#endif /* COSMOPOLITAN_LIBC_RUNTIME_DIRECTMAP_H_ */
|