/
nerfur
/
openbsd-src
Обзор
Документация
Войти
/
nerfur
/
openbsd-src
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
usr.bin/nm/util.h
38 строк
881 B
millert
I am retiring my old email address; replace it with my OpenBSD one.
25 янв 2019, 03:19
25 янв 2019, 03:19
bf198cc
Код
Авторство
О чём код?
/* $OpenBSD: util.h,v 1.6 2019/01/25 00:19:26 millert Exp $ */ /* * Placed in the public domain by Todd C. Miller <millert@openbsd.org> * on October 9, 2004. */ #define MMAP(ptr, len, prot, flags, fd, off) do { \ if ((ptr = mmap(NULL, len, prot, flags, fd, off)) == MAP_FAILED) { \ usemmap = 0; \ if (errno != EINVAL) \ warn("mmap"); \ else if ((ptr = malloc(len)) == NULL) { \ ptr = MAP_FAILED; \ warn("malloc"); \ } else if (pread(fd, ptr, len, off) != len) { \ free(ptr); \ ptr = MAP_FAILED; \ warn("pread"); \ } \ } \ } while (0) #define MUNMAP(addr, len) do { \ if (usemmap) \ munmap(addr, len); \ else \ free(addr); \ addr = NULL; \ } while (0) extern int usemmap; extern int dynamic_only; struct xnlist { struct nlist nl; unsigned long n_size; };