diff options
author | Tianjie Xu <xunchang@google.com> | 2016-10-18 19:30:01 +0200 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2016-10-18 19:30:02 +0200 |
commit | 6fba98ce645bb00b4fa7f03dd1786566af919d78 (patch) | |
tree | a49e8f62581f0fbc8f7e352ee780220130435a6f /otautil/SysUtil.h | |
parent | Merge "Change StringValue to use std::string" (diff) | |
parent | Replace minzip with libziparchive (diff) | |
download | android_bootable_recovery-6fba98ce645bb00b4fa7f03dd1786566af919d78.tar android_bootable_recovery-6fba98ce645bb00b4fa7f03dd1786566af919d78.tar.gz android_bootable_recovery-6fba98ce645bb00b4fa7f03dd1786566af919d78.tar.bz2 android_bootable_recovery-6fba98ce645bb00b4fa7f03dd1786566af919d78.tar.lz android_bootable_recovery-6fba98ce645bb00b4fa7f03dd1786566af919d78.tar.xz android_bootable_recovery-6fba98ce645bb00b4fa7f03dd1786566af919d78.tar.zst android_bootable_recovery-6fba98ce645bb00b4fa7f03dd1786566af919d78.zip |
Diffstat (limited to 'otautil/SysUtil.h')
-rw-r--r-- | otautil/SysUtil.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/otautil/SysUtil.h b/otautil/SysUtil.h new file mode 100644 index 000000000..7adff1e54 --- /dev/null +++ b/otautil/SysUtil.h @@ -0,0 +1,52 @@ +/* + * Copyright 2006 The Android Open Source Project + * + * System utilities. + */ +#ifndef _MINZIP_SYSUTIL +#define _MINZIP_SYSUTIL + +#include <stdio.h> +#include <sys/types.h> + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct MappedRange { + void* addr; + size_t length; +} MappedRange; + +/* + * Use this to keep track of mapped segments. + */ +typedef struct MemMapping { + unsigned char* addr; /* start of data */ + size_t length; /* length of data */ + + int range_count; + MappedRange* ranges; +} MemMapping; + +/* + * Map a file into a private, read-only memory segment. If 'fn' + * begins with an '@' character, it is a map of blocks to be mapped, + * otherwise it is treated as an ordinary file. + * + * On success, "pMap" is filled in, and zero is returned. + */ +int sysMapFile(const char* fn, MemMapping* pMap); + +/* + * Release the pages associated with a shared memory segment. + * + * This does not free "pMap"; it just releases the memory. + */ +void sysReleaseMap(MemMapping* pMap); + +#ifdef __cplusplus +} +#endif + +#endif /*_MINZIP_SYSUTIL*/ |