Mercurial > dovecot > core-2.2
view src/lib/mmap-util.h @ 23017:c1d36f2575c7 default tip
lib-imap: Fix "Don't accept strings with NULs" cherry-pick
author | Timo Sirainen <timo.sirainen@open-xchange.com> |
---|---|
date | Thu, 29 Aug 2019 09:55:25 +0300 |
parents | ac29347cf81e |
children |
line wrap: on
line source
#ifndef MMAP_UTIL_H #define MMAP_UTIL_H #include <unistd.h> #ifdef HAVE_LINUX_MREMAP # define __USE_GNU /* for MREMAP_MAYMOVE */ #endif #include <sys/mman.h> #undef __USE_GNU #if !defined (MREMAP_MAYMOVE) && !defined (HAVE_LINUX_MREMAP) # define MREMAP_MAYMOVE 1 #endif #define madvise my_madvise int my_madvise(void *start, size_t length, int advice); #ifndef HAVE_MADVISE # ifndef MADV_NORMAL # define MADV_NORMAL 0 # define MADV_RANDOM 0 # define MADV_SEQUENTIAL 0 # define MADV_WILLNEED 0 # define MADV_DONTNEED 0 # endif #endif void *mmap_file(int fd, size_t *length, int prot); void *mmap_ro_file(int fd, size_t *length); void *mmap_rw_file(int fd, size_t *length); /* for allocating anonymous mmap()s, with portable mremap(). these must not be mixed with any standard mmap calls. */ void *mmap_anon(size_t length); void *mremap_anon(void *old_address, size_t old_size, size_t new_size, unsigned long flags); int munmap_anon(void *start, size_t length); size_t mmap_get_page_size(void) ATTR_CONST; #endif